TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2540串口通信丢数据和乱码问题

unbelievable! TI的simpleBLEperipheral工程做串口透传时居然出现丢数据和乱码的情况, 这是TI官方透传包啊!

我的硬件是MSP430 + CC2540(UART0), CC2540透传APP下发的数据到MSP430,代码是在simpleBLEperipheral基础上开发的。  CC2540用的USART0 通信, DMA模式, 开流控,波特率115200. 

接口用的 :Hal_UART_RxBufLen() 读数据长度,  HalUARTRead读串口数据。

在网上查了很多帖子, 都说有2点会影响到串口数据收发:

1.  开启了POWER_SAVING

2.  开启了 HCI_EXT_ClkDivOnHaltCmd( HCI_EXT_ENABLE_CLK_DIVIDE_ON_HALT );

根据帖子我做了如下修改:

 POWER_SAVING 改为 xPOWER_SAVING

    关闭 HCI_EXT_ClkDivOnHaltCmd( HCI_EXT_ENABLE_CLK_DIVIDE_ON_HALT ); 语句

   打开HCI_EXT_HaltDuringRfCmd(HCI_EXT_HALT_DURING_RF_DISABLE); 语句

修改后,CC2540串口只能发 不能接受数据了!

麻烦各位大神帮忙解答下  万分感谢!

Jo1:

建议帧结构加上帧头、帧尾、校验、长度等。同时使用状态机判断收发情况,增加重发机制

赞(0)
未经允许不得转载:TI中文支持网 » CC2540串口通信丢数据和乱码问题
分享到: 更多 (0)