我试着在我的网络中从一个协调器中发现设备。因此,我向协调器发送了ND命令,并且正确地收到了其他Xbee的响应。
下一步是将我在web应用程序中接收到的信息存储在发送命令和数据的代码中。
然而,我仍然缺少的是框架中的某些部分。到目前为止,我已经绘制了这样的框架:
1 7E start frame
===== =================== MESSAGE LENGHT
2-3 0x00 0x19 -> 25
===== =================== PACKET TYPE
4 88 -> response to a remote AT command
5 02 frame ID
===== =================== AT COMMAND
6-7 0x4E 0x44 "ND"
8 00 status byte (00 -> OK)
===== =================== MY - Remote Address
9-10 0x17 0x85
===== =================== SH - SERIAL NUMBER HIGH
11-14 0x00 0x13 0xA2 0x00
===== =================== SL - SERIAL NUMBER LOW
15-18 0x40 0xB4 0x50 0x23
===== =================== SIGNAL
19 20
= ======== NI - Node Identifier
20 00
21 FF
22 FE
23 01
24 00
25 C1
26 05
27 10
28 1E
===== ===== CHECKSUM (25th bytes from MESSAGE LENGHT)
29 19 那么,在这个响应中我能找到设备的地址吗?我的猜测是在消息的NI部分,但是,我还没有找到数据如何组织的任何示例/信息。
有人能给我指明正确的方向吗?
发布于 2014-10-31 17:19:02
就像有人在dig.com论坛上告诉我的
NI<CR> (Variable length)
PARENT_NETWORK ADDRESS (2 Bytes)<CR>
DEVICE_TYPE (1 Byte: 0=Coord, 1=Router, 2=End Device)
STATUS (1 Byte: Reserved)
PROFILE_ID (2 Bytes)
MANUFACTURER_ID (2 Bytes所以,听我的相框回应:
00 --- Node Identifier variable, (here 1 byte = 00 because no value is set up).
FFFE --- parent network address (2 bytes)
01 --- device type
00 --- status
C105 --- profile id
101E --- manufacturing id这是afaik,意思是在帧的最后一部分,没有关于设备地址的信息。只有信息是SL和SH。
发布于 2014-10-31 21:58:36
16位网络地址是您标记为"MY“的地址(0x1785),64位MAC地址是SH/SL (0013 A2 00 40 B4 5023)的组合。
https://stackoverflow.com/questions/26677590
复制相似问题