LINUX.ORG.RU
ФорумTalks

STM32 и USB

 , , ,


0

1

Балуюсь тут с китайским STM32F103C8T6

http://g01.a.alicdn.com/kf/HTB1pe5ILXXXXXXcaXXXq6xXFXXXb/220352482/HTB1pe5ILX...

Не пойму, USB на нём разведён, системой видится. Но не определяется как опознанное устройство. Гугление на тему программирование обычно приводит только решения с подключением внешнего USB-UART. Понятно, что не проблема, но зачем тогда этому модулю полная разводка USB? Ведь не для одного же питания? :)

★★★★★

USB на нём разведён, системой видится. Но не определяется как опознанное устройство.

С девайсом не работал, потому пара вопросов:

1) ты его хочешь использовать как usb-host, подключая к нему что-то, или как usb-устройство, подключая его к компьютеру

2) если второе, то lsusb -v в студию

3) подозреваю, что usb на устройстве еще сконфигурировать надо

cvs-255 ★★★★★ ()
Последнее исправление: cvs-255 (всего исправлений: 1)

Так тебе же надо написать что-нибудь чтобы у тебя железка по этому usb отвечала. А что ты хочешь то вообще?

matrixd ()
Ответ на: комментарий от matrixd

А что ты хочешь то вообще?

Ну, типа, я думал, что как с другими dev-board, его можно прямо «из коробки» по USB прошивать. Как всякие NodeMCU/ATtiny86/Arduino/etc.

Т.е. USB тут только для подключения внешней периферии? А почему тогда у него формат для втыкания внешнего хоста (обычный micro-USB), а не сам он хостового формата (не помню, как формально этот вид USB-разъёма зовётся)? Типа, периферию через OTG-кабель втыкать?

KRoN73 ★★★★★ ()
Ответ на: комментарий от KRoN73

Т.е. USB тут только для подключения внешней периферии?

Насколько я знаю, как запрограммируешь так и будет

Ну, типа, я думал, что как с другими dev-board, его можно прямо «из коробки» по USB прошивать. Как всякие NodeMCU/ATtiny86/Arduino/etc.

Там стоит usb->uart на плате. Т.е. их usb только в качестве uart работать умеет. Здесь же, как я понял, выведен usb самого контроллера. И в качестве чего ты контроллер запрограммируешь, в качестве того он и будет работать. Можешь в качестве uart, а можешь чтобы он изображал мышь или usb-storage, или принтер, или что еще тебе придумается. Но это все надо запрограммировать

cvs-255 ★★★★★ ()
Последнее исправление: cvs-255 (всего исправлений: 2)
Ответ на: комментарий от KRoN73

Ну, типа, я думал, что как с другими dev-board, его можно прямо «из коробки» по USB прошивать. Как всякие NodeMCU/ATtiny86/Arduino/etc.

Т.е. USB тут только для подключения внешней периферии? А почему тогда у него формат для втыкания внешнего хоста (обычный micro-USB), а не сам он хостового формата (не помню, как формально этот вид USB-разъёма зовётся)? Типа, периферию через OTG-кабель втыкать?

Суде по плате(видел только сверху) у тебя там нету st-link'а или какого-нибудь иного программатора.

У тебя miniusb.

Глянь схему этого поделья.

И нет, usb в stm32 ты можешь и для втыкание в пека использовать.

matrixd ()
Ответ на: комментарий от matrixd

И да, тебе нужно что-нибудь написать чтобы оно хоть как-то работало. Реализовать Usb-cdc например.

matrixd ()

Использую такой, реализовал USB HID, как на Chibi/RTOS, Так и на libopencm3. Могу поделиться рабочим кодом на libopencm3 вечером.

Pentium02 ★★ ()
Ответ на: комментарий от Pentium02

Могу дать либо код не доделанного до конца бутлоадера, либо реализацию usb джойстика, либо и то и другое, чиркани на почту вечером admin(at)pentium02.org, скину, если сам не разберёшься.

https://pp.vk.me/c628625/v628625389/2e5cf/wgRql08iTtc.jpg

https://pp.vk.me/c628625/v628625013/3207f/HxFVU-t4vxo.jpg

https://pp.vk.me/c628625/v628625389/3090b/UWrFXDEFNOI.jpg

Pentium02 ★★ ()
Последнее исправление: Pentium02 (всего исправлений: 2)

А прошивается он через SWD, для этого надо иметь stlink, он есть, например, на отладочных платах от самой st - discovery. На хабре вроде была статья, как превратить такую плату в stlink

Pentium02 ★★ ()

Чтобы оно заработало, тебе надо зашить туда что-то, что будет с USB работать. Либо бутлоадырь поверх усб, либо свою апликуху. А UART - это для ROM бутлоадера, который ты не похеришь, как ни старайся.

ncrmnt ★★★★★ ()
Ответ на: комментарий от Pentium02

Не только. Есть еще UART и stm32flash. Читай внимательно шит-о-дат.

Бонусом - вот мой форк лифлабовского бутлоадера: https://github.com/nekromant/maple-bootloader

Не тыкал его уже несколько лет, правда, но ломаться там нечему.

ncrmnt ★★★★★ ()
Последнее исправление: ncrmnt (всего исправлений: 1)

Возможно, перемычки попереставлять нужно, чтобы активировать усб-бутлоадер. Знаю, что STM32 имеют встроенный UART-bootloader, а вот с USB будет только если китайцы его туда вшили. Вообще шьется любым переходником на UART с уровнями 3.3в.

Rupricht ★★ ()
Ответ на: комментарий от ncrmnt

Про UART я чего-то и забыл, всегда через SWD шил, т.к. начал с ними работать с отладочной платы от ST. Таки да, по UART'у тоже можно шить.

Pentium02 ★★ ()
Ответ на: комментарий от Rupricht

а вот с USB будет только если китайцы его туда вшили

и под который придется адаптировать свою прошивку

cvs-255 ★★★★★ ()
Ответ на: комментарий от KRoN73

дык, прошивку кто-то должен прошивать. контроллер USB этого явно не умеет.

Iron_Bug ★★★★ ()

Снова взялся за STM32. Кроме прочего, прошил, наконец, USB-загрузчик. И теперь моя STM32 шьётся по USB, USB-Serial можно убрать в коробочку :) Рецепт есть тут: https://geektimes.ru/post/277928/

KRoN73 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.