2015-12-15 45 views
0

我有两个连接到温度传感器的XBees S1-one。这款Xbee读取模拟值,并通过ADC将它们转换为数字值并发送出去。 其他XBee - 接收器通过USB Explorer连接到电脑。 这个XBee以API模式工作。连接到计算机的XBee接收发送器发送的数据。我使用X-CTU软件6.2.0版监控接收到的值。直到这一点,一切正常。XBee S1从API模式读取值

但是,我遇到的问题是,在计算机上接收到的数据是编码的:存在与接收器地址相对应的位,与发送器地址相对应的位,数据本身,确认位等。我的问题是我怎样才能只提取数据位没有发送器发送的所有其他信息?

我试着用USB转TTL线读取值,该电缆连接到的Tx的RxGND5V(没有在USB浏览器在5V输入尽管该XBee工作在3.3V)的接收器XBee,并在Linux中使用屏幕命令。但是,通过这种方式,我收到了ASCII字符,并希望收到二进制代码。 我想将这些值放在数据库中,以便稍后能够对待它们。

感谢您的协助。

+0

你需要解码API帧 - 头字节,帧长度,帧类型等。阅读文档以了解格式,并编写代码来处理接收的字节。有许多语言的图书馆,请查看http://examples.digi.com/quick-reference/获取它们的列表。 – tomlogic

回答

1

有了这样this one库,你可以使用函数从Python中你的XBee获取数据;)(如果你使用Linux)

你只需要初始化端口(应该是在/ dev/tty的...),并用一个检查新数据是否到来的循环捕获数据。

如果你需要更多的帮助,我可以给你我的代码部分(没有它靠近我,这是我的刺耳)

我希望我已经帮你;) 坦纳