解释我从Xbee S2的ATDB命令收到的值

时间:2014-06-07 14:21:16

标签: xbee rssi

我意识到这可能是这里曾经问过的最愚蠢的问题,但我真的被卡住了。我试图获取XBee路由器的RSSI值,以便从协调器发送ATBD。返回的值是十六进制的,但在我的生命中,我不能看到十六进制值如何解释为dBm值。

1 个答案:

答案 0 :(得分:1)

实际上命令不是ATBD,而是 ATDB ,这意味着:

" 接收信号强度。此命令报告上次接收的RF数据包的接收信号强度。 DB命令仅指示最后一跳的信号强度。它不能为多跳链路提供准确的质量测量。 DB可以设置为0以清除它。 DB命令值以-dBm为单位。 例如,如果DB返回0x50,则接收的最后一个数据包的RSSI为-80dBm 。从2x6x固件开始,当收到APS确认时,DB命令值也会更新。" (从XBee ZB用户手册第131页退出)。

如您所见,您只需要:

  • 读取十六进制(例如:0x50)
  • 将其读作十进制(例如:0x50 =十进制80)
  • 乘以-1:( - 1)* 80 = -80 dBm

ATBD命令用于更改串行接口数据速率(波特率)。