Python Serial串口基本操作(收发数据)
串口通信是一种常见的设备通信方式,Python中的serial库可以帮助我们实现串口通信操作。下面是串口基本操作的攻略。
安装serial模块
在使用serial库之前,需要先安装Python serial模块。常用的安装方法有pip,使用以下命令可以在命令行中安装serial模块。
pip install pyserial
导入serial模块
安装serial模块之后,需要在Python代码中导入serial模块。
import serial
创建串口对象
使用serial模块进行串口通信,需要创建一个串口对象。在创建串口对象时,需要指定串口号、波特率等参数,例如:
ser = serial.Serial('COM1', 9600, timeout=0.5)
这里创建一个名为ser的串口对象,串口号为COM1,波特率为9600,timeout表示读取串口数据的超时时间,单位为秒,可以不指定,默认为None。
串口对象常用方法
serial.Serial类常用的方法有以下几个:
- open() 打开串口连接;
- close() 关闭串口连接;
- write() 向串口发送数据;
- read() 从串口读取数据;
- readline() 从串口读取一行数据;
- flushInput() 清空串口输入缓冲区;
- flushOutput() 清空串口输出缓冲区。
串口数据收发示例
下面通过两个示例演示串口数据的收发操作。
发送数据示例
import serial
ser = serial.Serial('COM1', 9600, timeout=0.5)
while True:
data = input('请输入要发送的数据:')
ser.write(data.encode())
print('发送成功')
代码中创建了一个名为ser的串口对象,不断读取用户输入的数据并通过write()方法发送到串口,等待下一次输入。
接收数据示例
import serial
ser = serial.Serial('COM1', 9600, timeout=0.5)
while True:
data = ser.readline().decode().strip()
print('接收到的数据为:', data)
代码中创建了一个名为ser的串口对象,不断从串口中读取数据,并使用decode()方法将byte类型的数据转换为字符串类型,使用strip()方法去除字符串两端的空格,最后打印读取到的数据。
总结
以上是Python Serial串口基本操作的攻略,通过serial模块的各种方法实现串口的收发操作。其中发送数据和接收数据两个示例提供了基本实现思路,可以供大家借鉴和参考。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python Serial串口基本操作(收发数据) - Python技术站