eddy_em: (Костерок)
[personal profile] eddy_em
Сколько уже собирался, а только сейчас руки дошли проверить, как работает загрузчик STM32.

На макетке STM32P103 (с 64-ножечным STM32F103RBT6) от Olimex впаял резистор на 15кОм между перемычкой B0_L (подтяжка к земле для нормальной загрузки). Правда, резисторы SMD'шные у меня дома, пришлось паять обычный на 1/8Вт (уродство, конечно, но очень хотелось). Подключил четырьмя проводками (земля, +3.3В, Rx, Tx) к баксовому переходничку USB<->TTL (я их несколько штук на ибее купил) и воткнул в USB. Нажал кнопочку RESET, проводом закоротил B0_H и отпустил RESET. Отсутствие свечения тестового светодиода подсказало, что выполнение программки, которая там была прошита, не активировано.
Еще давно отсюда я скачал утилиту stm32flash, позволяющую прошивать эти МК через загрузчик. И даже собрал для арча бинарный пакет.

На форумах пишут, что UART STM32 больше 115200 бит/с не тянет, поэтому запускаем так:
stm32flash -b115200 /dev/ttyUSB0           
stm32flash - http://stm32flash.googlecode.com/

Serial Config: 115200 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (sector size: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB

Resetting device... done.

Ура! Работает!
Кстати, последняя строчка не очень-то нужна иногда. Можно на досуге внести патчик — добавить еще ключ, по которому перезагрузка по выходу не будет произодиться (а то неудобно проводком замыкать). На плате систему управления ИК-спектрометром надо будет обязательно кнопочку воткнуть!

Для проверки записал в МК то же самое, что там уже было:
stm32flash -b115200 /dev/ttyUSB0 -w testproject.bin 
stm32flash - http://stm32flash.googlecode.com/

Using Parser : Raw BINARY
Serial Config: 115200 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (sector size: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB

Wrote address 0x08003754 (100.00%) Done.

Resetting device... done.


Вполне быстро. Я доволен. Можно забыть об огороженном st-link'е с JTAG!

P.S. Вот же рукожопие! Хотел сейчас проверить работоспособность "копеечного" приемника-передатчика на 315МГц и спалил из-за переплюсовки приемник ☹. Хорошо хоть два купил, в понедельник возьму из дома второй.

May 2025

S M T W T F S
    123
45678910
11121314151617
1819202122 2324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 1st, 2025 09:51 am
Powered by Dreamwidth Studios