【发布时间】:2017-12-28 12:50:03
【问题描述】:
你好 stackoverflowers,
我再次需要你的帮助。
我有一个需要 802.15.4 网络的项目。为此,我正在使用通过 USB 加密狗连接的 1 个 Xbee S1 和一个 waspmote 上的 1 个 Xbee S1。
现在出现以下问题:
如果我通过 XCTU 配置两个模块,它们可以通信。 但是,如果我通过 XCTU 配置一个模块,另一个通过 WaspmoteIDE 使用 API v28 配置,如下所示:
uint8_t panid[] = {0x12, 0x34};
void setup(){
xbee802.ON(SOCKET0);
xbee802.setPAN(panid);
xbee802.writeValues();
}
据我了解,这应该将这些值写入 xbeemodule 并将 PAN-ID 设置为 1234。如果我错了,请纠正我,但据我所知,这些值应存储在 xbee802.PAN_ID[0] 和 xbee802.PAN_ID [1]。
但是,如果我想检索数据是否写入的信息
xbee802.getPAN();
输出为 01。但如果我尝试:
xbee802.PAN_ID[0] = panid[0];
xbee802.PAN_ID[1] = panid[1];
然后当我打印 xbee802.PAN_ID[0] 和 xbee802.PAN_ID[1] 我得到了我想要设置的 PAN-ID,即 1234。 但是当我想用 xbee802.getPan() 再次检查 Pan-ID 时 我得到这个烦人的 01。
让我更困惑一点.. 当我将 xbee 模块从 waspmote 放入 usb 网关并通过 XCTU 检查设置时,我认为我通过 waspmote 所做的更改没有写入,并且无法通信。只有当我通过 XCTU 将设置写入两个 xbeemodules 时,才能进行通信。
另一方面,当我用java驱动程序配置通过usb dongle连接的xbee模块,然后检查XCTU中的设置时,它们就会生效。所以通过 java-driver 操作参数没有问题。
我做错了什么,我无法通过我的 waspmote 配置 xbee 模块。
两个模块: 产品系列:XB24 功能集:xbee 802.15.4 固件版本:10ef
任何帮助表示赞赏,
干杯
【问题讨论】:
-
了解How to Ask。您的具体问题是什么?你的minimal reproducible example 在哪里?为什么是 C 标签?这不是 C 代码!
-
waspmote IDE 正在运行一种 C 代码。问题是我无法像使用 xctu 一样通过 waspmoteIDE 配置 Xbeemodule。
-
1) 而且 IDE 不会“运行代码(或任何类似的东西)2) 没有什么比得上“一种 C 代码”。根据 ISO 9899:2011 要么是 C,要么是不是 C。3) 配置问题不是编程问题 => 题外话。