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

 
 
> STM32F401 usb cdc кто нибудь поднимал?, Не работает передача в по usb в комп!
kostyan
сообщение Jan 15 2015, 09:15
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 8-11-05
Пользователь №: 10 577



Народ, кто нибудь поднимал usb cdc именно на STM32F401?

Есть две платы: диско429 и диско401. На диско429 отладил пример из набора STM32_USB-Host-Device_Lib_V2.1.0. Там пример идет для stm32f407, но заработало и для stm32f429 на хайспидовом usb но в режиме фулспида. Со стороны компа - libusb с двумя точками 0x01 и 0x82 для передачи приема данных. Беру ровно тот же код (ну ножки другие только буквально) и пробую запустить его на диско401. Енумерация проходит, работает приём - я принимаю от компа данные (несколько байт), посылаю в ответ посылку (тоже несколько), НО ПРЕРЫВАНИЯ ОТ ПЕРЕДАЧИ НЕ ПРОИСХОДИТ!!! Со стороны компа выхожу из кода чтения данных по таймауту в несколько секунд, а проц долбится в прерывании в коде анализа прерывания DCD_HandleInEP_ISR, где для epnum=2 бит XFRC:Transfer completed interrupt регистра OTG_FS_DIEPINT2 не встает! Хэзэ что думать - в гугле такой проблемы не нашел. HID пример для stm32f401 с эмуляцией мышки работает - так что железо вроде бы рабочее, но мне нужен cdc.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
Golikov A.
сообщение Jan 16 2015, 07:37
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



где то в конце-середине того года была подобная тема, человек бился с неправильной работой прерываний. Но поиск по форуму ее не находит, так как ищет слова больше 3 букв...
Вроде бы там пришли к тому что какая-то ошибка контроллера и на макс скорости не запустить, попробуйте запустить на скорость ниже, имеется ввиду high speed, full speed.

Ну или поищите руками тему, она была больше 2 страниц, с каким то понятным названием...

---update---
ой все наврал... вот темы про которые я говорил... но там изохронные обмены
http://electronix.ru/forum/index.php?showtopic=123718
http://electronix.ru/forum/index.php?showtopic=112562
http://electronix.ru/forum/index.php?showtopic=123341
Go to the top of the page
 
+Quote Post
kostyan
сообщение Jan 16 2015, 08:04
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 8-11-05
Пользователь №: 10 577



Спасибо за поиск, проблема таки решилась! Искал вчера весь день рабочий пример под 401й проц и под конец осенило про стм32куб. Сегодня как раз для диско401 создал проектик цдц, как то запустил его - передача идет! Через USBLyzer обнаружил что конечные точки в проекте, полученном через куб, другие : CDC_IN_EP = 0x81, CDC_OUT_EP = 0x01, CDC_CMD_EP = 0x82.
А у меня были такие: CDC_IN_EP = 0x82, CDC_OUT_EP = 0x01, CDC_CMD_EP = 0x83. Сделал в своем проекте первый вариант, переделал libusb драйвер и заработало!

А то, что точки другие - обнаружил через USBLyzer! Он гадина платный и не ломанный, рега скоро кончится на него. Хоть и оффтоп - посоветуйте народ, пожалуйтса, подобный просмоторщик USB трафика бесплатный?!
Go to the top of the page
 
+Quote Post
andries5
сообщение Jan 16 2015, 10:00
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 56
Регистрация: 15-01-09
Из: Moldova
Пользователь №: 43 421



Попробуйте Simple USB Logger.
___http://www.incentivespro.com/downloads.html
Go to the top of the page
 
+Quote Post
BaN
сообщение Jan 20 2015, 10:01
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 144
Регистрация: 28-08-07
Пользователь №: 30 111



Цитата(kostyan @ Jan 16 2015, 14:04) *
А то, что точки другие - обнаружил через USBLyzer! Он гадина платный и не ломанный, рега скоро кончится на него. Хоть и оффтоп - посоветуйте народ, пожалуйтса, подобный просмоторщик USB трафика бесплатный?!

Могу посоветовать USBPcap+Wireshark:
http://desowin.org/usbpcap/
https://www.wireshark.org/
Go to the top of the page
 
+Quote Post
kostyan
сообщение Jan 21 2015, 05:54
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 8-11-05
Пользователь №: 10 577



Цитата(BaN @ Jan 20 2015, 15:01) *
Могу посоветовать USBPcap+Wireshark:
http://desowin.org/usbpcap/
https://www.wireshark.org/


это только на линухе насколько я понял sad.gif

упд. Неправильно видимо понял - не могу разобраться как запустить собственно. Установил и туплю.

упд2. Нашел инструкцию как пользовать на сайте, слона как водится не заметил, изучаю пробую...

Сообщение отредактировал kostyan - Jan 21 2015, 06:19
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 05:44
Рейтинг@Mail.ru


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