0

我正在尝试从我的 Xbee 获取一些信息,但它不起作用

这是我的 Class Test 的代码:

 public static void main (String[] args){
     XBee xbee = new XBee();
     try {
        xbee.open("COM3", 9600);
    } catch (XBeeException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    while (true) {
        try {
            XBeeResponse response = xbee.getResponse(10000);
            // we got a response!
        } catch (XBeeTimeoutException e) {
            // we timed out without a response
        } catch (XBeeException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

我正在使用 Xbee API http://code.google.com/p/xbee-api/

但我总是得到这个错误:

com.rapplogic.xbee.api.XBeeException:尝试在 API 模式下设置/读取时 AT 命令超时。XBee 无线电必须处于 API 模式 (AP=2) 才能在 com.rapplogic.xbee.api.XBee.doStartupChecks(XBee.java:124) 上与 com.rapplogic.xbee.api.XBee.initConnection( XBee.java:170) 在 com.rapplogic.xbee.api.XBee.open(XBee.java:142) 在 com.mohamed.test.main(test.java:16)

谢谢你uuuu

4

3 回答 3

0

从错误来看,您似乎没有将 XBee 模块的 API 模式设置为 2。尝试使用 X-CTU(基于 Windows 的程序)进行设置。以下是如何使用 X-CTU 设置 API 模式的示例(XBee 系列 2):将 X-Bee 设置为 API 模式

于 2013-04-06T06:34:15.033 回答
0

你在哪个平台?如果是 Windows,您可以使用 Digi 的 X-CTU 程序与 XBee 通信吗?您是否确认了波特率并且模块处于正确的模式(ATAP 必须设置为 2)?

于 2013-03-29T17:27:43.893 回答
0

我建议您使用 java.io 包的 OutputStream 和 InputStream 与 XBee 模块进行串行通信。使用此类,您可以发送和接收模块信息。确保模块处于 AT 模式。

于 2013-06-05T08:54:45.803 回答