我可以将变量值记录到gdb中没有断点的文件中吗?

时间:2012-06-15 04:35:46

标签: c gdb breakpoints

是否可以在不使用gdb中的断点的情况下将ex:数组值记录到日志文件中?

我用过这个:

set logging on some_file
b func
command 1
p print_clock_cycles    
c
end

目标:通过gdb将时钟周期值记录到文件中。日志记录可以是无限的,因此我无法使用现有的内存。

我的问题:如果我通过读取寄存器打印时钟周期,与没有断点相比,使用上面的脚本打印时值不同(通过其他一些我不想使用的方法读取约束)。我假设当我们有一个影响时钟周期的断点时,gdb会花更多时间进行打印。我没有附加ex jtag的任何其他调试器。

我可以通过其他方式记录值吗?

由于

1 个答案:

答案 0 :(得分:0)

您有可用的串口吗?当我在嵌入式平台上开发时,这是保存调试信息的好方法。

我编写了管理串口的功能。我的“print”函数将字符串数据排入缓冲区,串行ISR将数据从缓冲区中排出。只要串口可以足够快地耗尽缓冲区,它就永远不会填满。