在Python中读取串口数据通常使用`pySerial`库,以下是使用`pySerial`读取串口数据的基本步骤和示例代码:
步骤
1. 安装`pySerial`库
pip install pyserial
2. 导入`pySerial`库
import serial
3. 打开串口
ser = serial.Serial('COM1', 9600) 在Windows系统中使用'COM1',在Linux系统中使用'/dev/ttyUSB0'
4. 读取串口数据
while True:
data = ser.readline() 读取一行数据
print(data.decode('utf-8')) 将字节数据解码为字符串并打印
5. 关闭串口
ser.close()
示例代码
import serial
打开串口
ser = serial.Serial('/dev/ttyUSB0', 9600) 根据实际情况更改端口号和波特率
读取串口数据并保存到文件
with open('serial_data.txt', 'w') as file:
while True:
data = ser.readline().decode() 读取一行数据并解码
file.write(data) 写入文件
file.flush() 刷新缓冲区
print(data) 在控制台打印数据
关闭串口
ser.close()
注意事项
确保串口设备已正确连接并开启。
根据操作系统不同,串口名称可能不同(例如:在Windows中是`COMx`,在Linux中是`/dev/ttyXXX`)。
波特率、数据位、停止位和校验位等参数需要根据串口设备的要求进行设置。
可以使用`ser.read()`读取单个字节,`ser.read(size=5)`读取固定字节数,`ser.readline()`按行读取数据。
在读取数据时,可能需要处理数据的解码和错误检查。
以上步骤和代码示例可以帮助你开始在Python中读取串口数据。