用途:面向嵌入式目标设备的探针调试,规划并执行 GDB、SWD/JTAG 以及 OpenOCD 或厂商探针的调试流程。适合需要挂载探针、设置断点、复位/停机、查看寄存器与栈、排查内存覆写等场景。
主要能力与做法:先读取共享的嵌入式契约,将源码/构建、设备与物理证据分开记录。确认探针会话边界:MCU/内核、板卡与探针版本、目标参考电压、SWD/JTAG 接线、探针序列号、服务器/运行器版本以及确切的 ELF/构建。先从离线 ELF 检查开始。查看现有启动配置或运行器,而不是猜测 OpenOCD 板级文件。将调试服务器绑定到回环并显式选择探针,避免挂载到错误板卡。使用具名假设检查:PC/回溯与线程、故障处反汇编、寄存器与栈边界、用于疑似覆写的观察点。
使用方式与限制:target remote/attach、reset、断点和寄存器写入可能使目标停机或改变状态;在会话前应与目标所有者确认停止/禁用执行器。调试器连接并非只读。优化代码可能内联或消除变量;在尝试单独调试构建前先保留失败二进制。不要假设单步执行能复现竞态时序。load、monitor program、erase 和 unprotect 属于独立写操作,绝不应包含在仅挂载的配方中。对于锁定目标,需区分读出保护、电气/复位故障与错误的服务器配置;解除保护可能整片擦除,应停止而非默默推荐。最后返回所选探针/ELF/服务器、实际运行的命令及其效果。
平台覆盖仅代表确切测试过的组合;源码中的过程并不代表每个目标都已测试。