欢迎访问宙启技术站
智能推送

Python中使用serial.tools.list_portscomports()函数搜索连接的串口设备

发布时间:2024-01-14 18:24:31

在Python中,可以使用serial.tools.list_ports.comports()函数来搜索连接的串口设备。这个函数返回一个list对象,其中包含一个或多个serial.tools.list_ports_common.ListPortInfo对象,每个对象表示一个可用的串口设备。

以下是一个使用serial.tools.list_ports.comports()函数的示例:

import serial.tools.list_ports

# 使用comports()函数搜索连接的串口设备
ports = serial.tools.list_ports.comports()

# 打印每个串口设备的详细信息
for port in ports:
    print(f"设备名称: {port.device}")
    print(f"设备描述: {port.description}")
    print(f"设备制造商: {port.manufacturer}")
    print(f"设备序列号: {port.serial_number}
")

# 获取第一个串口设备的端口号和设备名称
if len(ports) > 0:
    first_port = ports[0]
    port_name = first_port.device
    device_name = first_port.name
    print(f"第一个串口设备的端口号: {port_name}")
    print(f"第一个串口设备的设备名称: {device_name}")

以上代码中,我们首先导入serial.tools.list_ports模块。然后,使用comports()函数搜索连接的串口设备,并将它们保存在一个名为ports的列表中。

接下来,我们使用一个for循环遍历ports列表,并打印每个串口设备的详细信息,如设备名称、设备描述、设备制造商和设备序列号。

最后,我们检查ports列表的长度是否大于0,如果是,则获取第一个串口设备的端口号和设备名称,并将它们打印出来。

运行以上代码,你将看到类似以下的输出:

设备名称: COM1
设备描述: Communications Port (COM1)
设备制造商: (Standard port types)
设备序列号: None

设备名称: COM3
设备描述: USB Serial Port (COM3)
设备制造商: USB2.0-Serial
设备序列号: A702K3S4

第一个串口设备的端口号: COM1
第一个串口设备的设备名称: None

输出结果中,你可以看到已连接的串口设备的名称、描述、制造商和序列号。你还可以通过ports列表来访问特定串口设备的端口号和设备名称。

希望这个例子能帮助你理解如何使用serial.tools.list_ports.comports()函数搜索连接的串口设备。请注意,为了能够使用此函数,你需要安装PySerial库。