Для большинства ПК питание USB VBUS на портах ROOT не имеет аппаратных переключателей верхнего уровня для управления VBUS, поэтому нет возможности включать / выключать VBUS с помощью программного обеспечения. VBUS подключен почти напрямую к системному PS, к шине +5VSB (в режиме ожидания), поэтому даже если компьютер выключен, VBUS остается. Это сделано таким образом, чтобы клавиатура или мышь могли разбудить компьютер. (Ноутбуки несколько разные, это зависит). Поэтому у вас есть три варианта:
(1) Используйте хороший (сертифицированный и дорогой) концентратор с портами, которые имеют верхние коммутаторы для подключения к вашим COM-устройствам. Когда компьютер перезагрузится, новый цикл перечисления для концентратора USB будет иметь состояние USB_RESET, а переключатели верхней стороны выключатся, а затем включатся. Найти такой тип концентратора может быть непросто, поскольку у производителей обычно есть варианты заполнения на своих печатных платах либо для использования переключателей верхней стороны (добавление стоимости), либо для обхода их с помощью сбрасываемого полифузии (дешево) в точке сборки.
(2) Используйте отдельный управляемый источник питания, такой как USB-переключатель SPDT, между USB-портом и вашим оборудованием.
(3) Исправьте ваше оборудование COM-порта и / или драйвер хоста для реализации протокола «сброс / инициализация».