DIY個人知能ホームゲートウェイ——python編のUSBシリアルポートを読み取り、ゲート磁気警報情報を取得する
812 ワード
433 MワイヤレスデコーダのUSBシリアルポートをルータのUSBポートに挿入すると、デフォルトではttyUSB 0シリアルポートデバイスが現れ、pythonはシリアルポートデータコードを以下のように読み取る.
運転後、433 M無線ゲート磁気をトリガし、出力結果は以下の通りである.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import serial
from time import sleep
ser = serial.Serial('/dev/ttyUSB0', 9600, timeout=0.5)
print ser.port
print ser.baudrate
def recv(serial):
while True:
data =serial.read(64)
if data == '':
continue
else:
break
sleep(0.02)
return data
while True:
data =recv(ser)
if data != '':
print data
運転後、433 M無線ゲート磁気をトリガし、出力結果は以下の通りである.
root@OpenWrt:/tmp# ./serialread.py
/dev/ttyUSB0
9600
{"type":"trigger", "addr":"0x5555","data":"0xc0"}