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

 
 
 
Reply to this topicStart new topic
> STM32 USB_DISCONNECT 2, способ подключения pull-up резистора
ZyBEX
сообщение Nov 5 2010, 02:51
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 5-05-08
Пользователь №: 37 279



Как считаете, можно ли резистор подтяжки линии D+ подключить напрямую к I/O порту? Настроив порт в режим push-pull и подав единицу мы, через встроенный P-MOS, подключим резистор к питанию, т.е. 3,3 вольта. Ток (резистор 1,5к) составит не более 2,2мА, по документации порт можно нагрузить 8мА.
Вроде-бы все нормально. Если ли предубеждение?
Go to the top of the page
 
+Quote Post
kovigor
сообщение Nov 5 2010, 08:58
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(ZyBEX @ Nov 5 2010, 05:51) *
Как считаете, можно ли резистор подтяжки линии D+ подключить напрямую к I/O порту? Настроив порт в режим push-pull и подав единицу мы, через встроенный P-MOS, подключим резистор к питанию, т.е. 3,3 вольта. Ток (резистор 1,5к) составит не более 2,2мА, по документации порт можно нагрузить 8мА.
Вроде-бы все нормально. Если ли предубеждение?


Теоретически можно. Отключать этот резистор, настраивая порт на ввод и выключая PULLUP ... Но кто его знает, как в данном случае начнет влиять на работу вашей схемки встроенная в МК схема защиты линии I/O ? Не надо так делать. А то ведь сэкономите пару центов, а получите проблему. Не случайно так не делают. Поставьте лучше P-MOSFET ...

Сообщение отредактировал kovigor - Nov 5 2010, 08:59
Go to the top of the page
 
+Quote Post
ZyBEX
сообщение Nov 7 2010, 23:29
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 5-05-08
Пользователь №: 37 279



В исследовательских целях попробовал на практике. Работает отлично.

Цитата(kovigor @ Nov 5 2010, 11:58) *
...Но кто его знает, как в данном случае начнет влиять на работу вашей схемки встроенная в МК схема защиты линии I/O ?

А разве линии DM-DP имеют защиту, отличную от других линий I/O ? Если нет, то схема должна быть корректна, имхо.

Натолкнулся в инете на еще один вариант дисконнекта: Там резистор между VCC и DP сидит постоянно. И когда нужно сделать дисконнект, на 10 мс линия USB-DP (A12) становится push-pull с нулем.

P.S. И дело думаю не всегда в экономии. Если нужно сделать экстремально миниатюрное устройство, на разьеме usb наподобие флэшек, то такой вариант годится.
Go to the top of the page
 
+Quote Post
vmp
сообщение Nov 8 2010, 08:08
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070



Цитата(ZyBEX @ Nov 5 2010, 06:51) *
Как считаете, можно ли резистор подтяжки линии D+ подключить напрямую к I/O порту?

А смысл? Такое решение годится только для устройств с питанием от самого USB. Но в этом случае логичнее не тратить вывод и повесить резистор сразу на питание 3.3V. Проблемы могут возникнуть только при отладке (комп начинает детектить устройство, пока идет загрузка программы отладчиком), но это решается способом:
Цитата
когда нужно сделать дисконнект, на 10 мс линия USB-DP (A12) становится push-pull с нулем.

благо порты STM32 позволяют такой трюк.

По стандарту резистор должен быть подтянут к источнику 3.3V, запитанному от Vbus, подаваемого хостом. Это делается для того, чтобы при отключенном хосте (и автономном питании устройства) исключить подачу тока в линию D+.

Go to the top of the page
 
+Quote Post
sonycman
сообщение Nov 8 2010, 21:05
Сообщение #5


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(vmp @ Nov 8 2010, 12:08) *
По стандарту резистор должен быть подтянут к источнику 3.3V, запитанному от Vbus, подаваемого хостом.

А если 5 вольт?
Как правило напряжение Vbus равно 5 вольтам, а не 3.3.
Go to the top of the page
 
+Quote Post
ZyBEX
сообщение Nov 8 2010, 22:15
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 5-05-08
Пользователь №: 37 279



Цитата(sonycman @ Nov 9 2010, 00:05) *
А если 5 вольт?
Как правило напряжение Vbus равно 5 вольтам, а не 3.3.

Тогда ток потечет в хост и спалит там что-нибудь. Может тогда через делитель? Но Vbus не всегда равно 5 вольт, может быть просадка. Так что нужен стабилизатор на 3.3в
Go to the top of the page
 
+Quote Post
sonycman
сообщение Nov 9 2010, 10:42
Сообщение #7


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(ZyBEX @ Nov 9 2010, 03:15) *
Тогда ток потечет в хост и спалит там что-нибудь. Может тогда через делитель? Но Vbus не всегда равно 5 вольт, может быть просадка. Так что нужен стабилизатор на 3.3в

Нет, я имею ввиду вот что - на многих схемах подтяжка производится через ключ напрямую с Vbus, то есть с 5-ти вольт, а не с трёх.
Плюс защита в виде стабилитрона и диодов ставится тоже на Vbus и землю.
То есть никакими 3.3 вольтами и не пахнет.

Отсюда можно сделать вывод, что USB интерфейс как минимум должен быть 5v tolerant.

Или всё же это не правильно?
Go to the top of the page
 
+Quote Post
Alechek
сообщение Nov 9 2010, 11:09
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 241
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Цитата(sonycman @ Nov 9 2010, 16:42) *
Нет, я имею ввиду вот что - на многих схемах подтяжка производится через ключ напрямую с Vbus, то есть с 5-ти вольт, а не с трёх.
Плюс защита в виде стабилитрона и диодов ставится тоже на Vbus и землю.
Отсюда можно сделать вывод, что USB интерфейс как минимум должен быть 5v tolerant.
Или всё же это не правильно?

Работоспособность и сохранение работоспособности после устранения воздействия - разные вещи!
Да, не сгорит от 5-ти вольт. Но и работать тоже не обязан! smile3046.gif В стандарте сказано 3.3В - значит надо делать как в стандарте и не ловить потом глюки. santa2.gif
Go to the top of the page
 
+Quote Post

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

 


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


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