共3条
1/1 1 跳转至页
EECR,lt,lt,EEMWE 如何理解EECR |=(1<<EEMWE);
问
为何EEMWE这一位置1 不用EEMWE=1;而用EECR |=(1<<EEMWE); "1<<EEMWE"这如何理解??
答 1:
对EECR寄存器的EEMWE位置1AVR没有位操作的概念好像是
答 2:
re: 如何理解EECR |=(1<<EEMWE)1<<EEMWE 意思是将“1”左移EEMWE位。对MEGA8而言,EEMWE=2,所以,1<<EEMWE = 00000100。
答 3: 谢谢两位!好像在汇编里也有用"1<<EEMWE",也是同样的意思吗? 答 4: ICCAVR中有许多位操作的形式EECR |=(1<<EEMWE)这句话的意就是:将EECR中的位EEMWE置“1”
1<<EEMWE 就是将EEMWE位赋值“1”,这有点像VHDL语言中的赋值语句。
其他的置位操作列举如下:
PORTA |= 0x04; //PA2置1
PORTA |=(1<<2); //PA2置1
PORTA |=BIT(2); //PA2置1,必须包含macros.h
PORTA |=BIT(PA2); //PA2置1,必须包含macros.h和io*v.h
PORTA |=0b00000100; //PA2置1,0b00000100是二进制数
答 5: 谢谢这位热情的'小二'
答 3: 谢谢两位!好像在汇编里也有用"1<<EEMWE",也是同样的意思吗? 答 4: ICCAVR中有许多位操作的形式EECR |=(1<<EEMWE)这句话的意就是:将EECR中的位EEMWE置“1”
1<<EEMWE 就是将EEMWE位赋值“1”,这有点像VHDL语言中的赋值语句。
其他的置位操作列举如下:
PORTA |= 0x04; //PA2置1
PORTA |=(1<<2); //PA2置1
PORTA |=BIT(2); //PA2置1,必须包含macros.h
PORTA |=BIT(PA2); //PA2置1,必须包含macros.h和io*v.h
PORTA |=0b00000100; //PA2置1,0b00000100是二进制数
答 5: 谢谢这位热情的'小二'
共3条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动——B站互动赢积分】活动开启啦! | |
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |