/****************************************************************************** * @file app_relay.h * @brief 继电器:request 等过零落到 actual;灯和 DP0 读 actual * @author cyWu <1917507415@qq.com> * @date 2026.09.04 * @version V1.1.0 ******************************************************************************/ #ifndef __APP_RELAY_H__ #define __APP_RELAY_H__ #include /** * @brief 初始化继电器(默认关) * @return 无 */ void app_relay_init(void); /** * @brief 请求开/关(短按 / DP0 / 定时 / 联动统一入口) * @param on 1=开(等过零)0=关(等过零) * @return 无 */ void app_relay_request(uint8_t on); /** * @brief 过零沿回调:有 pending 则切 GPIO * @return 无 */ void app_relay_zc_edge(void); /** * @brief 过零超时:关强断 / 开放弃,fault_code=2 * @return 无 */ void app_relay_zc_timeout(void); /** * @brief 当前请求 * @return 1=开 0=关 */ uint8_t app_relay_get_request(void); /** * @brief 实际吸合态(DP0 / 灯效) * @return 1=吸合 0=断开 */ uint8_t app_relay_get_actual(void); /** * @brief request 是否已等于 actual * @return 1=已同步 */ uint8_t app_relay_synced(void); #endif /* __APP_RELAY_H__ */