Files
STM8_Mesh_Control/include/fault_manager.h
T

30 lines
989 B
C

/**
* @file fault_manager.h
* @brief 继电器状态与 ACS712 电流状态的故障判定接口。
*
* 本模块只依据“继电器控制输出状态”和“ACS712 已换算后的实际电流值”
* 做软件诊断,不声称能够证明继电器机械触点一定闭合。因为当前硬件没有
* 触点反馈,继电器吸合失败最终只能通过“吸合后没有有效电流”间接发现。
*/
#ifndef FAULT_MANAGER_H
#define FAULT_MANAGER_H
#include <stdint.h>
/** 初始化故障判定状态机。 */
void FaultManager_Init(void);
/** 周期性执行电流故障确认、恢复确认和未确认重发。 */
void FaultManager_Task(void);
/** 收到主机对故障/恢复上报的 ACK 后调用。 */
void FaultManager_OnReportAck(uint8_t fault_code);
/** 设置运行期电流阈值;单位 mA。 */
uint8_t FaultManager_SetThreshold(uint16_t threshold_ma);
/** 获取当前电流阈值;单位 mA。 */
uint16_t FaultManager_GetThreshold(void);
#endif