STM32 Bootloader Roger
При использовании микроконтроллера stm32 с Arduino, можно столкнуть с неудобством прошивки:
- Нет Serial/COM/UART
- Для прошивки необходимо замыкать контакты boot
Как можно решить эти неудобства, но при этом получить новые (куда ж без этого)
Берём за основу, что с srm32 в ардуино, мы используем ядро — https://github.com/stm32duino/Arduino_Core_STM32
- Прошиваем https://github.com/rogerclarkmelbourne/STM32duino-bootloader/blob/master/binaries/generic_boot20_pc13.bin.
Я прошивал с помощью ST-Link,
BOOT0-0
BOOT1-0 - После чего прошивать через Ардуино, только с помощью Maple DFU Bootloader 2.0.
Serial включается в Arduino — Инструмены —
U(S)ART support: «Enable (generic «Serial»)» и
USB support (if available): «CDC (generic «Serial supersede U(S)ART»)»
Как и обещал, новые проблемы:
- Если после п.1 прошивать с помощью ST-Link, тогда Maple DFU Bootloader 2.0 перестаёт работать.
- ST-Link после п.1 перестаёт работать, для того чтобы восстановить работу, необходимо с помощью ST-Link Utility прошить готовый бинарник любого скетча:
- Удерживать Reset на плате stm
- Нажать на «Program…» or «Programm & Verify…», отпустить Reset.
- Ну а дальше как обычно
Полезные ссылки:
- https://habr.com/ru/articles/395577/
- https://microsin.net/programming/arm/program-stm32-blue-pill-via-usb.html
- https://electronix.ru/forum/topic/166045-ne-mogu-razobratsya-s-dfu-butloaderom-v-stm32-plata-vidna-na-usb-shine-no-dfu-util-ee-ne-vidit/
- https://www-stm32duino-com.translate.goog/viewtopic.php?t=223&_x_tr_sl=en&_x_tr_tl=ru&_x_tr_hl=ru&_x_tr_pto=wapp
- https://microkontroller.ru/stm32-projects/programmirovanie-stm32-blue-pill-cherez-usb-port-s-pomoshhyu-arduino-ide/
Добавить комментарий