Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как организовать PULLUP если устройство питается от USB?
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Интерфейсы
Salamander
Господа, у меня устройство которое питается от USB. То есть, готово оно к обмену данными с компьютером только через какое-то время после включения (ну может миллисекунды, но все же это время).
А если я поставлю на линию D+ подтяжку резистором, то компьютер получит информацию о том, что устройство подключено, практически мгновенно.
В связи с этим вопрос - что же будет, если компьютер увидев гостя начнет его опрос, а гость будет не готов? Не зависнет ли все это дело при первой неудачной попытке обмена?
Или же компьютер будет спокойно ждать в течение некого таймаута и делать повторные попытки?

В общем, резюмируюя - если контроллер стартует только после подключения к USB, потому как питается от него, надо ли делать транзисторную подтяжку, или достаточно резистора?

Спасибо.

aaarrr
По спецификации задержка между моментом регистрации подключения устройства до сброса шины и начала энумерации составляет 100мс. Если ваши миллисекунды укладываются в это время, то можно не беспокоиться.
Salamander
ОК.
Но если все же превысит, то что будет?
Умеет ли компьютер поддерживать дипломатические взаимоотношения с нерадивыми устройствами?
aaarrr
Цитата(Salamander @ Mar 16 2013, 10:35) *
Умеет ли компьютер поддерживать дипломатические взаимоотношения с нерадивыми устройствами?

Умеет: хост предпримет по меньшей мере три попытки связи, если устройство не отвечает. Но до такого лучше не доводить, конечно.
Alex11
Я бы даже сказал, там их ровно три. Время между попытками невеликое - от 100 до 300 мс.
kovigor
Цитата(Salamander @ Mar 16 2013, 08:51) *
надо ли делать транзисторную подтяжку, или достаточно резистора?

Надо. У вас на схеме правильно сделано. Или хотите на транзисторе сэкономить ? sm.gif
Только помните, что до того, как устройство пройдет энумерацию, оно не имеет права потреблять от шины более 100мА ...
aaarrr
Цитата(kovigor @ Mar 16 2013, 15:41) *
Надо. У вас на схеме правильно сделано. Или хотите на транзисторе сэкономить ? sm.gif

Спорный момент. Я бы сказал, что не надо плодить лишние детали. Если устройство стартует не с черепашьей скоростью,
и не имеет нужды отключаться от шины по своей инициативе, то ставить управление смысла нет.
kovigor
Цитата(aaarrr @ Mar 16 2013, 14:47) *
Спорный момент. Я бы сказал, что не надо плодить лишние детали. Если устройство стартует не с черепашьей скоростью,
и не имеет нужды отключаться от шины по своей инициативе, то ставить управление смысла нет.

Чистая правда. Но я имею в виду как раз общий случай, т.е., считаю, что устройство стартует не мгновенно ...
aaarrr
Скажем так: если нет полной уверенности - лучше поставить транзистор, хуже не будет.
kovigor
Цитата(aaarrr @ Mar 16 2013, 14:56) *
Скажем так: если нет полной уверенности - лучше поставить транзистор, хуже не будет.

Консенсус sm.gif
Salamander
Цитата
Надо. У вас на схеме правильно сделано. Или хотите на транзисторе сэкономить ?

А я уже про другую схему. КОторую нужно сделать на очень мелкой плате и свободное место критично.
На предыдущей схеме я транзистор оставил, да и плату уже заказал)))
kovigor
Цитата(Salamander @ Mar 16 2013, 18:50) *
А я уже про другую схему. КОторую нужно сделать на очень мелкой плате и свободное место критично.
На предыдущей схеме я транзистор оставил, да и плату уже заказал)))

Сопротивления 0402 и транзисторы размером почти с маковое зернышко вполне доступны ...
Salamander
вот куплю микроскоп и полностью на 0402 перейду ))))
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.