Как компьютер определяет, является ли он USB или последовательным и какой номер порта использовать

275
Black

Почему разъем для подключения внешних устройств имеет USB-тип A. Но при подключении к компьютеру он указан на com-порту или на usb? Как мне компьютер идентифицировать это?

Также, что касается com порта. Почему устройства отличаются по номеру com-порта? Как и то, что я заметил, при подключении одной и той же модели устройства к одному и тому же порту у них один и тот же номер порта, но при подключении другого типа устройства к одному и тому же порту у него другой номер порта?

-2

2 ответа на вопрос

2
Warren Hill

Для подробного ответа посмотрите спецификацию USB, которую вы можете найти здесь .

Простая версия:

У всех, кто делает USB-устройства, есть VID (Vendor id), который представляет собой 16-битное число, которое вы должны купить.

Для каждого продукта, который они делают, они присваивают PID (идентификатор продукта), который опять-таки является 16-битным числом. Вместе однозначно идентифицируя продукт, каждый продукт может также иметь серийный номер, но это не требуется стандартом.

В USB все управляется хостом (ПК). Когда вы подключаете устройство к своей ОС, запрашивает у него его VID и PID, если он распознает их, он может просто поговорить с ним, если нет, вам предоставляется возможность установить устройство.

Для виртуальных последовательных портов Windows использует серийный номер, если он доступен, для назначения номеров портов другие ОС могут отличаться.

1
Christian V

При подключении USB-устройство передает информацию о типе устройства. Эта информация называется дескрипторами USB и содержит среди прочих идентификатор производителя, идентификатор продукта и класс устройства. Это часть спецификации USB.

Даже очень простое устройство может иметь некоторую память для хранения и передачи дескрипторов на хост (ПК). Клавиатура идентифицирует себя как устройство интерфейса человека, жесткий диск как устройство хранения данных и так далее. Операционная система определяет, что делать с этой информацией. Как правило, выберите правильный драйвер и предоставьте его другим программам так, чтобы это имело смысл.