同步与uart连接的两台计算机



我有两台不同的PC,它们串行连接并运行不同的程序,都使用UART 16650情况是:

计算机a向b发送数据计算机b从a接收计算机b处理数据,然后响应计算机a从b接收A处理数据然后响应bB收到。。。

等等。

问题是,a处理速度太快,而b处理速度太慢,导致出现类似死锁的情况,即在某些情况下,两台电脑都在等待另一台电脑发送数据

我需要帮助我如何同步电脑,这样当另一台电脑仍在读取时,一台电脑就不会开始读取数据

解决这个问题的最简单方法是将一台机器指定为主机器,另一台指定为从机器。

主设备:请求/轮询从设备的数据,向从设备发送数据,要求其处理

从设备:接收数据,处理,并在轮询时将响应发送回主设备

将命令/查询从master添加到slave也很有用。通过这种方式,您可以检查从属服务器是否有数据供您使用,并避免在没有数据时等待。

您假设死锁是机器速度差异的结果,但没有提供任何信息来证明这一点。一般来说,串行通信协议应该能够从这些情况中恢复。

相关内容

  • 没有找到相关文章

最新更新