Python 使用pySerial包的完整示例

Python 使用pySerial包的完整示例

在本文中,我们将介绍如何使用pySerial包进行串口通信,并提供一些完整的示例。pySerial是一个Python库,用于通过串口进行通信。它提供了一组简单的函数,用于打开、读取和写入串口。

阅读更多:Python 教程

安装pySerial包

在开始使用pySerial之前,首先需要安装它。可以使用pip命令进行安装,打开命令行并运行以下命令:

pip install pySerial

安装完成后,我们就可以在Python中导入pySerial包,并使用它来进行串口通信了。

打开串口

在通过串口进行通信之前,我们需要先打开串口。pySerial提供了Serial类,可用于打开和配置串口。以下是打开串口的示例代码:

import serial

# 打开串口
ser = serial.Serial('COM1', 9600)

上述代码中,我们通过serial.Serial函数打开了COM1串口,并将波特率设置为9600。可以根据自己的需求修改串口号和波特率。

读取串口数据

打开串口后,我们通常需要读取串口发送的数据。pySerial提供了多种读取串口数据的方法,如下所示:

读取固定字节数

如果我们知道要读取的字节数,可以使用read方法来读取固定字节数的数据。以下是示例代码:

# 读取5个字节的数据
data = ser.read(5)
print(data)

读取一行数据

如果我们知道一行数据以换行符结尾,可以使用readline方法来读取一行数据。以下是示例代码:

# 读取一行数据
line = ser.readline()
print(line)

持续读取数据

如果我们需要持续读取串口发送的数据,可以使用循环来实现。以下是示例代码:

# 持续读取数据
while True:
    data = ser.read(1)  # 读取1个字节的数据
    print(data)

写入串口数据

除了读取串口数据,我们还可以通过串口发送数据。pySerial提供了多种写入串口数据的方法,如下所示:

写入字节数组

如果我们有一个字节数组需要发送,可以使用write方法将其写入串口。以下是示例代码:

# 写入字节数组
data = [0x41, 0x42, 0x43]  # 发送ABC
ser.write(data)

写入字符串

如果我们有一个字符串需要发送,可以将其转换为字节数组,并使用write方法将其写入串口。以下是示例代码:

# 写入字符串
str_data = "Hello"
data = str_data.encode()  # 将字符串转换为字节数组
ser.write(data)

关闭串口

当我们完成串口通信后,需要及时关闭串口。可以使用close方法关闭串口。以下是示例代码:

# 关闭串口
ser.close()

完整示例

下面是一个完整的示例,演示了如何通过串口接收和发送数据:

import serial

# 打开串口
ser = serial.Serial('COM1', 9600)

try:
    while True:
        # 接收数据
        data = ser.read(1)
        print("接收到的数据:", data)

        # 发送数据
        str_data = input("请输入要发送的数据:")
        data = str_data.encode()
        ser.write(data)
finally:
    # 关闭串口
    ser.close()

以上示例将循环接收数据,并等待用户输入需要发送的数据。用户输入的数据将通过串口发送出去。

总结

本文介绍了如何使用pySerial包进行串口通信,并提供了多个完整的示例。通过学习这些示例,我们可以掌握pySerial包的常用功能,并应用于实际项目中。希望本文能帮助您在Python中使用pySerial进行串口通信。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程