定时器A模拟串口发送时,DEMO里有这么一句:
if (RXTXData & 0x01) //判断最低位是否为1
CCTL0 &= ~ OUTMOD2; // TX Mark
else CCTL0 |= OUTMOD2; // TX Space
RXTXData = RXTXData >> 1; //将字节数据向右移一位
BitCnt --; //位计数器减1
请问CCTL0 &= ~ OUTMOD2; 和CCTL0 |= OUTMOD2; 是什么意思?
按照我的理解应该是:
if (RXTXData & 0x01) //判断最低位是否为1
CCTL0 |= OUT;
else CCTL0 |= OUT;
RXTXData = RXTXData >> 1; //将字节数据向右移一位
BitCnt --; //位计数器减1
但改过之后,却不能正常收发数据
此帖出自
小平头技术问答
一周热门 更多>