xtensa-esp-elf-gdb build/blink.elf -x gdninit
可以看到在
gdbinit文件中设置在app_main处的硬件断点已经起了作用。
此处打印出了断点处的代码和断点信息。
list简化命令:
l
break N简化命令:
b N

打印出代码,在 99 行处添加断点。
info break N简化命令:
info b N

断点信息:
Num:当前断点的序列号。Type:断点类型。Disp:触发断点之后,断点是否继续保持。Enb:Enable / Disable,断点 有效 / 无效。Address:断点地址。What:断点的详细信息。info命令还可以看到断点被触发了多少次
这里可以看到断点目前为止一共被触发了 6 次。
continue简化命令:
c
继续运行。

代码的运行停止在了99 行的 blink_led()处。
disable Ndisable加断点序列号可以不启用某个断点。
可以看到此处断点已不再启用。
此时继续程序运行,可以看到 LED 正常闪烁。
此时可以用
Ctrl-c中断代码运行,调试程序会停止在任意代码处。
enable Ndelete N简化命令:
d N
break filename:N简化命令:
b fiilename:N
例如break blink_example_main.c:99。
即在此文件 99 行 打断点。
break func简化命令:
b func

用函数名来断点时,断点会停留在函数的第一行。
tbreak N/func简化命令:
tb N/func