如题所述
意思是:PWME这个寄存器的第0位置1。
(1<<x)是指将1左移x位,(1<<0)是将1左移0位即还是1,(1<<5)=0b100000=0x20
单片机中寄存器中给某一bit置上或清零常用下述方式:
由于0|1=1 1|1=1,所以将单片机某一bit置成1只需将该位或1即可。即如果要将寄存器的第x位置成1,则需将该寄存器的第x位或上1,用程序表示出来(以PWME寄存器的第x位举例)就是PWME = PWME | (1<<x),也可以写成PWME |= (1<<x)
扩展资料:
注意事项
置位就是把该位置1,清零就是把该位置0,硬件自动清零就是当某种条件成立,硬件会自动把该位清零。
比如定时计数器工作时,当定时时间到了,定时中断请求标志位硬件自动置位,当cpu响应了中断以后就会自动把该位清零。
所谓的软件清零,就是要在程序中,通过指令把该位清零。写1清零应该是某些单片机特有的,比如AVR单片机,要把某个寄存器清零,先写1-既是输入高电平,这样可以使内部的一个三极管导通接地,电容放电,进行清零。
这都是对某些特殊的寄存器,比如中断标志位等,需要这样操作。对于一般的寄存器比如PORTA口等,置位就是写1,清零就是写0。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2011-08-21
意思是:PWME这个寄存器的第0位置1
嘿嘿 希望能帮到你
嘿嘿 希望能帮到你
第2个回答 2011-08-21
把1,左移0次,再““或””到PWME中。
实际上,就是在PWME的最低位置一。
C语言,就是故弄玄虚,垃圾太多。
实际上,就是在PWME的最低位置一。
C语言,就是故弄玄虚,垃圾太多。
第3个回答 推荐于2017-12-16
这句话是指将PWME寄存器的最低位(第0bit)置成1,我猜这句话可能是使能PWM0通道。
(1<<x)是指将1左移x位,(1<<0)是将1左移0位即还是1,(1<<5)=0b100000=0x20
另外,单片机中寄存器中给某一bit置上或清零常用下述方式:
由于0|1=1 1|1=1,所以将单片机某一bit置成1只需将该位或1即可。即如果要将寄存器的第x位置成1,则需将该寄存器的第x位或上1,用程序表示出来(以PWME寄存器的第x位举例)就是PWME = PWME | (1<<x),也可以写成PWME |= (1<<x)
同样的道理,如果要将某一bit清零,考虑 0&0=0 1&0=0,只需将某位与0即可。用程序表示(以PWME寄存器的第x位举例)就是PWME = PWME & (1<<x),也可以写成PWME &= (1<<x)本回答被提问者采纳
(1<<x)是指将1左移x位,(1<<0)是将1左移0位即还是1,(1<<5)=0b100000=0x20
另外,单片机中寄存器中给某一bit置上或清零常用下述方式:
由于0|1=1 1|1=1,所以将单片机某一bit置成1只需将该位或1即可。即如果要将寄存器的第x位置成1,则需将该寄存器的第x位或上1,用程序表示出来(以PWME寄存器的第x位举例)就是PWME = PWME | (1<<x),也可以写成PWME |= (1<<x)
同样的道理,如果要将某一bit清零,考虑 0&0=0 1&0=0,只需将某位与0即可。用程序表示(以PWME寄存器的第x位举例)就是PWME = PWME & (1<<x),也可以写成PWME &= (1<<x)本回答被提问者采纳
第4个回答 2011-08-21
PWME = PWME | (1<<0)