如何使用OpenOCD和GDB调试程序

1. 安装OpenOCD

    可以使用调试器厂商提供的版本或者OpenOCD官网下载源码并根据自己需要编译生成并安装,安装成功后可通过openocd  -v查看版本信息。   

2. 硬件链接

    将调试器(如 J-Link、ST-Link、FTDI 等)连接到目标开发板的调试接口(通常是 JTAG 或 SWD 接口),并确保目标设备和主机之间的物理连接已经准备就绪。

3. 编写 OpenOCD 配置文件

    OpenOCD 需要一个配置文件来指定所使用的调试接口、目标设备及调试参数。可以使用官方的配置文件(xxx.cfg),也可以自己编写。

示例 OpenOCD 配置文件(仅供参考):

# 选择接口(JTAG、SWD、FTDI等)

transport select jtag

# 速度

adapter speed    1000

# 允许 GDB 进行调试连接

gdb_port 3333

......

4. 启动 OpenOCD

    在命令行中启动OpenOCD,并输入命令:openocd -f openocd.cfg,OpenOCD 会启动并在端口 3333 上等待 GDB 的连接。

5. 启动 GDB

    gdb your_program.elf,注意gdb必须是对应你程序目标架构的GDB版本,your_program.elf是你自己的程序。

6. 连接GDB到 OpenOCD

    (gdb) target extended-remote localhost:3333。

7. 为了确保设备处于已知状态,重置并停止设备

    (gdb) monitor reset halt

    (gdb) monitor reset init

8. 加载程序到目标设备并调试

    (gdb) load,然后就可以基于常用GDB 命令进行调试了(常用GDB命令记录 - 简书 (jianshu.com))。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容