CC2530中串口波特率改为9600时单个数据包来不及接收的解决方案

wateras1   2013-7-24 15:20 楼主

在调试CC2530过程中发现波特率改为9600时,单个包仅有3个Byte时,接收DMA就会启动

因而数据包被强迫拆分成多个,显然只要将接收DMA启动延时做到足够大即可。

具体修改内容如下:在_hal_uart_dma.c文件中

找到 

// The timeout tick is at 32-kHz, so multiply msecs by 33.
#define HAL_UART_MSECS_TO_TICKS    33
将DMA接受数据延时改大,比如300或者200


经过上述修改,可在9600波特率下传送足够大的数据包。

[ 本帖最后由 wateras1 于 2013-8-12 21:50 编辑 ]
淘宝:https://viiot.taobao.com/Q群243090717 多年专业物联网行业经验,个人承接各类物联网外包项目

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复