реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Управление работой USB порта
Haamu
сообщение Sep 1 2014, 06:54
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



Есть устройство, подключаемое через USB, прикидывается виртуальным COM-портом. Для его проверки нужно каким-то образом попереключать режимы работы USB порта на компьютере, например перевести его в режим suspend или запретить энумерацию после подключения устройства. Подскажите пожалуйста, как это можно сделать средствами Windovs 7 или других программ?
Go to the top of the page
 
+Quote Post
SM
сообщение Sep 1 2014, 17:31
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Suspend - в драйвере поддержать "Selective suspend" у этого "ком-порта". Тогда по истечении какого-то времени виндовс его и вырубит.
А вот запретить енумерацию, это вряд ли...
Go to the top of the page
 
+Quote Post
jcxz
сообщение Sep 2 2014, 04:15
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(SM @ Sep 1 2014, 23:31) *
А вот запретить енумерацию, это вряд ли...

Элементарно: оторвать линии D+/D- оставить только питание и воткнуть. Можно оторвать только от источника D+/D-, высокий уровень на D+ к хосту всё равно подавать.
Старт firmware будет, но без энумерации. Скорей всего это и нужно ТС - старт ПО без подключения к хосту.
Go to the top of the page
 
+Quote Post
Haamu
сообщение Sep 2 2014, 05:40
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



Цитата(SM @ Sep 1 2014, 21:31) *
Suspend - в драйвере поддержать "Selective suspend" у этого "ком-порта". Тогда по истечении какого-то времени виндовс его и вырубит.

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

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

Для этого я втыкаю USB кабель не в комп, а в телефонную зарядку.
Меня энумерация собственно вот с какой стороны интересует... При подключении к хосту UBS устройство может потреблять не более 100мА, а после энумерации хост может выдавать тот ток, который прописан в дескрипторе устройства (но не более 500мА). Вот мне и надо как-то остановить процесс, чтобы хост только увидел, что что-то появилось на шине, и успокоился, не опрашивая конфигурацию у устройства.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Sep 2 2014, 06:47
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



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

Думаю, что в подавляющем большинстве хостов не заморачиваются с установкой каких-то дополнительных ключей, а питают с одного ключа.
Go to the top of the page
 
+Quote Post
SM
сообщение Sep 2 2014, 19:02
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



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


А это узнавайте у авторов драйвера. Если SS поддержан, то, возможно, его можно включить через реестр (так сделано, например, в примере драйвера в WDK bulkusb.sys)
Go to the top of the page
 
+Quote Post
Alex11
сообщение Sep 2 2014, 21:56
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Вы хотите посмотреть, будет ли хост ограничивать ток на уровне 100 мА? - Не будет. Никто не заморачивается ключами с переменным ограничением нагрузки. Ограничение делают только на 500 мА, да и то правильное оно только на ноутбуках. На больших компах ограничение, как правило, в районе 1 А. Чтобы комп увидел устройство, но не делал больше ничего, подтяните D+ к 3.3 В через резистор 1.5к. При этом комп попытается начать энумерацию, у него ничего не выйдет, после чего он успокоится, напишет "неизвестное устройство" и будет ждать его отсоединения.
Go to the top of the page
 
+Quote Post
Alex11
сообщение Sep 2 2014, 21:59
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



0
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th August 2025 - 16:11
Рейтинг@Mail.ru


Страница сгенерированна за 0.01411 секунд с 7
ELECTRONIX ©2004-2016