Python获取当前系统中可用的串口设备

python 复制代码
import serial.tools.list_ports

def checkDevice(self):
    port_data = []
    for port in serial.tools.list_ports.comports():
      port_data.append(port.description)

    if port_data:
      for devInfo in port_data:
        self.toolLogPrinting('可用设备' + devInfo)
      RET =  True
    else:
      self.toolLogPrinting('未连接可用设备...')
      RET =  False
    port_data.clear()
    return RET

代码功能解释

这段代码的功能是检查当前系统中可用的串口设备,并将结果打印到日志中。

具体步骤如下:

  1. **初始化列表**:创建一个空列表 `port_data` 用于存储串口设备描述。

  2. **遍历串口**:使用 `serial.tools.list_ports.comports()` 获取所有串口设备,并将每个设备的描述添加到 `port_data` 列表中。

  3. **判断设备是否存在**: - 如果 `port_data` 不为空,遍历并打印每个设备的描述信息,返回 `True`。 - 如果 `port_data` 为空,打印"未连接可用设备...",返回 `False`。

  4. **清理列表**:清空 `port_data` 列表。

控制流图

解释

  • A :开始执行 checkDevice 方法。
  • B :调用 serial.tools.list_ports.comports() 获取所有串口设备。
  • C :遍历获取到的串口设备,并将描述信息存入 port_data 列表。
  • D :判断 port_data 列表是否为空。
  • E :如果列表为空,打印"未连接可用设备...",并返回 False
  • F:如果列表不为空,遍历并打印每个设备的描述信息。
  • G :返回 True
  • H :返回 False
  • I :清空 port_data 列表。
  • J:结束方法执行。
相关推荐
捉鸭子1 分钟前
某音a_bogus vmp逆向
爬虫·python·web安全·node.js·js
进阶的猪8 分钟前
使用printk对SPI子系统全过程的追踪
linux·服务器
曲幽12 分钟前
FastAPI 生产环境静态文件完全指南:从 /favicon.ico 404 到 HSTS 混合内容,一次全根治
python·fastapi·web·static·media·404·hsts·favicon·url_for
Dontla14 分钟前
Python asyncpg库介绍(基于Python asyncio的PostgreSQL数据库驱动)连接池、SQLAlchemy
数据库·python·postgresql
2301_8035545218 分钟前
Linux里面的文件描述符和windows里面的句柄
linux·运维·服务器
IT摆渡者19 分钟前
linux 系统安全检查
运维·网络·经验分享·笔记
zh15702322 分钟前
如何编写动态SQL存储过程_使用sp_executesql执行灵活查询
jvm·数据库·python
2401_8242226926 分钟前
SQL报表统计数据量巨大_分批统计策略
jvm·数据库·python
X566129 分钟前
mysql如何处理连接数过多报错_调整max_connections参数
jvm·数据库·python
星马梦缘30 分钟前
如何切换window-ubuntu双系统【方案一】
linux·ubuntu·双系统