精简 usr_app 架构:去掉关机/休眠死代码,按键复用 key.c 状态机,ISR 重活统一延后到任务上下文

Type-C 长供电、上电即工作、无软关机,删除 app_boot/app_power 及 DP0 开关相关逻辑,
去掉空占位 app_fan_run 和无效的 usr_timer_pick_mode/rearm(数码管 4ms 扫描已 priority=1,
系统本来就不会进低功耗)。按键 5s 配对 / 12s OTA 改走 key.c 长按分级,去掉自计时与 1~5s 死区。
新增 app_defer,NVM/配对/OTA 只在 ISR 置位、在 500ms 任务上下文落地,避免再在 usr_timer 里写 flash。
规格书与注释同步精简。
This commit is contained in:
2026-08-31 17:57:52 +08:00
parent 5cc7e9dbd6
commit e324ebd99b
51 changed files with 542 additions and 886 deletions
+3 -10
View File
@@ -3,16 +3,9 @@
* @brief CBR3 AHT20 软件 I2C 驱动实现
* @author cyWu <1917507415@qq.com>
* @date 2026.08.29
* @version V1.0.3
* @history
* - V1.0.0, 2026.08.29, cyWu, 首次发布
* - V1.0.1, 2026.08.29, cyWu, 修复 SCL 高电平期间推挽输出 SDA 导致的假 STOP
* (读数据必 CRC fail 的根因);补 AHT20 0x71 校准检查 + 0xBE 初始化
* - V1.0.2, 2026.08.29, cyWu, 排障结束:回退诊断代码(电平自检/地址扫描/IN 直读),
* 保留时序修复、内部上拉依赖、总线恢复、0x71/0xBE 初始化流程
* - V1.0.3, 2026.08.29, cyWu, IO 分离:AHT20 独占 PC4(SCL)/PC5(SDA),删除
* bsp_bus 共线锁与 measure_start/finish 拆分锁,采集恢复一次完成;
* PC4/PC5 上拉配置从 bsp_bus_init 移入本文件 init
* @version V1.0.3IO 分离:AHT20 独占 PC4(SCL)/PC5(SDA),无总线共享锁,
* 采集一次完成;修复 SCL 高电平期间推挽输出 SDA 导致的假 STOP,
* 补 0x71 校准检查 + 0xBE 初始化
******************************************************************************/
#include "bsp_aht20.h"