[AVR单片机] AVR位操作的问题

[复制链接]
2946|5
 楼主| chen3bing 发表于 2010-5-31 19:45 | 显示全部楼层 |阅读模式
我编了一个程序,其中有这样一条语句。
PORTD&=0XFE;
作用是PORTD第0位清零。
我们单位的一个高手说这样会影响到其他位。
要这样写:PORTD&=(1<<PD0);
我在网上查了一下,发现是:PORTD&=~(1<<PD0);
即便是后一种写法,我觉得也和我的写法一样。
不过高手说那样写,或许有他的道理。
请论坛的大侠解惑。谢谢!
pangjiang 发表于 2010-5-31 21:24 | 显示全部楼层
你用软件模拟一下,看看结果,事实胜于雄辩
chfirst 发表于 2010-5-31 21:57 | 显示全部楼层
ShakaLeo 发表于 2010-6-1 08:54 | 显示全部楼层
对于AVR来说是一样的。如果是16位机,PORTD&=0XFE;可能就有问题了,应该是PORTD&=0XFFFE;
 楼主| chen3bing 发表于 2010-6-1 09:17 | 显示全部楼层
谢谢!
SHSLZHZ 发表于 2010-6-4 15:20 | 显示全部楼层
1# chen3bing
你那位高手写得一看就能明白
您需要登录后才可以回帖 登录 | 注册

本版积分规则

439

主题

2540

帖子

2

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