Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Управление работой USB порта
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
Haamu
Есть устройство, подключаемое через USB, прикидывается виртуальным COM-портом. Для его проверки нужно каким-то образом попереключать режимы работы USB порта на компьютере, например перевести его в режим suspend или запретить энумерацию после подключения устройства. Подскажите пожалуйста, как это можно сделать средствами Windovs 7 или других программ?
SM
Suspend - в драйвере поддержать "Selective suspend" у этого "ком-порта". Тогда по истечении какого-то времени виндовс его и вырубит.
А вот запретить енумерацию, это вряд ли...
jcxz
Цитата(SM @ Sep 1 2014, 23:31) *
А вот запретить енумерацию, это вряд ли...

Элементарно: оторвать линии D+/D- оставить только питание и воткнуть. Можно оторвать только от источника D+/D-, высокий уровень на D+ к хосту всё равно подавать.
Старт firmware будет, но без энумерации. Скорей всего это и нужно ТС - старт ПО без подключения к хосту.
Haamu
Цитата(SM @ Sep 1 2014, 21:31) *
Suspend - в драйвере поддержать "Selective suspend" у этого "ком-порта". Тогда по истечении какого-то времени виндовс его и вырубит.

А можно поподробнее? Это как-то в настройках можно посмотреть или на стадии написания драйвера? Драйвер у меня уже готовый идет, я его сам не писал.

Цитата(jcxz @ Sep 2 2014, 08:15) *
Элементарно: оторвать линии D+/D- оставить только питание и воткнуть.

Для этого я втыкаю USB кабель не в комп, а в телефонную зарядку.
Меня энумерация собственно вот с какой стороны интересует... При подключении к хосту UBS устройство может потреблять не более 100мА, а после энумерации хост может выдавать тот ток, который прописан в дескрипторе устройства (но не более 500мА). Вот мне и надо как-то остановить процесс, чтобы хост только увидел, что что-то появилось на шине, и успокоился, не опрашивая конфигурацию у устройства.
jcxz
Цитата(Haamu @ Sep 2 2014, 11:40) *
При подключении к хосту UBS устройство может потреблять не более 100мА, а после энумерации хост может выдавать тот ток, который прописан в дескрипторе устройства (но не более 500мА). Вот мне и надо как-то остановить процесс, чтобы хост только увидел, что что-то появилось на шине, и успокоился, не опрашивая конфигурацию у устройства.

Думаю, что в подавляющем большинстве хостов не заморачиваются с установкой каких-то дополнительных ключей, а питают с одного ключа.
SM
Цитата(Haamu @ Sep 2 2014, 09:40) *
А можно поподробнее? Это как-то в настройках можно посмотреть или на стадии написания драйвера? Драйвер у меня уже готовый идет, я его сам не писал.


А это узнавайте у авторов драйвера. Если SS поддержан, то, возможно, его можно включить через реестр (так сделано, например, в примере драйвера в WDK bulkusb.sys)
Alex11
Вы хотите посмотреть, будет ли хост ограничивать ток на уровне 100 мА? - Не будет. Никто не заморачивается ключами с переменным ограничением нагрузки. Ограничение делают только на 500 мА, да и то правильное оно только на ноутбуках. На больших компах ограничение, как правило, в районе 1 А. Чтобы комп увидел устройство, но не делал больше ничего, подтяните D+ к 3.3 В через резистор 1.5к. При этом комп попытается начать энумерацию, у него ничего не выйдет, после чего он успокоится, напишет "неизвестное устройство" и будет ждать его отсоединения.
Alex11
0
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.