检测哪个 /dev/ttyACM 是打开的

Detect which /dev/ttyACM is open

他们的命令是 returns 打开什么 /dev/ttyACM* 。在脚本的某个阶段,它断开 USB 连接并重新连接,但 ACM 在此之后递增,因此变量 port = /dev/ttyACM0 现在是 /dev/ttyACM1。我想检测哪个 /dev/ttyACM* 是打开的。所以port = return (command to find ACM)

使用 globserial,这应该可以解决问题:

import glob
import serial

def find_ports():
    ports = glob.glob('/dev/ttyACM[0-9]*')

    res = []
    for port in ports:
        try:
            s = serial.Serial(port)
            s.close()
            res.append(port)
        except:
            pass
    return res