我用以下 OpenOCD 命令闪现了我的蓝色药丸板,然后我的 OpenOCD 不再连接到我的板。我的 boot0 和 boot1 引脚接地。
flash write_image 擦除 blinkled.hex
我忘了在命令末尾指定典型的初始化内存映射 0x08000000。刚刚发生了什么?
由于这个错误,我的 OpenOCD 只有在 boot0 为 1 且 boot1 为 0 时才与板子连接。有人知道如何解决这个问题吗?顺便说一句,我正在使用 Linux。
我昨天整理了一个基于 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