2017-03-09 49 views
0

我有两个XBee网络。第一个连接到BeagleBone Black,第二个连接到我的PC。XBee S2在收到数据包后停止发送

BeagleBone Black正在定期向PC发送传感器值,每秒10次等。但是当我从PC发送命令给BeagleBone Black时,BeagleBone Black会停止发送消息。

  1. BeagleBone Black可以成功发送或接收(单独)。该错误仅在接收后才会发生。即使发生错误,BeagleBone Black仍然可以接收。它只是不能发送。
  2. 发生错误后,当我重新启动BeagleBone Black程序时,问题就解决了。但是如果我重新启动PC程序,问题仍然存在。因此问题在于BeagleBone Black。

我检查了一切,但我找不到问题。

注意:XBees在API模式下工作。

+0

向我们展示一些代码?或者你只是使用终端模拟器?硬件流量控制(RTS/CTS)可以阻止传输吗? – tomlogic

+0

我发现了这个问题。问题在于BBB。为了测试系统,我首先将两个不同的XBees连接到同一个UART。 (一个用于接收,一个用于发送)。问题没有解决。现在我在两个不同的UART上使用两个不同的XBees。我没有足够的时间进一步调查问题。因此,我将继续与两个XBees –

回答

0

既然你不同意你的代码,我给大家介绍两种解决方案浮现在脑海:

1中的XBee模块的通信范围实在是太多了。目前十个数据可能会有点低。发送更多数据。

2-您在代码中错误配置了发送和接收操作。如果您在串行端口数据完成后未释放串行端口,则可能卡在读取模式。

如果您分享您的代码,它将不完整或问题会更容易出现。