/************************************************************************** * * Copyright (c) 2024-2024 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file Heaters.h * * @author (last) Sean Nash * @date (last) 20-Dec-2024 * * @author (original) Sean Nash * @date (original) 20-Dec-2024 * ***************************************************************************/ #ifndef _HEATERS_H_ #define _HEATERS_H_ #include "ROCommon.h" /** * @defgroup Heaters Heaters * @brief Heaters driver modules. Controls the primary and trimmer heaters. * The primary heaters are manufactured by Watlow with * fluid operating temperature in between 5 degrees C and 95 degrees C. * The trimmer heater is manufactured by Watlow with * fluid operating temperature in between 5 degrees C and 95 degrees C. * * @addtogroup Heaters * @{ */ // ********** Public definitions ********** /// Heaters data structure. typedef struct { F32 heaterHroDC; ///< HRO duty cycle F32 heaterHroTargetTemp; ///< HRO target temperature U32 heaterHroState; ///< HRO state U32 heaterHroControlCounter; ///< HRO control interval count } HEATERS_DATA_T; // ********** Public function prototypes ********** void initHeater( void ); BOOL setHeaterTargetTemperature( F32 targetTemperature ); void startHeater( void ); F32 getHeaterTargetTemperature( void ); BOOL isHeaterOn( void ); void stopHeater( void ); void execHeaterControl( void ); void execHeaterMonitor( void ); BOOL testHeatersDataPublishIntervalOverride( MESSAGE_T *message ); BOOL testHeaterDutyCycleOverride( MESSAGE_T *message ); BOOL testHeaterTargetTemperatureOverride( MESSAGE_T *message ); BOOL testHeaterStartStopOverride( MESSAGE_T *message ); /**@}*/ #endif