Files
JBao_Temp_Humi_Fan_FW/apps/usr_app/app_th.h
T
wuchuyuan e324ebd99b 精简 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。
规格书与注释同步精简。
2026-08-31 17:57:52 +08:00

68 lines
1.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/******************************************************************************
* @file app_th.h
* @brief CBR3 温湿度采集:2s 周期、失败计数、最近有效值
* @author cyWu <1917507415@qq.com>
* @date 2026.08.29
* @version V1.0.0,首次发布
*
* @note 规格书 8.4:条件"持续时长"只在本次采样成功且比较成立时累加;
* 采样失败不累加、不清零;连续 3 次失败显示 "--" 且 fault_code=2。
* P0 不做条件比较,只做采样与失败计数。
******************************************************************************/
#ifndef __APP_TH_H__
#define __APP_TH_H__
#include <stdint.h>
/**
* @brief 初始化温湿度模块
* @return 无
*/
void app_th_init(void);
/**
* @brief 业务节拍:内部 2s 才真正采一次;采的时候走总线互斥
* @param dt 距上次调用的毫秒数
* @return 无
*/
void app_th_poll(uint16_t dt);
/**
* @brief 是否已有有效采样
* @return 1=有效,0=从未成功
*/
uint8_t app_th_get_valid(void);
/**
* @brief 最近一次有效温度
* @return 温度 ×10(如 25.3℃ → 253
*/
int16_t app_th_get_temp_x10(void);
/**
* @brief 最近一次有效湿度
* @return 湿度 0~100 整数 %
*/
uint8_t app_th_get_humi(void);
/**
* @brief 连续失败次数
* @return 连续失败次数
*/
uint8_t app_th_get_fail_cnt(void);
/**
* @brief 传感器故障(连续失败 ≥ BOARD_TH_FAIL_MAX
* @return 1=故障(显示 --、fault_code=2),0=正常
*/
uint8_t app_th_is_fault(void);
/**
* @brief 最近一次采样是否成功(P2 条件引擎用,规格书 8.4)
* @return 1=成功,0=失败/未采样过
*/
uint8_t app_th_last_sample_ok(void);
#endif /* __APP_TH_H__ */