【问题标题】:Xbee and Arduino acting strangely regardless of code无论代码如何,Xbee 和 Arduino 都表现得很奇怪
【发布时间】:2017-05-16 21:33:08
【问题描述】:

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

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

我很想在这方面提供任何帮助,我已尝试上传和重置所有内容,但无济于事。

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

【问题讨论】:

  • 更新:我已经设法通过上传以下代码从 XCTU 控制台发送到 arduino monitos 并从监视器发送到控制台:void setup(){} void loop(){} 其中对我来说更没有意义,除非从控制台读取和向控制台读取是默认设置

标签: arduino xbee


【解决方案1】:

您说您正在使用 Arduino 尝试与您的 XBee Zigbee 模块进行通信。

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

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

现在在 Arduino 方面:

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

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

由于您没有提及您使用的是哪种屏蔽,因此您必须仔细检查这一点,这是使用串行通信时的常见问题。

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

希望对你有帮助

最好的问候

【讨论】:

    【解决方案2】:

    据我所知,Xbee“劫持”了串行系统。而是尝试让 LED 闪烁以确认正在接收和发送数据。 documentation

    【讨论】:

    • 谢谢,我已经设法将它们都设置为 API 模式,这让我可以从 XCTU 发送和接收十六进制数据,但到目前为止我无法读取或发送回数据,到目前为止我可以获取我在接收器控制台中发送的数据,但不能从 arduino 终端获取,如果 Serial.available() 总是报告 0,我将如何设置 LED 亮起?
    猜你喜欢
    • 1970-01-01
    • 2013-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-11
    • 2014-12-12
    • 2012-11-11
    • 1970-01-01
    相关资源
    最近更新 更多