feat: add STM8 mesh relay firmware
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
/**
|
||||
* @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
|
||||
Reference in New Issue
Block a user