名称: jtag-swd-调试 描述: 与JTAG/SWD调试探针深度集成,用于硬件级调试和闪存编程 类别: 硬件调试 允许使用的工具:
- Bash
- 读取
- 写入
- 编辑
- Glob
- Grep
JTAG/SWD 调试技能
概述
此技能提供与JTAG/SWD调试探针的深度集成,用于硬件级调试、闪存编程和实时固件分析。它通过行业标准的调试接口实现直接的硬件交互。
能力
调试探针操作
- 执行OpenOCD、J-Link和ST-LINK命令
- 配置调试探针连接和接口
- 管理多种调试探针类型和适配器
- 处理传输协议(JTAG、SWD、cJTAG)
内存操作
- 读取/写入内存映射寄存器
- 直接内存检查和修改
- 实时内存监视和修改
- 闪存编程和验证
- 内存转储和分析
调试功能
- 设置硬件断点和监视点
- 核心状态检查(寄存器、堆栈、程序计数器)
- 单步执行控制
- 故障处理程序分析和调试
- 调用堆栈展开
跟踪和输出
- 半主机输入/输出支持
- SWO跟踪输出配置
- ITM激励端口配置
- 实时跟踪缓冲区分析
目标流程
硬件启动.js- 初始板卡验证和调试设置引导加载程序实现.js- 引导加载程序调试和闪存操作设备驱动程序开发.js- 具有硬件访问权限的驱动程序调试现场诊断.js- 现场调试和分析
依赖项
- OpenOCD(开源片上调试器)
- J-Link软件(Segger)
- ST-LINK实用程序(STMicroelectronics)
- 调试探针硬件(J-Link、ST-LINK、CMSIS-DAP)
使用场景
当任务需要以下操作时,会调用此技能:
- 通过JTAG/SWD进行直接硬件调试
- 闪存编程操作
- 低级寄存器和内存检查
- 故障分析和崩溃调试
- 硬件断点管理
配置
调试探针:
类型: jlink | stlink | openocd | cmsis-dap
接口: swd | jtag
速度: 4000 # 千赫兹
目标: cortex-m4 | cortex-m7 | 等
示例操作
闪存编程
openocd -f interface/stlink.cfg -f target/stm32f4x.cfg \
-c "program firmware.elf verify reset exit"
内存读取
JLinkExe -device STM32F407VG -if SWD -speed 4000 \
-CommanderScript read_memory.jlink
寄存器检查
openocd -f board/stm32f4discovery.cfg \
-c "init; halt; reg; resume; exit"