利用GDB进行在线调试

HW准备

SW准备

安装新版的JLink:
https://www.segger.com/downloads/jlink/JLink_Windows.exe

开始Debug

用cmd执行JLinkGDBServer.exe,需要带上和你的环境相匹配的参数,如:JLinkGDBServer.exe -select USB -device Cortex-M4 -if swd -scriptfile AP2_KM4.JLinkScript -port 2335。这时就会有弹窗显示GDB server连线状态。

用cmd “arm-none-eabi-gdb -x xxx.txt"调用GDB线程,会弹出交互界面,用于输入GDB命令和返回结果。

GDB命令

 

monitor reset 0                    //reset program

file xxx.axf                           //载入符号,代码等信息

set *0xxxxx_xxxx=0xxxxx_xxxx                 //设定某地址的值

x *0xxxxx_xxxx                   //读取某地址的值

break *0xxxxx_xxxx           //在某地址设置断点

c                                        //continue

si                                       //执行一行汇编代码而且进入函数内部

s                                        //执行一行源代码而且进入函数内部

n                                       //执行一行源代码但不进入函数内部

ni                                      //执行一行汇编代码但不进入函数内部

layout                               //用于分割窗口,可以一边查看代码,一边测试:
layout src                         //显示源代码窗口
layout asm                       //显示反汇编窗口
layout regs                       //显示源代码/反汇编和CPU寄存器窗口
layout split                       //显示源代码和反汇编窗口

其它可以参考reference.

Appendix

readelf可以读取.o,.axf等文件中的段信息。具体用法可以参考:https://blog.youkuaiyun.com/yfldyxl/article/details/81566279

Reference

https://www.it610.com/article/1865433.htm

https://www.cnblogs.com/zhangyachen/p/9227037.html

https://blog.youkuaiyun.com/ylcangel/article/details/87929202

https://blog.youkuaiyun.com/yfldyxl/article/details/81566279

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值