有没有办法在 Python 线程中获得工作的 433MHz-Sender 或 -Receiver?
我试过 Ninjablocks 和 Adafruit 的那些。但问题是这些都是 c 或 c++ 脚本,它们正在输出到标准输出并且没有输出结束。我还尝试通过 Unix-FIFO 对它们进行管道传输,但在我关闭程序(Ctrl + C)之前没有数据传输。第二个问题是,完成的程序无法识别我的 ninjablocks 433MHz 温度传感器,这是其中之一系统最重要的部分。
433 MHz 发送器/接收器与我的 Raspberry PI(版本 B,Rev 2.0)的 GPIO 连接
我的目标是让几个 433 MHz 传感器(并且一些通过 i2c 或 spi 连接的传感器已经在工作)与 python 脚本一起工作,该脚本确实计算了一些规则(例如,当在客厅中检测到运动时,以及在日落和日出之间,打开灯;当温度降至 20°C 以下时打开加热等)
我写了一个小程序:
import RPi.GPIO as io
data = [] * 10000
while not interrupted:
data.append(io.input(rxPin))
io.wait_for_edge(rxPin, io.BOTH
我希望该代码输出类似 1010101010101 的内容,因为每个 Edge 都被识别。我的下一步是测量边缘之间的时间,并根据该时间确定它是短 1/0 还是长 1/0(433MHz 似乎被编码为短 1 长 = = 1 长 1 短0 = 0 或反之亦然)但输出类似于:0110011001000000010110010 等,所以我认为 python 线程缺少一些 1 和 0。
有人想在我的程序中获得无线输入吗?