определить конкретный последовательный порт, который подключен к микросхеме FTDI

Я работаю над чипом FTDI и хочу подключить этот чип к операционной системе Windows 10 через последовательный порт. Я использую этот код ниже, и результаты показывают мне все видимые порты, которые мне не нужны. мне нужно обнаружить только порт, к которому подключен чип, и игнорировать все остальное. например Com 4, поэтому я просто хочу, чтобы моя программа, написанная на Python, обнаруживала ТОЛЬКО Com4. Кстати, я использую Pyserial. Я очень благодарен и благодарен за вашу помощь заранее

def serial_ports ():

if sys.platform.startswith('win'):
    ports = ['COM%s' % (i + 1) for i in range(256)]
    print ports
elif sys.platform.startswith('linux') or sys.platform.startswith('cygwin'):
    # this excludes your current terminal "/dev/tty"
    ports = glob.glob('/dev/tty[A-Za-z]*')
elif sys.platform.startswith('darwin'):
    ports = glob.glob('/dev/tty.*')
else:
    raise EnvironmentError('Unsupported platform')

result = []
print ports
for port in ports:
    try:
        s = serial.Serial(port)
        s.close()
        result.append(port)
    except (OSError, serial.SerialException):
        pass
return result 

person Wael Al Sabbagh    schedule 28.07.2017    source источник


Ответы (1)


Читать о

serial.tools.list_ports

Этот модуль можно запустить для получения списка портов (python -m serial.tools.list_ports).
Он также содержит следующие функции.

serial.tools.list_ports.comports()
Returns:    an iterable that yields ListPortInfo objects.

Функция возвращает итерацию, которая дает кортежи из трех строк:
имя порта, поскольку оно может быть передано в serial.Serial или serial.serial_for_url ();
описание в удобочитаемой форме и тип идентификатора оборудования. Например. может содержать VID: PID USB-последовательных адаптеров.

person stovfl    schedule 28.07.2017