如何在 Python 中访问串行 (RS232) 端口?

pythonprogrammingserver side programming

要在 Python 中访问串行端口,请使用 pyserial 模块,它是适用于 Win32、OSX、Linux、BSD、Jython、IronPython 的 Python 串行端口扩展。

让我们看看这些功能 -

  • 通过 Python 属性访问端口设置。
  • 支持使用 RTS/CTS 和/或 Xon/Xoff 的不同字节大小、停止位、奇偶校验和流量控制。
  • 有或没有接收超时均可工作。
  • 此包中的文件 100% 纯 Python。
  • 端口设置为二进制传输。没有 NULL 字节剥离、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()

如果输入不等于退出,则使用 write() 将字符发送到设备

else: ser.write(input + '\r\n') out = ''

等待一秒钟再读取输出。

time.sleep(1) while ser.inWaiting() > 0: out += ser.read(1) if out != '': print ">>" + out

相关文章