Easyelectronics.ru

Электроника для всех
Текущее время: 25 май 2020, 23:34

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



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

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

Зарегистрирован: 03 июн 2010, 12:15
Сообщения: 254
Привет всем!
Хочу поковыряться с 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
Сообщения: 4599
Откуда: КЧР, поселок Нижний Архыз
А что за МК? У 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
Сообщения: 1430
Да там транзистор - излишество. Через 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
Сообщения: 1430
Для подключения 1,5к к питанию не нужен внешний транзистор. Процессор это и сам неплохо сделает.


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

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

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


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

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


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

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

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

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


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

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


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

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

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


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

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


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


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


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

Сейчас этот форум просматривают: cubot, Maik, VladislavS


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

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

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