Repository navigation
嵌入式工具箱 v1.19.0:细节深化 II(verify v1.14.0 / lookup v1.10.0)
嵌入式工具箱 v1.19.0:细节深化 II(verify v1.14.0 / lookup v1.10.0)
继续补细节缺口:这轮把 E12(只写寄存器读改写)的形态补全,并把 SVD 的"读语义"用起来。
一、verify v1.14.0:E12 补齐读改写形态
MODIFY_REG:先读回、改掩码位、再写回——同样是读改写,此前 op(modify_reg)不在检查
列表里,只写寄存器上的MODIFY_REG会被漏报;现在会报。REG_CLR_FIELD:op 名(clear_field)与检查列表里的clr_field拼写不一致,此前不报;
现在与REG_SET_FIELD一起覆盖(地址可解析时)。- 报告里的形态名显示为规范宏名:
对只写寄存器 PORTX.BSRR 做读改写(MODIFY_REG)…。 - 文件类型收集补
.hxx(目录模式与--headers头文件扫描)。
二、lookup v1.10.0:读语义提示与宏生成细节
readAction=modifyExternal(读后由硬件修改):decode --write/set给出读改写提示
——"读改写(reg |= x)会把读取时的外部变化一并写回,轮询与读改写需谨慎"。覆盖
Silicon Labs / XMC / nRF 等带该语义的 SVD(此前只提示modifiedWriteValues一类)。macros默认项说明:isDefault枚举默认项输出为"默认项 X:其余取值(不生成宏)",
不再误写成"含任意位(模式 xx)"的位模式注释。
三、实测
- 九生态语料复测零回归(ESP-IDF 224/0/34/190、TI 363/0/300/63、libopencm3 366/3/287/76、
AVR 33/0/2/31、SAMD 49/0/22/27、Renesas 36/0/26/10、Silabs 309/0/218/91、NXP 3/0/1/2); - 397 项测试全过(新增 MODIFY_REG/REG_CLR_FIELD 的 E12 用例、读语义提示用例、
.hxx收集用例、
默认项宏注释用例);召回 229/229 保持;正样本 55 文件 0 误报。
安装(不变)
- Claude Code:
/plugin marketplace add liujycode/embedded-toolkit后/plugin install embedded-toolkit@embedded-toolkit - 其他 Agent:
npx skills add liujycode/embedded-toolkit