不明白单片机的串口通信的PCON |= 0x80。。。

PCON |= 0x80不就是相当于 PCON =PCON | 0x80; 的吗??
意思应该是每个位相与的吧。。。
它是怎么能确定 PCON =PCON | 0x80;中的smod肯定就是1??
表示不是很明白???

不是每位相与,而是相或。| 是或的符号,0x80也就是1000 0000,pcon 执行或运算 后,肯定是1。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-11
因为PCON其他位可能已经设置,PCON |= 0x80这样的代码仅仅改变波特率设置。
第2个回答  2019-04-25
PCON =PCON | 0x80; 的吗?
这个理解是对的,但意思是每位做或运算,其结果是最高位(即SMOD)置1,其余位保持原来的状态不变。