Easyelectronics.ru

Электроника для всех
Текущее время: 18 окт 2019, 01:38

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: USB переподключение
СообщениеДобавлено: 09 апр 2019, 16:07 
Старожил

Зарегистрирован: 03 июн 2010, 12:15
Сообщения: 252
Привет всем!
Хочу поковыряться с USB в микроконтроллере.
Хочу повторить схему из программатора в nucleo.
Изображение
Поясните, правильно ли я понимаю, что сигнал USB_RENUMn позволяет программно переподключить USB устройство? Т.е. когда втыкаем провод, транзистор включает подтяжку 1,5 кОм и устройство определяется. А когда контроллер закрывает транзистор, подтяжка отключается и хост определяет отключение микроконтроллера.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 09 апр 2019, 16:10 
Старожил
Аватара пользователя

Зарегистрирован: 27 мар 2015, 04:10
Сообщения: 1931
Откуда: Харьков
Да, верно, но нужно еще быть готовым к новой (повторной) енумерации в самом контроллере. Сделать сброс, настроить прерывания (или не настраивать) и т.д.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 09 апр 2019, 17:48 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 3999
Откуда: КЧР, поселок Нижний Архыз
А что за МК? У STM32F0x2 есть внутренняя подтяжка DP, и им никакие внешние транзисторы/ноги не нужны.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 09 апр 2019, 19:14 
Заглядывает иногда

Зарегистрирован: 06 янв 2014, 17:52
Сообщения: 105
ST-Link сделан на F103 серии. В ней нет встроенного резистора на DP


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 09 апр 2019, 19:22 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1012
Да там транзистор - излишество. Через 1.5к на ножку процессора достаточно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 09 апр 2019, 20:03 
Заглядывает иногда

Зарегистрирован: 06 янв 2014, 17:52
Сообщения: 105
Без управления резистором, при отладке, после каждого ресета, придется каждый раз разъем USB дергать. Чтобы USB renum сделать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 09 апр 2019, 23:36 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1012
Для подключения 1,5к к питанию не нужен внешний транзистор. Процессор это и сам неплохо сделает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 10 апр 2019, 11:33 
Старожил

Зарегистрирован: 03 июн 2010, 12:15
Сообщения: 252
STM32F103C8 у меня
Единственное, я в схему вместо R17 R18 перемычек 22 ома поставлю и USBLC6-4SC6 в защиту.
VladislavS писал(а):
Да там транзистор - излишество. Через 1.5к на ножку процессора достаточно.

Тут при включении по умолчанию без участия процессора как то всё начинает работать, потому, наверно, и транзистор стоит. Тут больше вопрос почему его к 5 вольтам подключили.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 10 апр 2019, 11:45 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 3999
Откуда: КЧР, поселок Нижний Архыз
Там все равно делитель на базе. Но да, непонятно, нафига это было делать... Ведь фактически получается, что на базе почти 4В!
Насчет необходимости использования транзистора: я несколько раз встречал схемы, где его не было! Просто подтяжка DP к +3.3В через 1.5кОм подключается к pushpull ноге МК, на которой установлена лог. 1. Как только надо сбросить, переводим ногу в opendrain или floating input...
Плюсом этого является еще и то, что компьютер "узнает", что к нему что-то подключилось лишь после инициализации контроллера. А в случае с транзистором если инициализация занимает много времени, может возникнуть необходимость перед активацией USB отключить подтяжку и подключить снова!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 10 апр 2019, 12:43 
Старожил

Зарегистрирован: 03 июн 2010, 12:15
Сообщения: 252
Eddy_Em писал(а):
Насчет необходимости использования транзистора: я несколько раз встречал схемы, где его не было!

Вот где бы ни гуглил, все эти транзисторы лепят.
Хотя AN4879 говорит, что можно и к порту. Единственное не понял, для stm32F1 это применимо или нет.
Вложение:
Комментарий к файлу: Подключение к порту подтяжки
usbstm32.gif
usbstm32.gif [ 25.91 Кб | Просмотров: 411 ]

(кстати, я там резисторы по 22 Ома не заметил, они не нужны?)
Show описание


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 10 апр 2019, 12:47 
Старожил
Аватара пользователя

Зарегистрирован: 26 окт 2013, 07:58
Сообщения: 2349
В своём проекте прямо на порт посадил 1,5К
Работает чётко.
Камень stm32f103ret6


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 10 апр 2019, 13:58 
Старожил

Зарегистрирован: 03 июн 2010, 12:15
Сообщения: 252
Pingvin писал(а):
В своём проекте прямо на порт посадил 1,5К
Работает чётко.
Камень stm32f103ret6

Как компьютер реагирует если инициализация задерживается?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: USB переподключение
СообщениеДобавлено: 10 апр 2019, 14:02 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1012
dark_reader писал(а):
Как компьютер реагирует если инициализация задерживается?
Никак не реагирует. Пока на порт "1" не поставишь для хоста на шине "никого нет".


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB