Перейти к содержанию
    

STM32F103RET6 USB. запуск без USB_DISCONNECT

Добрый вечер.

 

Попалась плата (с STM32F103RET6) разводка собственная. Когда человек рисовал схему не развел USB_DISCONNECT (pull-up нет в итоге).

Библиотека (USB-FS-Device) опирается на этот сигнал, сильно не разбирался с функциями библиотеки, но в принципе думаю что зависти без этого сигнала

можно. Но у меня это не получается к сожалению. Побывал выкосить прерывание на USB_DISCONNECT но все равно не завелось.

Подскажите пожалуйста внятную документацию по USB для STM32 (не нашел с описанием регистров и т.д.) что-бы организовать пересылку

руками или понять как изменить библиотеку.

 

 

P.S. Да для затравки практикуюсь с примерами из C:\Keil\ARM\Examples\ST\STM32F10xUSBLib\Demos и без успешно.

 

 

Видимо я встрял с этой платой. Ибо заполучив схему выяснилось что USB D+ D- идет напрямую(!!!!) (через резистор) и поэтому комп не видит устройства. Что с этим можно сделать, у кого какие идеи?

Изменено пользователем h0t

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попалась плата (с STM32F103RET6) разводка собственная. Когда человек рисовал схему не развел USB_DISCONNECT (pull-up нет в итоге).

Библиотека (USB-FS-Device) опирается на этот сигнал, сильно не разбирался с функциями библиотеки, но в принципе думаю что зависти без этого сигнала

можно. Но у меня это не получается к сожалению.

 

Это вопрос не программирования, а аппаратуры и спецификации USB: чтобы устройство распозналось (считалось подключенным), необходимо подать на линию D+ USB питание 3V3 через резистор в 1,5К.

Суть сигнала USB_DISCONNECT, который на многих EK и DK и примерах к ним заведен на порт PD2, - управление подключением этого самого резистора, чтобы можно было программно симулировать под- и отсоединение разъема USB.

 

Налепите на плату указанный резистор жестко. Все должно заработать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Начал разбираться, и понял, выше написал. Спасибо огромное.

 

P.S. если у кого есть схемы выложите, чем проще тем лучше.

Изменено пользователем IgorKossak
Бездумное цитирование

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Начал разбираться, и понял, выше написал. Спасибо огромное.

 

P.S. если у кого есть схемы выложите, чем проще тем лучше.

 

А что, с вашей платой схема не поставлялась ? Например:

 

http://www.starterkit.ru/html/index.php?na...=view&id=34

 

А документация у STM - да, барахло. По сравнению с теми же NXP и Atmel - жалкое убожество. И сами АРМы их мне не понравились, и то, что без их библиотек шагу ступить невозможно - тоже. NXP и Atmel гораздо приятнее ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А документация у STM - да, барахло. По сравнению с теми же NXP и Atmel - жалкое убожество. И сами АРМы их мне не понравились, и то, что без их библиотек шагу ступить невозможно - тоже. NXP и Atmel гораздо приятнее ...

Ещё как можно без библиотек, даже не особо напрягаясь.

Мануалы у STM не самые лучшие, но у NXP и ATMEL тоже не сахар, ошибки и просто враньё есть у всех.

В частности, у ATMEL хорошие доки были к AVR, просто замечательные, а вот к АРМам уже похуже, не говоря уже про последние SAM3U :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А что, с вашей платой схема не поставлялась ? Например:

 

http://www.starterkit.ru/html/index.php?na...=view&id=34

 

А документация у STM - да, барахло. По сравнению с теми же NXP и Atmel - жалкое убожество. И сами АРМы их мне не понравились, и то, что без их библиотек шагу ступить невозможно - тоже. NXP и Atmel гораздо приятнее ...

 

Это схема собственной разработки (дали написать прошивку)

 

 

 

Теперь следующая проблема:

допаял схему для USB простенькую (1.5КОм на 3.3, и пару конденсаторов)

Теперь собираю и заливаю в МК (это STM32_USB-FS-Device_Lib_V3\Project\Virtual_COM_Port ) подключая устройство радостно получаю "неизвестное устройство". в итоге можно грешить на PID и VID но вроде как этот пример должен работать. Кароче все упирается в нормальную документацию, которой нет. Хоть список регистров для управления USB где можно взять?

 

Что подскажите, как еще проверить в чем проблема?

Изменено пользователем h0t

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это всего лиш реакция на 1,5 кОм. Сам USB у тебя может вообще не работать. Так что до PID VID еще далеко.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это всего лиш реакция на 1,5 кОм. Сам USB у тебя может вообще не работать. Так что до PID VID еще далеко.

 

Да я понимаю, что это только реакция на резистор, но куда дальше идти?Единственное что сделал залил туда пример, но он что-то не работает. Нужна документация, я ее так и не нашел( Например есть предположение что есть проблема с тактированием, но понять это без описания регистров проблематично. Кто вообще как разрабатывал для STM под USB НЕ под отлпдочные платы? Подскажите. Спасибо.

Изменено пользователем h0t

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да я понимаю, что это только реакция на резистор, но куда дальше идти?Единственное что сделал залил туда пример, но он что-то не работает. Нужна документация, я ее так и не нашел( Например есть предположение что есть проблема с тактированием, но понять это без описания регистров проблематично. Кто вообще как разрабатывал для STM под USB НЕ под отлпдочные платы? Подскажите. Спасибо.

Вряд ли Вам помогут описание регистров USB. Там все гипер наворочино.

Проси у кого нибудь любой примитивный рабочий проект с USB, залейте его и убедись, что железо работает. А потом уже будете с библиотеками ковыряться.

В Keil-е таких куча есть. Конкретно Ваш проект, я когдато пробывал - все работало ( но под Keil-ом).

Изменено пользователем vlad_new

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вряд ли Вам помогут описание регистров USB. Там все гипер наворочино.

Проси у кого нибудь любой примитивный рабочий проект с USB, залейте его и убедись, что железо работает. А потом уже будете с библиотеками ковыряться.

В Keil-е таких куча есть. Конкретно Ваш проект, я когдато пробывал - все работало ( но под Keil-ом).

 

Да нет, конечно помогут. В том то и проблема что пример не работает! и проблема не понятно в чем, подскажите на какой плате вы этот пример запускали мне нужна ее разводка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да нет, конечно помогут. В том то и проблема что пример не работает! и проблема не понятно в чем, подскажите на какой плате вы этот пример запускали мне нужна ее разводка.

Вообще то я уже давно свои платы делаю. Но когда то покупал плату в терреэлектронике и на ней баловался. Называлась она: TE-STM32F103RET6KIT.

Описание регистров USB есть в даташите на STM32F103 на st.com, там же и описание библиотек. Ох и не завидую я Вам если Вы туда полезете. Но дело Ваше.

Есть же куча готовых рабочих примеров, которые чуть подковырять, не в даваясь в физический уровень, и вполне можно использовать в своих целях.

http://www.terraelectronica.ru/catalog_inf...amp;CODE=333824

Там и схема есть.

 

Изменено пользователем vlad_new

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообще то я уже давно свои платы делаю. Но когда то покупал плату в терреэлектронике и на ней баловался. Называлась она: TE-STM32F103RET6KIT.

Описание регистров USB есть в даташите на STM32F103 на st.com, там же и описание библиотек. Ох и не завидую я Вам если Вы туда полезете. Но дело Ваше.

Есть же куча готовых рабочих примеров, которые чуть подковырять, не в даваясь в физический уровень, и вполне можно использовать в своих целях.

http://www.terraelectronica.ru/catalog_inf...amp;CODE=333824

Там и схема есть.

 

Эту плату видел, спасибо. Тут разводка другая у USB. У меня к сожалению нет выбора, так как я не понимаю что подпилить нужно и почему не рпаботает пример. А так как библиотека (стиль написания ее) оставляет желать лучшего нужно понять что сделать для того что-бы хотя бы установить, железо работает, а то я пока не могу установить аппаратная эта проблема или программная. Та документация (PM0056

Programming manual), которую я нашел не содержит ничего по USB.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С железом все относительно просто. Убедитесь, что:

1. Резистор подключен к D+

2. D+ и D- на своих местах

Их достаточно часто путают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Эту плату видел, спасибо. Тут разводка другая у USB. У меня к сожалению нет выбора, так как я не понимаю что подпилить нужно и почему не рпаботает пример. А так как библиотека (стиль написания ее) оставляет желать лучшего нужно понять что сделать для того что-бы хотя бы установить, железо работает, а то я пока не могу установить аппаратная эта проблема или программная. Та документация (PM0056

Programming manual), которую я нашел не содержит ничего по USB.

 

Если Вы качали мануал, к примеру, на STM32F103RD, то Вы не то скачали. У них на сайте там ошибка.

Скачайте на STM32F103RС - там ссылка нормальная. Файл должен называться CD00171190.pdf (RM0008 Reference manual), а не PM0056.

PM0056 - Это ( если я не ошибаюсь ) описание только на ядро, контроллер прерываний и таймер.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если Вы качали мануал, к примеру, на STM32F103RD, то Вы не то скачали. У них на сайте там ошибка.

Скачайте на STM32F103RС - там ссылка нормальная. Файл должен называться CD00171190.pdf (RM0008 Reference manual), а не PM0056.

PM0056 - Это ( если я не ошибаюсь ) описание только на ядро, контроллер прерываний и таймер.

 

Спасибо, нашел.

 

Я думаю что вот в чем проблема: у меня в этой схеме внешний кварц на 10МГц (а библиотека видимо рассчитана на 8МГц).

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

примерах поменять частоту буду при много благодарен!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...