วันนี้ได้เขียนหลายเรื่องเลย งานเร่งด่วนมาก
ตอนนี้จะเกี่ยวกับการอ่านค่า ที่ได้รับจาก serial port
ตัวอย่าง code
#! /usr/bin/python
import time
import serial
port = serial.Serial("/dev/ttyUSB0", baudrate=19200, timeout=1.0)
i = 1
while 1:
port.write(chr(i))
rcv = port.read(1) ================== (1)
if rcv != '':================== (2)
ans = ord(rcv) ================== (3)
if ans == 0x61:
print "Status Ready"
else:
print rcv
else: ================== (4)
print "Loss communication"
(1) คืออ่านค่าจาก serial port ใส่ในตัวแปร rcv
(2) ตรวจสอบว่าค่า rcv ที่อ่านมา มีค่าอะไรอยู่หรือไม่ ถ้ามีก็ทำต่อไป ถ้าไม่มีก็กระโดดไปที่ (4)
(3) เปลี่ยนตัวแปร rcv ที่เป็น string ให้เป็น int เพื่อที่เราจะสามารถเปรียบเทียบค่ากับ hex ที่เราต้องการได้
ที่มา http://stackoverflow.com/questions/12929593/how-to-test-for-hexidecimal-output-on-serial-port-in-python
ไม่มีความคิดเห็น:
แสดงความคิดเห็น