Перейти к содержанию
    

Управление работой USB порта

Есть устройство, подключаемое через USB, прикидывается виртуальным COM-портом. Для его проверки нужно каким-то образом попереключать режимы работы USB порта на компьютере, например перевести его в режим suspend или запретить энумерацию после подключения устройства. Подскажите пожалуйста, как это можно сделать средствами Windovs 7 или других программ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Suspend - в драйвере поддержать "Selective suspend" у этого "ком-порта". Тогда по истечении какого-то времени виндовс его и вырубит.

А вот запретить енумерацию, это вряд ли...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А вот запретить енумерацию, это вряд ли...

Элементарно: оторвать линии D+/D- оставить только питание и воткнуть. Можно оторвать только от источника D+/D-, высокий уровень на D+ к хосту всё равно подавать.

Старт firmware будет, но без энумерации. Скорей всего это и нужно ТС - старт ПО без подключения к хосту.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Suspend - в драйвере поддержать "Selective suspend" у этого "ком-порта". Тогда по истечении какого-то времени виндовс его и вырубит.

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

 

Элементарно: оторвать линии D+/D- оставить только питание и воткнуть.

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

Меня энумерация собственно вот с какой стороны интересует... При подключении к хосту UBS устройство может потреблять не более 100мА, а после энумерации хост может выдавать тот ток, который прописан в дескрипторе устройства (но не более 500мА). Вот мне и надо как-то остановить процесс, чтобы хост только увидел, что что-то появилось на шине, и успокоился, не опрашивая конфигурацию у устройства.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

При подключении к хосту UBS устройство может потреблять не более 100мА, а после энумерации хост может выдавать тот ток, который прописан в дескрипторе устройства (но не более 500мА). Вот мне и надо как-то остановить процесс, чтобы хост только увидел, что что-то появилось на шине, и успокоился, не опрашивая конфигурацию у устройства.

Думаю, что в подавляющем большинстве хостов не заморачиваются с установкой каких-то дополнительных ключей, а питают с одного ключа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

А это узнавайте у авторов драйвера. Если SS поддержан, то, возможно, его можно включить через реестр (так сделано, например, в примере драйвера в WDK bulkusb.sys)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы хотите посмотреть, будет ли хост ограничивать ток на уровне 100 мА? - Не будет. Никто не заморачивается ключами с переменным ограничением нагрузки. Ограничение делают только на 500 мА, да и то правильное оно только на ноутбуках. На больших компах ограничение, как правило, в районе 1 А. Чтобы комп увидел устройство, но не делал больше ничего, подтяните D+ к 3.3 В через резистор 1.5к. При этом комп попытается начать энумерацию, у него ничего не выйдет, после чего он успокоится, напишет "неизвестное устройство" и будет ждать его отсоединения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...