我正在尝试使用在目标 MCU 上调试 ARM 闪存程序gdb
我正在使用jlinkgdbserver
. 我有一个准备调试的精灵。
第一次,我可以通过以下方式进行调试
> arm-none-eabi-gdb flash_program.elf
(gdb)> target remote localhost:2331 # connect to gdb server on target
(gdb)> load # since it is a flash program, jlink will flash the program
# target is reset to elf entry point
(gdb)> .... (debugging begins)
但是,当调试到某个地方时,我想再次从入口点调试,我想出的方法是再次闪烁
(gdb)> Ctrl+D # disconnect the gdbserver
> arm-none-eabi-gdb flash_program.elf
(gdb)> target remote localhost:2331
(gdb)> load
(gdb)> .... (debugging from start again)
所以这似乎有点多余,而且它一次又一次地擦除和编程相同的闪存区域,我担心我最终会通过调试损坏存储。
flash 程序已经烧录到介质中,我只是想让目标自行重置并再次从入口点运行。但我尝试了monitor reset
和run
. 但是目标M7都不能从头再来。
还有其他我可以尝试的 gdb 命令吗?