Python 如何访问串行(RS232)端口
要在Python中访问串行端口,请使用pyserial模块,它是为Win32、OSX、Linux、BSD、Jython和IronPython编写的Python串行端口扩展。
让我们来看一下它的特点 –
- 通过Python属性访问端口设置。
- 支持不同的字节大小、停止位、奇偶校验和RTS/CTS、Xon/Xoff流控制。
- 可以设置接收超时或不设置超时。
- 该软件包的文件是100%纯Python编写的。
- 该端口已经设置为二进制传输。不进行空字节剥离、CR-LF转换等处理。
要安装pyserial,请使用pip命令。
pip install pyserial
首先导入所需的库。
import time
import serial
然后,配置串行连接。
ser = serial.Serial(
port='Enter Port',
baudrate=9600,
parity=serial.PARITY_ODD,
stopbits=serial.STOPBITS_TWO,
bytesize=serial.SEVENBITS
)
使用input()获取键盘输入
input = 1
while 1:
# get keyboard input
input = input(">> ")
if input == 'exit':
ser.close()
exit()
如果输入不等于”exit”,则使用write()将字符发送到设备
else:
ser.write(input + '\r\n')
out = ''
在阅读输出之前,请等待一秒。
time.sleep(1)
while ser.inWaiting() > 0:
out += ser.read(1)
if out != '':
print
">>" + out
极客笔记