python 串口接收字符串
介绍
在很多应用中,我们需要与外部设备进行通信。串口通信是一种常见的通信方式,它可以用于连接计算机和各种外部设备,例如传感器、单片机等。Python作为一种强大的脚本语言,提供了丰富的库来进行串口通信。在本文中,我们将学习如何使用Python进行串口接收字符串的操作。
环境准备
在开始之前,我们需要安装一个Python串口库,如pyserial
。可以使用以下命令来安装:
pip install pyserial
示例代码
下面是一个简单的示例代码,用于接收串口发送过来的字符串:
import serial
# 创建串口对象
ser = serial.Serial('/dev/ttyUSB0', 9600)
# 接收数据
while True:
if ser.in_waiting > 0:
# 读取数据
data = ser.readline().decode('utf-8').strip()
print(data)
在上面的代码中,我们首先导入serial
库,然后创建了一个串口对象ser
。 serial.Serial()
函数接受两个参数,第一个参数是串口设备的路径,比如/dev/ttyUSB0
,第二个参数是波特率,这里设置为9600。
然后,我们进入一个无限循环,通过判断ser.in_waiting
的值是否大于0来判断是否有数据可读。如果有数据可读,我们使用ser.readline()
方法读取一行数据,并使用decode()
函数将字节数据转换成字符串。最后,我们使用strip()
函数去除字符串开头和结尾的空格,并打印出来。
运行代码
在运行代码之前,我们需要先连接一个设备到计算机的串口。可以使用串口转USB适配器将设备连接到计算机的USB端口上。然后,可以使用ls /dev/tty*
命令查看所有可用的串口设备路径。
接下来,将示例代码保存为一个Python文件,比如serial_receive.py
,然后运行该文件:
python serial_receive.py
如果一切正常,你应该能看到串口接收到的字符串被打印出来。
总结
通过上述示例代码,我们学习了如何使用Python进行串口接收字符串的操作。通过pyserial
库,我们可以轻松地与外部设备进行串口通信,并处理接收到的字符串数据。希望本文对你理解串口通信有所帮助。