/****************************************************************************** * @file app_disp.h * @brief CBR3 数码管显示:温度/湿度整数、负号、-- 故障、告警闪烁 * @author cyWu <1917507415@qq.com> * @date 2026.09.02 * @version V2.0.0(规格书 V3.0.0):闪烁改第 8.2 节——有有效联动配置时按 * 「是否落在 [min,max]」闪,出范围就闪、与被作废/是否吹风无关; * 喂入方是 app_linkage(也可用 BOARD_DISP_ALARM_TEST 宏强制验证) * * @note 两块 2 位 7 段数码管:温度管整数 ℃、湿度管整数 %。DP 恒灭。 * 0~99 显示绝对值;<0 显示 -9~-1(G 段负号);<-9 钳位 -9;>99 钳位 99。 * 连续失败 3 次双管 "--"(优先于闪烁)。告警闪烁(规格书 8.2) * 与吹风解耦:超范围侧 500ms 亮/500ms 灭,带内侧常亮数值。 ******************************************************************************/ #ifndef __APP_DISP_H__ #define __APP_DISP_H__ #include /** * @brief 初始化显示模块 * @return 无 */ void app_disp_init(void); /** * @brief 业务节拍:计算 4 位要显示什么,写入段码缓冲(不直接打管) * @param dt 距上次调用的毫秒数(闪烁相位累加) * @note 软关机由 app_disp_scan 处理;本函数只算数据。 * @return 无 */ void app_disp_run(uint16_t dt); /** * @brief 显示动态扫描(快节拍定时器回调):每次点亮 1 位,4 位轮询刷新 * @note 由 app_disp_init 注册的 BOARD_DISP_SCAN_MS 定时器调用; * 必须短、不可阻塞;软关机时 4 位全灭。 * CT1642 无内部扫描 RAM,靠本函数持续轮询维持 4 位同亮不闪。 * @return 无 */ void app_disp_scan(void); /** * @brief 设置温度超范围标志:超范围时温度管 500ms 闪烁(app_linkage 喂, * 规格书 8.2:T>Tmax 或 THmax 或 H