上次搭建了远程调试固件的[OpenOCD调试服务器](/2025/07/21/20250721-OpenOCD+树莓派Zero2W 搭建无线远程嵌入式GDB服务器/),现在使用上次搭建的环境进行远程调试固件。
目的是脱离官方提供的客制化IDE,使用通用的GNU工具链及其配套工具进行调试,避免开发各种不同软件的时候到处切换IDE。
硬件连接示意图
编写构建、烧录的脚本
编写Vscode cppdbg配置
启动构建并烧录程序到板卡
调试
GDB命令测试
问题
1、异地编译时源文件映射问题(插入断点和源文件跳转),特别是windows下编译的固件的DEBUG信息中的路径是使用'\',但是Linux的路径是'/'导致的路径匹配问题
2、不能直接使用gdb,要使用gdb-multiarch,否则插入断点会报错"only breakpoints of two bytes length supported"
优化
1、实现外设寄存器可视化
2、实现内存可视化
3、RTOS多线程调试