乐发彩票app下载直营网: [MCU] msp430FR2433串口发送0x00,收到却是0xf0

永利游戏开户直营
93|1
楼主
最近用msp430fr2433做个程序,实现通过串口uart0跟外部pc通讯,今天遇见一个问题,我发送一串十六进制数据时,第一个0x00的数据在接收端变成了0xe0,其他的数据都正确。比如我发送01 03 0C 00 0F 01 F4 00 0F 01 F4 00 0F 01 F4 BB 75 ,在pc用串口工具收到的数据是 01 03 0C F0 0F 01 F4 00 0F 01 F4 00 0F 01 F4 BB 75 ,第四个数从0x00变成了0xf0,暂时还没到找原因,看看网上有没有老师遇到过这种情况。备注一下:
1. 这种情况在波特率9600时出现,改为115200就没有问题
2. 串口的接收没有问题
3. 频率8M
4. uart0的初始化如下:
  1. void uart0Init(int rate)
  2. {

  3.     // Configure UART pins
  4.     P1SEL0 |= BIT4 | BIT5;                    // set 2-UART pin as second function
  5.     PM5CTL0 &= ~LOCKLPM5;                    // Disable the GPIO power-on default high-impedance mode

  6.     // Configure UART
  7.     UCA0CTLW0 |= UCSWRST;
  8.     UCA0CTLW0 |= UCSSEL__SMCLK;

  9.     if(rate == e_UART_RATE_115200)
  10.     {
  11.         UCA0BR0 = 4;                             // 8000000/115200/16 = 4.34
  12.         UCA0BR1 = 0x00;
  13.         UCA0MCTLW = 0x5500 | UCOS16 | UCBRF_5;                   //0.34
  14.     }
  15.     else
  16.     {
  17.     // Baud Rate calculation
  18.     // 8000000/(16*9600) = 52.083   3
  19.     // Fractional portion = 0.083FDS
  20.     // User's Guide Table 22-4: UCBRSx = 0x49
  21.     // UCBRFx = int ( (52.083-52)*16) = 1
  22.        UCA0BR0 = 52;                             // 8000000/16/9600
  23.        UCA0BR1 = 0x00;
  24.        UCA0MCTLW = 0x4900| UCOS16 | UCBRF_1;

  25.     }

  26.     UCA0CTLW0 &= ~UCSWRST;                    
  27.     UCA0IE |= UCRXIE;                        
  28. }
复制代码
沙发
| 2020-9-4 15:32 | 只看该作者
我先仔细看一下代码,乐发彩票app下载直营网:好像挺有用的。
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

永利游戏开户直营 快速回复 返回顶部 返回列表
北京pk10平台 永利游戏开户直营 申博太阳城开户优惠游戏登入 彩票控网站 时时彩模拟投注平台登入
9号彩票网站直营网 鸿彩网在线开户 宏发彩票游戏 306彩票正规直营网 58彩票网在线开户
大富豪彩票网站 幸运彩票开户 彩18娱乐 吉祥博彩票官网 澳门银河集团
奔驰娱乐赌城 秒速飞艇正规直营网 www.sun8066.com 满堂彩网平台 彩票平台代理