executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
re-hardware-io硬件接口:JTAG/UART/flash 读取。 触发词:JTAG、UART、串口、flash芯片、硬件提取、逻辑分析仪
Independent GitHub snapshot · Automated classification · Original documentation governs
所有工具先验证再使用。硬件操作风险高:先万用表测电平、共地、核对丝印再上电(见坑 3/4)。遵循 [[re-analyze/platform-tips]] 先给最轻可行方案:软件手段(文件→解包→仿真)耗尽后再上硬件。
apt install openocd / dnf install openocd / pacman -S openocdbrew install openocdchoco install openocd(或官方 Windows 构建)openocd --versionapt install picocom(或 apt install minicom)/ dnf install picocom / pacman -S picocombrew install picocomchoco install putty(PuTTY 支持串口)或 WSL 内 Linux 版picocom --versionapt install flashrom / dnf install flashrom / pacman -S flashrombrew install flashromflashrom -p ch341a_spi)flashrom --versionapt install sigrok-cli pulseview / dnf install sigrok-cli pulseview / pacman -S sigrok-cli pulseviewbrew install sigrok-cli pulseviewsigrok-cli --version / pulseview --versiongit clone https://github.com/grandideastudio/JTAGulator(含固件与文档);需自行购买/打样 JTAGulator 板help 显示命令清单按顺序执行,每步记下结果。
picocom -b 115200 /dev/ttyUSB0 # 先试 115200
# 乱码 → Ctrl+A Ctrl+X 退出,换 9600 / 57600 / 38400 / 19200 / 230400
# 或 minicom -D /dev/ttyUSB0
openocd -f interface/stlink.cfg -f target/stm32f1x.cfg # ST-Link + SWD 示例
# 其他适配器在 /usr/share/openocd/scripts/interface/ 下选对应 cfg
halt 暂停、读寄存器、dump flash(flash read_bank 0 dump.bin)openocd -f interface/stlink.cfg -f target/stm32f1x.cfg -c "init; halt; flash read_bank 0 dump.bin; exit"# 板载 SPI flash(linux_spi 需内核 spidev 支持):
flashrom -p linux_spi:dev=/dev/spidev0.0 -r backup.bin
# 离线读取(ch341a 编程器 + SOIC8 夹子,先断电):
flashrom -p ch341a_spi -r backup.bin
picocom 输出 tee log.txt,或 minicom 捕获)stm32f1x unlock 类解锁序列,或放弃 JTAG 改走 UART + flash 直读(步骤 4)--noprereq 跳过环境检查;License 校验核心在 issa.dll 导出函数中(三个校验函数),patch 后替换即可;DCI 配置按平台选型(如 KBL=Kaby Lake、SPT=200 系主板、DBC=Debug Class 线缆),CLI 调试用 DAL 目录的 PythonConsole.cmd(Python 2.7 环境,itp.cores/itp.halt() 等命令);ME 端需 UTOK 解锁才响应调试命令(见 [[re-fw-extract]])