【发布时间】:2015-05-06 16:56:06
【问题描述】:
试图从 Lowe's Iris SmartSwitch 解码 Zigbee 协议。我正在使用的 API 回调接收一个已经解析的帧,并作为(我相信)字典对象(?)发送到回调。我的代码:
def callback(data):
print data
打印以下内容:
{'profile': '\xc2\x16', 'source_addr': '\x93\x0c', 'dest_endpoint':
'\x02', 'rf_data': '\t\x00\x81\x00\x00', 'source_endpoint': '\x02',
'options': '\x01', 'source_addr_long': '\x00\ro\x00\x03\xbc\xdf\xab',
'cluster': '\x00\xef', 'id': 'rx_explicit'}
我认为这是按字节顺序排列的,我更喜欢这样的输出:
C2 16 93 0C 02 09 00 81 00 00 02 01 00 ...
使用给定的“数据”参数,使用 Python 内置函数可以做到这一点吗?另外,我不知道如何将“\ro”解释为 8 位十六进制。我假设“\t”是 0x09。
我真正想要的是数据帧的原始转储,但我不知道是否有 API 调用。
【问题讨论】: