本帖最后由 wwwheihei 于 2018-8-13 10:01 编辑 我想实现串口1和串口2数据转发功能,有没有相关的方案或者帖子?具体说的话就是:串口1收到数据直接从串口2发出,串口2接收到数据直接从串口1发出,中间不能有延时,必须保证实时性。 (实际中应用是想用串口1控制串口2上的模块)
但若同用固定且相同的 Baud Rate。除了飞线,经过 MCU 都会有延时发生,在 FPGA 内也会!
就算是提高了其采样速率而延时也只会变短,不过估计仍是达不到 Zero Delay 的。
有时...那条 UART 的线长短也关乎到延时,长短个几厘米也都会有几个 ps 物理上延时的发生!~
在此提供楼主个方向,考虑使用量子通讯来传送资料,理论上量子传送资料的速度将光速甩过几条大街去了都!...
评分
查看全部评分
那您的需求就简单多了,只要将 MCU 的 A 串口 RXD 接收中断内 FIFO 资料往 B 串口的 TXD 扔,反之...
将 B 串口 RXD 发生的接收中断内 FIFO 资料往 A 串口的 TXD 丢即可,估计很少的 Coding 就行了!
还有...上述的这方式运作,依您的需求所使用串口其 Baud Rate 得要高于 960 才能于一秒内实现的。
估计您有没说清楚的地方,比如要求输入是:9600bps 而出呢,是:5600bps 这样就需要有转换电路来实现。
只要有波特率的转换电路延时是不可避免的了,只有时间长短而言。
评分
查看全部评分
估计只有飞线了!~
评分
查看全部评分
评分
查看全部评分
2、两个串口都配置为终端接收,一帧数据接收完成后,从另一个串口发出去,就行了
评分
查看全部评分
在串口1的中断回调函数中用带IT的发送函数发到串口2,
同理,在串口2的中断回调函数中用带IT的发送函数发到串口1
我这里说的是HAL库
标准库的可以更直接一点直接在中断函数中写
评分
查看全部评分
评分
查看全部评分
实际中应用是想用串口1控制串口2上的模块
看我的帖子说明
实际中应用是想用串口1控制串口2上的模块
https://www.stmcu.org.cn/module/forum/thread-616613-1-1.html
评分
查看全部评分
不允许有延时,何必要转发?直接硬线过去不行么?
评分
查看全部评分
外部接口串口1 控制串口2的模块
当你把数据送到dr寄存器后,你没判断发送完成寄存器啊?会不会覆盖数据呢?