不能用Python读取XBee数据

时间:2017-04-13 09:45:01

标签: python arduino-uno xbee

我选择了以下设置来读取Arduino和XBee连接的传感器数据:

  • 列表项目TMP36传感器连接到Arduino Uno
  • 列表项目带有XBee S2C的Sparkfun XBee-shield安装在Arduino(路由器,API模式)上。 Arduino连接到COM3。
  • 列表itemCOM4与Sparkfun XBee-Explorer(USB连接)连接。另一个XBee S2C连接在资源管理器上。这个XBee是协调器(API模式)。

我已经编写了从COM4的Xbee-Explorer读取数据的代码:

#! /usr/bin/python
# Import and init an XBee device
from xbee import XBee, ZigBee
import serial
ser = serial.Serial('COM4', 9600)
xbee = XBee(ser)
while True:
try: 
enter response =  xbee.wait_read_frame()
    print response
except KeyboardInterrupt:
    break
ser.close()

目前,虽然可以通过XCTU读取数据,但是不可能通过Python代码获取Xbee收到的任何数据。

详细信息: 如果我从路由器向协调器发送传感器数据(传感器读取和发送到Xbee由Arduino软件完成),我能够通过XCTU读取数据帧,结果是有意义的。如果我使用上面的Python代码,我没有得到任何数据帧,尽管路由器和协调器的RSSI二极管独立于我使用的软件(XCTU或Python)闪烁。 对我而言,目前尚不清楚出现了什么问题,我很乐意为解决问题寻求帮助。 非常感谢您的支持。 关心丹尼尔

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,从API = 2更改为API = 1解决了我的问题