Инструменты пользователя

Инструменты сайта


программирование_stm32

CortexMO. Имеет встроенный DFU и CAN но емкость Flash vs размер не очень, относительно 103 серии https://www.st.com/en/microcontrollers-microprocessors/stm32f0x2.html

Тулы STM32 http://www.stm32res.ru/ru/newsarhivprog

Платы для ArduinoIDE с разных ресурсов: https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json http://dan.drown.org/stm32duino/package_STM32duino_index.json

Драйвера MappleDFU (под Win10 не работают) https://github.com/rogerclarkmelbourne/Arduino_STM32

https://microkontroller.ru/stm32-projects/programmirovanie-stm32-blue-pill-cherez-usb-port-s-pomoshhyu-arduino-ide/

http://wiki.amperka.ru/js:ide:dfu-firmware#%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B4%D1%80%D0%B0%D0%B9%D0%B2%D0%B5%D1%80%D0%B0_%D0%B4%D0%BB%D1%8F_stm32_%D0%B2_dfu-%D1%80%D0%B5%D0%B6%D0%B8%D0%BC%D0%B5

https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=166045

Теперь микроконтроллер готов ппрошиваться через USB загрузчик. Но ведь еще нужно саму прошивку подправить. А сделать нужно 2 вещи:

Указать линкеру стартовый адрес. В CooCox это делается в настройках проекта, вкладка Link, раздел Memory Areas, Адрес IROM1 Start Address. Бутлоадер занимает первые 8 килобайт, значит стартовый адрес прошивки будет 0x0800000 + 0x2000 = 0x08002000. Поле Size, наверное, тоже стоит уменьшить на 8к.

Где нибудь вначале программы перед инициализацией периферии сделать вызов

NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x2000);

программирование_stm32.txt · Последнее изменение: 2023/04/15 13:31 — admin