Skip to content

v1.24.0:五技能统一版(12 树/77 节点 · 25 类 148 坑 · 37 个计算器)

Choose a tag to compare

@liujycode liujycode released this 20 Oct 10:20
· 4 commits to main since this release

嵌入式工具箱 v1.24.0:五技能统一版(查/验/修/防/算)

五技能全部入仓并统一版本:寄存器查询 1.11.1、寄存器核验 1.16.2、排障决策树 1.3.0、
外设避坑清单 1.2.0、时序计算器 1.1.0。本版把此前的知识技能全覆盖轮(原 v1.23.0 计划内容)
与时序计算器入库合并发布,并包含一轮全量体检修复。

一、时序计算器 1.1.0 入库(37 个计算器)

  • 覆盖 UART BRR、定时器 PSC/ARR、I2C 上拉/耗时、CAN 位时序、ADC 源阻抗、SPI、Nyquist、
    死区、FPGA(UART/slack/PWM/I2C/消抖/CDC/FIFO)、看门狗、PLL、分压、NTC、RC、晶振 ppm、
    ESP32/RP2040 时钟、PWM 调光、WS2812、舵机、步进、RTC 漂移、USB 48MHz、电池、Modbus、
    Flash 寿命、传感器 LSB。
  • 审查单 R1-R3 修复:
    • I2C Rp(max):std/fast/Fm+ 统一 tr/(0.8473×Cb);Hs-mode 是电流源上拉,明确报
      E_UNSUPPORTED,不再套无源公式。
    • CAN 位时序:新增 --family {bxcan,fdcan};bxCAN 每位最多 25 TQ(TSEG1≤16/TSEG2≤8),
      超出直接报错,避免 F1/F4 上"算得出配不出"的假 PASS。
    • ADC 源阻抗:改用 datasheet 的 ts/(Cs×ln(2^(N+2)))−Radc 口径(整定 1/4 LSB),
      支持 --radc 扣减并注明未扣时的偏差。
  • 其余修正:USB 48MHz 分频链、sensor-lsb 双极性默认、RTC 负 ppm、分压电流口径、
    RP2040 UART 16+6 位分频、WS2812 低电平可选校验、Flash 记录页模型。

二、排障决策树 1.3.0:12 棵 / 77 节点

  • 新增 FPGA/RTL 树(8 节点):综合后行为异常、参数漏透传(silent default)、
    复位循环杀 RAM 推断、跨时钟域、I2C clock stretching、非阻塞赋值旧值、
    实测数值 vs 设计缺陷、回归归因。
  • 保留并合入既有 11 棵:HardFault / 通信 / DMA / RTOS / 启动 / 低功耗 / CAN / USB /
    Flash / RTC / 显示与触摸;节点带 see 树间跳转。
  • 节点 refs 只引公开文档名(IEEE Verilog LRM、Gowin Synthesis/Timing 指南、
    Cummings CDC/FIFO 论文等),不编造章节页码。

三、外设避坑清单 1.2.0:25 类 / 148 坑

  • 13 个新类:DMA / USB / Flash / RTC / DAC / CRC / MPU / DBG / 以太网 / SD 卡 /
    C 语言与编译器 / 链接脚本 / Modbus / 传感器总线,另补电机外设配置坑。
  • refs 148/148:每条都有文档级依据;next 字段把时序/阈值类问题引导到
    embedded-timing-calc 的可执行命令。
  • 修正:USB 设备描述符长度口径、MPU 背景区域语义(PRIVDEFENA)。

四、寄存器查询 / 核验修复

  • lookup 1.11.1:SVD 寄存器包含关系判定、lint 重叠区间扫描、枚举
    enumeratedValues usage 读/写分组(缓存格式升 2,旧缓存自动失效)、字段级
    readAction 提示、配置 UTF-8 BOM 兼容、ETK_SVD_DIR 上限与截断告警。
  • verify 1.16.2:有"报"结果时退出码为 1(此前恒 0,CI 无法拦截);E05 显式枚举
    优先于 isDefault 默认值;E09/E11 补丁模式按全文件判关系、只归属补丁行;
    时钟使能必须早于首次外设访问。

五、检索与评测

  • 修正评测量具:此前评测未按分数排序就比对,排名指标失真;统一排序后重新定基线。
  • 检索评测 241/241 = 100%(树场景 + 坑场景),p@1 96.7%,MRR 97.9%。
  • 475 项测试全绿;check_repo.py、knowledge_check.py(schema + 同源)、
    五技能 demo 探针全部通过。
  • 触发评测:触发率强依赖路由模型。v1.2.0 轮(deepseek_for_coding)决策树 52.5%、
    避坑 14.3%、反例零误触发;v1.3.0 FPGA 抽测(deepseek-v4-flash,10 例)正例 1/7、
    反例 3/3 未触发(n03 超时按未触发计)。强编码模型偏向直接作答,详见
    benchmarks/trigger-results-trees.md。

六、工程

  • 上架打包器新增脏树拒绝:五个技能目录只要有一个未提交就拒绝出包。
  • 五技能版本、plugin 1.24.0、README、references 与评测记录同步。
  • timing-calc 输出统一 UTF-8,修复 GBK 控制台上 µ 字符导致的崩溃。

七、安装

  • Claude Code:/plugin marketplace add liujycode/embedded-toolkit 后
    /plugin install embedded-toolkit@embedded-toolkit
  • 其他 Agent:npx skills add liujycode/embedded-toolkit