# 电子开关-加热灯罩 台上验收测试笔记 - 固件:V1.0.0(`JBao_Heat_Lamp_V1.0.0_*`,提交 `426bb8d`) - 协议:CBR0 / PRCBR0,`MAX_PACKAGE_LEN=512`,DP 0–29 - 日期 / 测试人 / 烧录镜像 hash: - 第 1 轮:____-__-__ / ____ / hash ______ - 第 2 轮:____-__-__ / ____ / hash ______ > 依据规格书 `Doc/电子开关-加热灯罩_固件需求规格书.md` 第 17 章。勾选 = 实测通过。 > 串口:UART0 TX=PC5,波特率按 SDK `TCFG_UART0`(日志 tag:`[LIGHT]` / `[APP_NVM]` / `[APP_TMR]` / `[APP_LINK]` / `[JB_PRD]`)。 > 用 APP 直连时注意:DP9 是 WO(服务器下发),设备全量/差分上报不含 DP9。 --- ## 1. P0 — 台上 Bring-up(不依赖 APP) - [ ] 1.1 上电即开机:无按键等待;**不强制清配对进绑定**(规格书 5.1/5.2,删除上电 `usr_goto_pair`) - [ ] 1.2 短按开/关:继电器在**过零沿**吸合/断开,红绿 LED 跟实际吸合态 - [ ] 1.3 按住 5s → 配对提示(绿灯快闪);松手进绑定广播;120s 超时失败保持开机、灯回跟继电器 - [ ] 1.4 按住 12s → 红绿交替,进 OTA(`usr_app_ota_init`) - [ ] 1.5 过零超时 100ms:开请求无沿 → 放弃保持关;关请求无沿 → 强断(`fault_code=2`,DP23) - [ ] 1.6 运行中断电再上电:BLE 配对保留 > 仅 Bring-up 冒烟:把 `BOARD_LINKAGE/TIMER/TH_SCAN/RUNREC/LIGHT_LIFE/NVM_ENABLE` 置 0 编译(已验证 EXIT=0),板上复测 1.1–1.5。 ## 2. P1 — 最小产品闭环 - [ ] 2.1 5s 配对后 APP 写 DP0 开/关灯泡:过零后灯与 DP0 上报一致(报**实际吸合态**) - [ ] 2.2 短按同步上报 DP0 - [ ] 2.3 VM:改开关后断电,重新上电按上次开关恢复(开则等过零再吸合) - [ ] 2.4 DP1 / DP2 / DP4 / DP5–8 写忽略;DP2 上报恒 0 - [ ] 2.5 DP9(WO):APP/服务器能写当前温度;设备全量上报**不含** DP9 - [ ] 2.6 定时 7 组 **11 字节** + `time_en` 能存(规格书 11.1 布局);`BOARD_TIMER_ENABLE=0` 不执行 - [ ] 2.7 `MAX_PACKAGE_LEN=512`:APP 能读完整 124B `run_record`(DP20,本阶段可为 0) - [ ] 2.8 第一次开机:DP3=2,592,000、DP25=0(串口应见 `[LIGHT] light life init, remain=2592000`) ## 3. P2 — 自动化 + 寿命 - [ ] 3.1 断连已配对:500ms 见宝重连广播 ↔ 500ms 扫描交替;已连接停扫描 - [ ] 3.2 扫描匹配 `JBao-{缸体号}` 且配置版本相同才更新温度;湿度不参与开停 - [ ] 3.3 联动:`TTmax` 关灯、中间保持;无匹配包保持上一态 - [ ] 3.4 缸体号 0 / `Tmin>Tmax` 不跑联动 - [ ] 3.5 手动作废后须先 `T>Tmax` 再 `T0 清告警、=0 置告警;立刻落盘 - [ ] 3.17 按键 5s 清绑定 **不**改寿命 - [ ] 3.18 点灯时 DP3 最多 1 分钟报一次;到期/写 DP3 立刻报 - [ ] 3.19 掉电再上电:未到期接着扣;已到期仍 0 且 DP25=1 ## 4. 仲裁最小用例(灯泡语义) **前置**:缸体号≠0、`Tmin≤Tmax`、已配对;「关」=DP0 写 0 / 短按关,「开」同理。温度源:已连接写 DP9;断连扫描 `JBao-{缸体}`。 1. 空闲 `TTmax`,再回到 `TTmax` → 关。 10. 剩余寿命置 5,实际吸合 5 秒 → DP3=0、DP25=1,继电器保持开(若请求仍为开)。 11. 用例 10 之后 APP 写 DP3=2,592,000 → DP25=0。写 DP4=1 **不得**改寿命。 12. APP 写 DP3=100 后立刻拔电再上电 → 仍约 100(允许未满边沿的秒误差,**不允许**回到 2,592,000)。 13. 定时 11 字节:Byte1=1(每天)、Byte3–6=时分、Byte0=1 → 到点开;若误用加热垫偏移(Byte2 当类型)则本条失败。 ## 5. 对账记录 | 轮次 | 日期 | 用例失败清单 | 根因 / 修复 commit | 回归 | |---|---|---|---|---| | 1 | | | | | | 2 | | | | |