学习如何使用 Python 3 串口模块

在嵌入式开发、电子工程或计算机硬件交互中,串口通信是非常重要的。Python 提供了强大的库,可以帮助我们进行串口通信。在这篇文章中,我们将一起学习如何使用 Python 3 实现串口模块。我们将按照以下流程进行:

流程图

flowchart TD
    A[下载和安装pySerial模块]
    B[导入pySerial模块]
    C[设置串口配置]
    D[打开串口]
    E[数据读写]
    F[关闭串口]
    
    A --> B --> C --> D --> E --> F

总体流程

步骤 说明
1 下载和安装pySerial模块
2 导入pySerial模块
3 设置串口配置
4 打开串口
5 读写数据
6 关闭串口

现在让我们详细了解每一个步骤。

步骤 1: 下载和安装 pySerial 模块

在使用串口模块之前,需要先安装 pySerial 库。可以使用 pip 进行安装。在终端或命令提示符中输入以下命令:

pip install pyserial
  • 这里的命令使用 pip 包管理器下载并安装 pySerial 模块。

步骤 2: 导入 pySerial 模块

一旦安装完成,我们需要在代码中引入这个库:

import serial  # 导入 pySerial 模块
  • 通过 import 语句将 pySerial 模块引入到代码中。

步骤 3: 设置串口配置

在与串口设备通信之前,你需要配置串口的参数,例如波特率、数据位、停止位和校验位等。以下是一个例子:

ser = serial.Serial(
    port='COM3',      # 串口名称, Windows 通常是 'COM1', 'COM2', ... 
    baudrate=9600,    # 波特率
    bytesize=serial.EIGHTBITS,  # 数据位
    parity=serial.PARITY_NONE,   # 校验位
    stopbits=serial.STOPBITS_ONE, # 停止位
    timeout=1         # 超时时间
)
  • port : 设定串口号。
  • baudrate : 设置通信速率,9600 是常用的速率。
  • bytesize : 设置字节大小,这里设定为 8 位。
  • parity : 设置校验位,NONE表示不使用校验。
  • stopbits : 设置停止位,通常为1。
  • timeout : 设置超时时间。

步骤 4: 打开串口

在实际操作之前,你需要确保串口是打开的。打开串口的方法如下:

if ser.is_open:
    print("串口已打开")
else:
    ser.open()  # 打开串口
    print("串口成功打开")
  • is_open : 检查串口是否打开。
  • open() : 如未打开则打开串口。

步骤 5: 读写数据

接下来,你可以用以下方法进行数据的读取和写入:

写数据
ser.write(b'Hello, Serial Port!')  # 发送数据
  • write() : 将字节数据写入串口。
读数据
data = ser.read(10)  # 读取10个字节
print(data)          # 打印接收到的数据
  • read() : 从串口读取指定数量的字节。

步骤 6: 关闭串口

完成通信后,切记关闭串口:

ser.close()  # 关闭串口
print("串口已关闭")
  • close() : 关闭已打开的串口。

饼状图

以下是一个简单的饼状图,用以说明每个步骤所占的时间比例。

pie
    title 串口配置步骤时间分配
    "下载和安装": 10
    "导入模块": 5
    "设置配置": 20
    "打开串口": 15
    "读写数据": 40
    "关闭串口": 10

结语

现在,你已经掌握了如何使用 Python 3 与串口设备进行通信的基本知识。无论你是在进行嵌入式开发,还是在测试某种硬件,使用 pySerial 都将非常方便。希望你能在自己的项目中多加实践,熟练掌握串口通信的技巧!