哪位高手可以帮我看一下下面各语句的区别

[复制链接]
2593|4
 楼主| hnxtqzh 发表于 2009-12-26 10:04 | 显示全部楼层 |阅读模式
1.   TCCR1B|=ICNC1; //输入捕捉噪声抑制器,为TCCR1B的第7位
2.   TCCR1B|=(1<<ICNC1);
3.   TCCR1B=0x80;//上面两句的其它位也都为0
编译环境:ICCAVR
单片机类型:mega48
请大侠帮我看一看,它们的区别,
chen3bing 发表于 2009-12-26 11:18 | 显示全部楼层
前两句一样,不影响其他位。
最后一句,ICNC1=1的同时,其他位为0.
928315 发表于 2009-12-26 13:46 | 显示全部楼层
都不一样吧。。应该这样理解吧。
TCCR1B |=1<<ICNC1;
把TCCR1B的ICNC1的值设置为1,不影响其他位。

TCCR1B |= ICNC1;
要是ICNC1要是被宏定义为7。即为0B00000111;
这句话就成了,把TCCR1B的低三位设置为1,其他位不变。

最后一句,ICNC1=1的同时,其他位为0.
原野之狼 发表于 2009-12-26 13:59 | 显示全部楼层
3楼正解
ejack 发表于 2009-12-26 15:21 | 显示全部楼层
2L杯具……
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

11

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部