#ifndef APP_CONTROLLERS_FANS_H_ #define APP_CONTROLLERS_FANS_H_ #include "HDCommon.h" /** * @defgroup Fans Fans * @brief Fans monitor/controller module. Controls and monitors the HD fans. * * @addtogroup Fans * @{ */ /// Fans names typedef enum HD_fans { FAN_INLET_1 = 0, ///< Fan inlet 1 NUM_OF_FANS_NAMES ///< Number of fans names } FAN_NAMES_T; /// Fans data publish typedef struct { F32 fansTargetDutyCycle; ///< Fans target duty cycle F32 fanInlet1RPM; ///< Fan inlet 1 RPM } FANS_DATA_T; void initFans( void ); SELF_TEST_STATUS_T execFansSelfTest( void ); void execFans( void ); F32 getMeasuredFanRPM( FAN_NAMES_T fan ); BOOL testSetFanPublishIntervalOverride( U32 value ); BOOL testResetFanPublishIntervalOverride( void ); BOOL testSetFanRPMOverride( U32 fanId, F32 rpm ); BOOL testResetFanRPMOverride( U32 fanId ); /**@}*/ #endif