主题中讨论的其它部件:SMARTRF06EBK、 CC1350、 SYSBIOS
您好论坛!
我正在处理一个基本上是 UART 桥接器的项目。下面是项目的流控制:
发送器(使用 SMARTRF06EBK 的 CC1310 DK):
1)等待 UART 数据、直到使用 UART Echo API 接收到16个字节@38400bps。
2)使用 EasyLink Tx 异步 API 无线传输数据
接收器(使用 SMARTRF06EBK 的 CC1310 DK):
1)等待使用 Easy Link Rx 异步 API 通过无线接收发送的数据
2)通过 UART 发送接收到的数据(16字节)@38400bps
2个板独立运行代码、基本上是单工配置、发送器只能发送、而接收器只能接收。 没有后台进程。
如果我在发送端 UART 的字节之间没有任何延迟地发送不间断数据、那么目标应用就可以完美工作。
但是、如果发送器端 UART 的字节之间存在一些延迟、例如几毫秒、如果我将波特率保持在接收器38400、则接收器端会收到损坏的数据包。
但是、如果我将接收器 UART 侧的波特率更改为57600bps、那么无论我发送数据的速度是多慢还是多快、问题都会得到解决。
当我尝试调试该问题时、我发现接收器节点上的 UART 发送功能溢出、当再次调用 UART 写入功能时、UART 已经在发送数据、这就是当数据使用57600bps 快速传输时、问题得到解决的原因。'
约束条件是、我必须使波特率在两侧都保持相同(应用约束)。
请指导我如何解决问题。
此致
Ali