无论代码如何,Xbee和Arduino的行为都很奇怪

时间:2017-05-16 21:33:08

标签: arduino xbee

我正在尝试编写一个简单的代码,将一个字符串发送到一个xbee,另一个发送该字符串,我可以通过控制台使用XCTU执行此操作,但我希望我的arduino发送字符串。

我能够使用一个简单的代码从串行监视器读取我的输出并将其发送到通过usb适配器连接的xbee,问题是我现在编写了代码,因此它发送了一个预定义的字符串,如截图所示,但是当我写入监视器时,它仍会发送我写的任何内容而不是静态字符串。我也无法从XCTU读取我在xbee控制台中键入的内容。

我喜欢这方面的任何帮助,我尝试上传并重置所有内容都无济于事。

Screenshot of problem with the current code of the arduino on the left

2 个答案:

答案 0 :(得分:0)

从我在文档中可以看出Xbee“劫持”串行系统。而是尝试闪烁LED以确认正在接收和发送数据。 documentation

答案 1 :(得分:0)

你说你使用Arduino试图与你的XBee Zigbee模块进行通信。

您必须检查的一件事是Arduino侧和XBee Zigbee侧的TX和RX信号之间的连接。

我帮助了另一个论坛使用过这个Seed Studio XBee盾牌的人: Seed Studio Arduino XBee Shield 如果你看看这个屏蔽的原理图,XBee'DOut'信号(Tx)连接到XB_TX线,可以通过跳线连接到任何AJ2引脚。

现在在Arduino方面:

Arduino UART

在Arduino原理图的这个摘录中,我们可以看到ATMEGA UART将其RX信号连接到CPU的引脚2,该引脚连接到IOL(AJ2)引脚0。

因此,这意味着在此屏蔽上,跳线必须放在X2_TX和AJ2的引脚0之间,以将XBee传输信号(输出)连接到ATMEGA接收信号(输入)[并且还必须连接XB_RX AJ2的第1针]。

由于你没有提到你正在使用什么样的盾牌,你必须仔细检查这一点,这是使用串行通信时的一个常见问题。

一般来说,总是将1输出连接到N输入(漏极开路或集电极开路输出除外,它们可以连接在一起形成有线OR,但最终必须连接到N个输入)

希望这有帮助

祝你好运