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
代码功能解释
这段代码的功能是检查当前系统中可用的串口设备,并将结果打印到日志中。
具体步骤如下:
-
**初始化列表**:创建一个空列表 `port_data` 用于存储串口设备描述。
-
**遍历串口**:使用 `serial.tools.list_ports.comports()` 获取所有串口设备,并将每个设备的描述添加到 `port_data` 列表中。
-
**判断设备是否存在**: - 如果 `port_data` 不为空,遍历并打印每个设备的描述信息,返回 `True`。 - 如果 `port_data` 为空,打印"未连接可用设备...",返回 `False`。
-
**清理列表**:清空 `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:结束方法执行。