Мигает STM32f103c8t6 на неправильном адресе карты памяти

Я высветил свою синюю таблетку с помощью следующей команды OpenOCD, и тогда мой OpenOCD больше не подключается к моей плате. Мои контакты boot0 и boot1 были заземлены.

flash write_image стереть blinkled.hex

Я забыл указать типичную карту памяти init 0x08000000 в конце команды. Что только что произошло?

После этой ошибки мой OpenOCD подключается к плате только тогда, когда boot0 равен 1, а boot1 равен 0. Кто-нибудь знает, как решить проблему? Кстати, я использую Linux.

0 ответов

Вчера я собрал проект сборки на основе CMake. В CMakeLists есть команды OpenOCD для прошивки и отладки.

А именно

Мигает:

openocd  -c 'source [find interface/stlink-v2.cfg]' -c 'transport select hla_swd' -c 'source [find target/stm32f1x.cfg]' -c 'program ${PROJECT_ELF_FILE} verify reset exit'

где ${PROJECT_ELF_FILE} - ваш эльфийский файл

Отладка:

Смотрите здесь и здесь

Чтобы узнать больше о специфике перепрошивки платы, я бы посмотрел на stm32f1x.cfg где приведены подробные сведения о цели, например

flash bank $_FLASHNAME stm32f1x 0x08000000 0 0 0 $_TARGETNAME
Другие вопросы по тегам