ZyBEX 0 5 ноября, 2010 Опубликовано 5 ноября, 2010 · Жалоба Как считаете, можно ли резистор подтяжки линии D+ подключить напрямую к I/O порту? Настроив порт в режим push-pull и подав единицу мы, через встроенный P-MOS, подключим резистор к питанию, т.е. 3,3 вольта. Ток (резистор 1,5к) составит не более 2,2мА, по документации порт можно нагрузить 8мА. Вроде-бы все нормально. Если ли предубеждение? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 6 5 ноября, 2010 Опубликовано 5 ноября, 2010 (изменено) · Жалоба Как считаете, можно ли резистор подтяжки линии D+ подключить напрямую к I/O порту? Настроив порт в режим push-pull и подав единицу мы, через встроенный P-MOS, подключим резистор к питанию, т.е. 3,3 вольта. Ток (резистор 1,5к) составит не более 2,2мА, по документации порт можно нагрузить 8мА. Вроде-бы все нормально. Если ли предубеждение? Теоретически можно. Отключать этот резистор, настраивая порт на ввод и выключая PULLUP ... Но кто его знает, как в данном случае начнет влиять на работу вашей схемки встроенная в МК схема защиты линии I/O ? Не надо так делать. А то ведь сэкономите пару центов, а получите проблему. Не случайно так не делают. Поставьте лучше P-MOSFET ... Изменено 5 ноября, 2010 пользователем kovigor Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZyBEX 0 7 ноября, 2010 Опубликовано 7 ноября, 2010 · Жалоба В исследовательских целях попробовал на практике. Работает отлично. ...Но кто его знает, как в данном случае начнет влиять на работу вашей схемки встроенная в МК схема защиты линии I/O ? А разве линии DM-DP имеют защиту, отличную от других линий I/O ? Если нет, то схема должна быть корректна, имхо. Натолкнулся в инете на еще один вариант дисконнекта: Там резистор между VCC и DP сидит постоянно. И когда нужно сделать дисконнект, на 10 мс линия USB-DP (A12) становится push-pull с нулем. P.S. И дело думаю не всегда в экономии. Если нужно сделать экстремально миниатюрное устройство, на разьеме usb наподобие флэшек, то такой вариант годится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vmp 0 8 ноября, 2010 Опубликовано 8 ноября, 2010 · Жалоба Как считаете, можно ли резистор подтяжки линии D+ подключить напрямую к I/O порту? А смысл? Такое решение годится только для устройств с питанием от самого USB. Но в этом случае логичнее не тратить вывод и повесить резистор сразу на питание 3.3V. Проблемы могут возникнуть только при отладке (комп начинает детектить устройство, пока идет загрузка программы отладчиком), но это решается способом: когда нужно сделать дисконнект, на 10 мс линия USB-DP (A12) становится push-pull с нулем. благо порты STM32 позволяют такой трюк. По стандарту резистор должен быть подтянут к источнику 3.3V, запитанному от Vbus, подаваемого хостом. Это делается для того, чтобы при отключенном хосте (и автономном питании устройства) исключить подачу тока в линию D+. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sonycman 1 8 ноября, 2010 Опубликовано 8 ноября, 2010 · Жалоба По стандарту резистор должен быть подтянут к источнику 3.3V, запитанному от Vbus, подаваемого хостом. А если 5 вольт? Как правило напряжение Vbus равно 5 вольтам, а не 3.3. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZyBEX 0 8 ноября, 2010 Опубликовано 8 ноября, 2010 · Жалоба А если 5 вольт? Как правило напряжение Vbus равно 5 вольтам, а не 3.3. Тогда ток потечет в хост и спалит там что-нибудь. Может тогда через делитель? Но Vbus не всегда равно 5 вольт, может быть просадка. Так что нужен стабилизатор на 3.3в Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sonycman 1 9 ноября, 2010 Опубликовано 9 ноября, 2010 · Жалоба Тогда ток потечет в хост и спалит там что-нибудь. Может тогда через делитель? Но Vbus не всегда равно 5 вольт, может быть просадка. Так что нужен стабилизатор на 3.3в Нет, я имею ввиду вот что - на многих схемах подтяжка производится через ключ напрямую с Vbus, то есть с 5-ти вольт, а не с трёх. Плюс защита в виде стабилитрона и диодов ставится тоже на Vbus и землю. То есть никакими 3.3 вольтами и не пахнет. Отсюда можно сделать вывод, что USB интерфейс как минимум должен быть 5v tolerant. Или всё же это не правильно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alechek 0 9 ноября, 2010 Опубликовано 9 ноября, 2010 · Жалоба Нет, я имею ввиду вот что - на многих схемах подтяжка производится через ключ напрямую с Vbus, то есть с 5-ти вольт, а не с трёх. Плюс защита в виде стабилитрона и диодов ставится тоже на Vbus и землю. Отсюда можно сделать вывод, что USB интерфейс как минимум должен быть 5v tolerant. Или всё же это не правильно? Работоспособность и сохранение работоспособности после устранения воздействия - разные вещи! Да, не сгорит от 5-ти вольт. Но и работать тоже не обязан! :smile3046: В стандарте сказано 3.3В - значит надо делать как в стандарте и не ловить потом глюки. :santa2: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться