Has*_*san 4 c embedded gdb msp430 gdbserver
我正在使用 GDB 调试我的 msp430。我连接目标,然后加载程序的二进制文件,然后“继续”。
我的程序运行良好,但我想实时查看变量的某些值。实际上我想检查我的代码开始和代码结束的时间戳,这会给我总持续时间。
由于我对 GDB 完全陌生,因此目前我已将此行放在我的代码中
printf("Hello World\n");
Run Code Online (Sandbox Code Playgroud)
然而,没有打印任何内容,但我的代码工作正常,实际上是 LED 闪烁。
请指导我如何在调试模式下查看 GDB 中的变量值。
谢谢
小智 5
要在 gdb 中打印变量,您可以使用以下print命令
(gdb) print counter
Run Code Online (Sandbox Code Playgroud)
您可以在第 10 行设置断点break 10。然后附加一系列要在每次程序在断点 1 处停止时运行的命令commands 1。一个例子如下:
(gdb) print counter
Run Code Online (Sandbox Code Playgroud)
所以这将在第 10 行中断,打印计数器的值,然后继续程序。
对于时间戳,您可能想要做的是设置两个断点,一个在代码开头,一个在代码末尾。让每个断点记录时间,例如通过调用适当的函数。您可以使用该功能设置断点来执行操作commands。
但是,如果这是您想要经常执行的操作,您可能会考虑仅向程序中添加代码来执行此操作。
为了在远程调试时实时(-ish)访问变量,您可能对 gdb“跟踪点”功能感兴趣。目前此功能仅在远程调试时有效,并且它依赖于具有所需功能的远程调试服务器。跟踪点允许您在选定的点记录一些选定的变量,然后稍后检查它们。录制是以相当最小的开销完成的。
| 归档时间: |
|
| 查看次数: |
5549 次 |
| 最近记录: |