打印

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

[复制链接]
1697|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chenyu988|  楼主 | 2012-11-13 21:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
定时器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
但改过之后,却不能正常收发数据

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

47

主题

1107

帖子

14

粉丝