430launchpad G2553 定时器A模拟串口困惑

2019-03-24 13:13发布

定时器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
但改过之后,却不能正常收发数据 此帖出自小平头技术问答
0条回答

一周热门 更多>

相关问题

    相关文章