# A113 吸尘器目标固件压力原始采集审查

状态：目标固件已静态链接、主机模型验证通过；整机 FABRICATION_HOLD。不是原产品效果一致或量产验证通过。

新增能力：在 A111 的真实 PA6/PA7 开漏总线上，主循环每 250ms 计划调用一次 0x58 地址、0x04 寄存器起始的五字节读取。调用链 main → display_bus_read_register → si_read_register 已用最终 ELF 反汇编核对。250ms 是任务安排，不是传感器转换时间、实时截止保证或测量新鲜度证明。

读取事务包含寄存器指针写入、repeated START、读地址、前四字节 ACK、末字节 NACK、STOP。接口允许 1–17 字节；全事务 4,000 个名义微秒计时、每次拉伸/下降等待 100 个名义微秒、计时器停滞 20,000 次检查后退出。实际时钟、引脚电压、波形、CPU 阻塞时间均未测量；只支持单主机，无自动总线恢复重试。失败释放开漏引脚，并清除完整有效长度的输出缓冲；参数错误不访问输出。

原始数据仅放入调试器变量：g_pressure_raw[5]、g_pressure_bus_ok、g_pressure_status、attempts、started_ms、finished_ms。读取 epoch 前后相同且为偶数才接受记录；采集期间 bus_ok 先清零。bus_ok 只代表软件事务成功，不能当作传感器身份、范围、快照原子性或新鲜测量验证。上电/重启后候选器件协议尚须实物核对。当前未配置传感器采样模式或温度系数，也没有冻结量程，所以不把字节转换成产品压力/吸力显示；A112 换算模块尚未绑定本轮主循环。

保持屏幕 qualified=false / measurement_valid=false / SUCTION --%；风机硬件回调独立关断锁保持有效。压力读取失败不会自动授权风机或恢复 UI。传感器缺失时会按任务计划继续诊断性读请求；这不是自动恢复合格状态。总线与显示在同一主循环串行调用，无 ISR 同时访问。

测试：ASan/UBSan。读事务独立引脚协议模型覆盖 2,176 组七位地址/长度组合、256 种返回字节模式、三个发送字节位置 NACK、末字节 NACK、有效时钟拉伸、延迟下降、计时回绕、停滞、超时与 deadline；另在已经读完第 1/2/3/4 字节后注入时钟故障，确认所有返回字节清零。模型检查两个 START、一个 STOP、写/读地址和寄存器、ACK/NACK 顺序，以及延迟下降时 SDA 不提前变化。所有 128 个地址只用于协议测试；实际候选地址是 0x58。

原有显示、键盘、防自动重启、风机策略与全范围输出锁测试继续通过；保留 A110 下降沿缺陷的负控制测试。模型不能代替示波器和真实传感器。

最终 STM32G030F6 链接：Flash 8,464B / 32KB，RAM 链接分配 2,560B / 8KB（含保留堆栈，不是实测峰值）。BIN SHA256：0e5e2d19c91b0b29391ae7c4bb6572eb54c86da31c7cf665100926965e76c439。编译使用 -g0 降低本机磁盘占用，保留 ELF 符号、map、每函数静态 .su 和源文件；未上板。无未解析符号的完整链接已通过。

新增同步读事务会占用主循环时间，可能与显示事务叠加；键盘 10ms 名义调度不能视为已测最大间隔。已知计时停滞使用检查次数退出，不能直接推导物理耗时上限；真实运行必须测键盘/保护任务延迟与 I²C 波形。

本包不含改版 CAD：对应主板仍为 A111，压力连接合同/量程和误差分析仍参考 A112。新增传感器支路需要重新测上拉并联、总线电容、ACK 电压、电源裕量、防尘管路和取压点。下一步补可装配传感器接口及台架测试，然后根据真实风道与原品结果冻结传感器范围和吸力算法。

三款范围保留：钻机手柄接口/电机启动链、美甲灯光学与固化、吸尘器风道/学习/告警效果均未实测；1,000 台整机成本仍无供应商报价接受。未购买、下单、联系工厂、刷机或上电。

本轮磁盘写入一度失败。只对 stm32_shared 内 SHA256/大小/权限全部一致的 49 个重复依赖文件进行硬链接去重，内容与路径保持一致，释放约 9.98MB 逻辑重复量；后续不得原地修改共享依赖，必要修改需先复制替换。交付 ZIP 使用独立文件数据，解压不依赖这些链接。

协议依据：CFSensor XGZP6897D V3.3/20260827，https://cfsensor.com/wp-content/uploads/2026/09/XGZP6897D-Pressure-Sensor-V3.3.pdf 。量程/版本必须与实际供货件一致。
