Files
wangfq 694c86ba48 feat(vd-analysis): 车检器分析仓库初始化 + PD132L/PD132T 分析
- README: 仓库说明 + 型号索引 + 新增型号流程
- docs/methodology.md: 参考代码分析方法论模板 (10 节)
- docs/cross-model-comparison.md: PD132L vs PD132T 对比总表
- models/PD132L/analysis.md: STM8S003F3 V1.09 完整分析
- models/PD132T/analysis.md: MA801AS V3.01 完整分析 (L 的 8051 移植版)

核心结论: 两型号检测算法逐行对应 (32768 基数/79·64 IIR/100 基线/
{300,60,32,21} 灵敏度表), 差异在平台(PCA vs TIM1)/Xn窗口(1.27×)/
拨码编码(组合位 vs 直接)/看门狗(WDTCR vs IWDG+WWDG)
2026-08-27 17:55:28 +08:00

3.4 KiB
Raw Permalink Blame History

车检器参考代码分析方法论

拿到一份新车型参考代码时的标准拆解流程。按此模板逐节分析,保证各型号文档结构一致、可横向对比。

0. 平台识别(先做,决定后续所有数值解读)

检查项 方法
MCU 型号 头文件/工程名(如 iostm8s003f3.hREG_MA801.H
工具链 工程文件类型:.ewp=IAR、.uvproj=Keil、.uvprojx=Keil5、.mpy=MounRiver 等
架构 8051.A51 启动)/ STM8 / Cortex-M / RISC-V
主频/时钟 晶振配置代码(CLK_SWR/OSCCON 等)、PLL 设置
代码规模 核心文件行数、有无 UART/协议

1. 硬件资源

  • 引脚分配:线圈捕获脚、继电器、LED、拨码、通信口
  • 线圈调频:电容档(FLEVEL 引脚、档位数、电容值——以实测反推为准,代码注释可能过时
  • 看门狗:类型(IWDG/WWDG/WDTCR)、超时时间、喂狗位置

2. 频率测量(核心第一步)

检查项 关注点
捕获外设 TIM 输入捕获 / PCA / 门控计数 / 外部中断计时
捕获边沿 上升/下降/双边沿,周期法还是频率法
时钟分频 PSC 值、捕获时钟 = 主频/分频
周期有效性窗口 Xn 上下限(对应频率范围)——跨平台移植必须按捕获时钟比例缩放
归一化 LPCNT = BASE/XnBASE 是多少(32768/131072/524288…)→ 决定灵敏度表量纲

3. 滤波

  • IIR 系数(如 ALFA_CAP1=79α=79/256≈0.31
  • 多档滤波(增强滤波开关切换系数)
  • 滤波生效位置(CAPVD 还是 Value

4. 基线跟踪

  • 滑动平均窗口(100/500…)、更新节拍
  • 有车冻结逻辑、冻结超时/稳定期检查
  • 上电稳定期(STABLE_SAMPLES、绕过滤波)

5. 检测判据

  • 进入:CAPVD < Origin dlt?(负向/正向)
  • 离开:滞回表选择(当前档 / 固定最高档)
  • 平坦性/确认机制(连续 N 次)
  • 斜率限幅/防抖

6. 灵敏度表

  • 表值 + 归一化基数 → 换算 Δf/f 和 ΔL/L(口径必须标注Δf/f = SensTable/BASEΔL/L ≈ 2×
  • 档位数、默认档、拨码映射
  • ⚠ 跨型号照搬灵敏度表 = 基数不同量纲错位(如 PD132 32768 基数的 {300,60,32,21} 不能直接对到 65536 基数的产品)

7. 状态机与时序

  • 进入/离开/脉冲标志转移(FLAG_IN→IN_PLUSE→FLAG_OUT→FLAG_PLUSE
  • tick 时长(5ms/10ms/50ms)、脉冲宽度、延时参数
  • 有限存在(HOLD)超时行为

8. 异常处理

  • 线圈断开检测(RF_FLAG/Xn 窗口失败)→ 继电器/指示灯行为
  • 看门狗复位触发源(超时/灵敏度变化/断开)
  • 上电自检流程

9. 参数速查表(输出格式)

参数 说明
归一化基数
捕获时钟
测量窗
IIR 系数
基线窗口
灵敏度表
tick/脉冲
看门狗

10. 移植注意事项(跨型号/跨平台)

  1. Xn 窗口按捕获时钟缩放PD132L 320-1620 vs PD132T 406-2050 ≈ 1.27 倍)
  2. 灵敏度表按归一化基数换算,禁止照搬数值
  3. 电容档以实测反推为准(代码注释可能错)
  4. 拨码编码位序各型号不同(组合位 vs 直接编码),移植时按硬件重排
  5. 看门狗/复位方式随平台变化(WWDG 写序列 vs ISPCR