วันอังคารที่ 23 กันยายน พ.ศ. 2557

python serial

สวัสดีครับพี่น้อง

วันนี้ได้ทำโปรเจคเกี่ยวกับ serial port ก็เลยต้องขอบันทึกไว้ก่อน กันลืม

เริ่มด้วย ที่บอร์ด RPi ให้พิมพ์
sudo apt-get install python-serial


ผู้เขียนได้ซื้อ USB to Serial มา และได้เสียบเข้ากับ RPi
ในตอนแรก RPi มองไม่เห็น USB to Serial ก็ได้ถอดแล้วเสียบใหม่ และถอดสาย power ออก แล้วเสียบสาย power ใหม่, RPi เลยมองเห็นเป็น ttyUSB0 โดยเราสามารถดูได้โดยใช้คำสั่ง ls /dev/

ต่อไปเราจะเริ่มเขียน code กัน
ให้สร้าง file ขึ้มาใหม่ด้วยคำสั่ง nano SerialExample.py
เขียน code ดังต่อไปนี้

import serial

port = serial.Serial("/dev/ttyUSB0", baudrate=115200, timeout=3.0)

while True:
    port.write("\r\nSay something:")
    rcv = port.read(10)
    port.write("\r\nYou sent:" + repr(rcv))

กด control+x กด Y กด Enter เพื่อ save และออกจากโปรแกรม

จากนั้นให้เราต่อสาย USB to Serial เข้ากับ computer ของเรา ดังรูป


ที่ computer ของเรา ให้เปิดโปรแกรมที่สามารถรับข้อมูลจาก comport รอไว้ โดยตั้งค่าให้ baudrate ตรงกันกับที่เราเขียนโปรแกรม python ไว้ คือ 115200

จากนั้นที่บอร์ด RPi ให้พิมพ์ sudo python SerialExample.py เพื่อ run program
เราจะเห็นได้ว่าที่ computer ของเรา โปรแกรมที่เปิดรอไว้ จะมีอักษรขึ้นมา ดังรูป


แล้วเราก็ลองกดส่งข้อมูลดู ให้ครบ 10 ตัว โปรแกรม python ที่เราเขียนไว้ ก็จะส่งข้อมูลเดิมกลับออกมาให้เราเห็น


เป็นอันว่าเราสำเร็จในการรับ-ส่งข้อมูลผ่าน USB to Serial แล้ว
จบ... :)
แสดงความคิดเห็น