การใช้งาน Serial Port แบบ RS232/RS485 ใน IOT 2040
2 min readSep 14, 2019
ตัว IOT 2040 จะมี Serial Port มาให้ 2 ช่องด้วยกัน คือ X30 COM, X31 COM สามารถตั้งโหมดการใช้งานได้ 3 แบบคือ RS232/RS422/RS485 โดยค่าเริ่มต้นจะตั้งเป็น RS232 ทั้ง 2 ช่อง
การเข้าสายในการใช้งานแบบต่างๆทำได้ดังนี้
การเข้าถึงตัว Serial Port เข้าถึงได้ดังนี้
- ตัว X30 COM จะถูกกำหนดใว้ที่ /dev/ttyS2
- ตัว X31 COM จะถูกกำหนดใว้ที่ /dev/ttyS3
การดูโหลดการทำงานของ Serial Port ว่าขณะนี้ได้ถูกกำหนดการใช้งานรูปแบบได ทำได้โดยใช้คำสั่ง
switchserialmode /dev/ttyS2
การเปลี่ยโหลดการทำงานให้ใช้คำสั่ง
switchserialmode /dev/ttyS2 RS485
การตั้งค่าการสื่อสารของ Serial Port จะมีพารามิเตอร์ให้ตั้งดังนี้
- ค่า Baud rate [9600, 19200, 56000, 115200]
- ค่า Data bit [7, 8]
- ค่า Parity bit [None, Even, Odd]
- ค่า Stop bit [1, 2]
การตั้งค่าการสื่อสารนี้ต้องตั้งให้ตรงกันกับอุปกรณ์ที่จะนำมาใช้งาน
ตัวอย่างการตั้งค่า
- Baud rate 19200
- Data bit 8
- Parity bit None
- Stop bit 1
//Baud rate 19200,Data bit 8,Parity bit None,Stop bit 1
stty -F /dev/ttyS2 19200 cs8 -parenb -parodd -inpck -cstopb
ตัวย่างการตั้งค่าแบบอื่นๆ
//19200,8,N,1
stty -F /dev/ttyS2 19200 cs8 -parenb -parodd -inpck -cstopb
//19200,8,O,1
stty -F /dev/ttyS2 19200 cs8 parenb parodd inpck -cstopb
//19200,8,E,1
stty -F /dev/ttyS2 19200 cs8 parenb -parodd inpck -cstopb
//19200,8,N,2
stty -F /dev/ttyS2 19200 cs8 -parenb -parodd -inpck cstopb
//19200,8,O,2
stty -F /dev/ttyS2 19200 cs8 parenb parodd inpck cstopb
//19200,8,E,2
stty -F /dev/ttyS2 19200 cs8 parenb -parodd inpck cstopb
การตรวจสอบค่าที่ตั้งจะใช้คำสั่ง
stty -F /dev/ttyS2 -a
การตรวจสอบการทำงานของ Serial Port ใช้คำสั่ง
cat /proc/tty/driver/serial
Ref.