Index: firmware/App/Controllers/Heaters.h =================================================================== diff -u -r7650c4651918914e3dd0e8d34d928f224101fb74 -r853d846a60d61d1c6f8987d9cdcfc2bc32913840 --- firmware/App/Controllers/Heaters.h (.../Heaters.h) (revision 7650c4651918914e3dd0e8d34d928f224101fb74) +++ firmware/App/Controllers/Heaters.h (.../Heaters.h) (revision 853d846a60d61d1c6f8987d9cdcfc2bc32913840) @@ -1,53 +1,74 @@ -/**********************************************************************//** - * - * Copyright (c) 2019-2020 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 - * - * @date 21-Apr-2020 - * @author Dara Navaei - * - * @brief DG heaters controller - * - **************************************************************************/ +/************************************************************************** +* +* Copyright (c) 2019-2020 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) Quang Nguyen +* @date (last) 21-Aug-2020 +* +* @author (original) Dara Navaei +* @date (original) 23-Apr-2020 +* +***************************************************************************/ #ifndef _HEATERS_H_ #define _HEATERS_H_ -#include "Common.h" +#include "DGCommon.h" /** * @defgroup Heaters Heaters - * @brief Heaters driver modules. - * Controls the Primary and Trimmer Heaters + * @brief Heaters driver modules. Controls the primary and trimmer heaters. * * @addtogroup Heaters * @{ */ -void initHeaters ( void ); +#pragma pack(push,1) -void setPrimaryHeaterTargetTemperature ( F32 targetTemp ); -void setTrimmerHeaterTargetTemperature ( F32 targetTemp ); +/// Target temperature data structure. +typedef struct +{ + F32 targetPrimaryHeaterTemp; ///< Primary heater set temperature target + F32 targetTrimmerHeaterTemp; ///< Trimmer heater set temperature target +} TARGET_TEMPS_PAYLOAD_T; -BOOL startPrimaryHeater ( void ); -BOOL startTrimmerHeater ( void ); +/// Trimmer heater command data structure. +typedef struct +{ + BOOL startHeater; ///< Flag indicates start or stop heater + F32 targetTemp; ///< Target temperature for heater +} TRIMMER_HEATER_CMD_T; -void stopPrimaryHeater ( void ); -void stopTrimmerHeater ( void ); +#pragma pack(pop) -void execHeatersMonitor ( void ); +void initHeaters( void ); -SELF_TEST_STATUS_T execHeatersSelfTest ( void ); +void setPrimaryHeaterTargetTemperature( F32 targetTemp ); +void setTrimmerHeaterTargetTemperature( F32 targetTemp ); -void execPrimaryHeaters ( void ); +BOOL startPrimaryHeater( void ); +BOOL startTrimmerHeater( void ); -void execTrimmerHeater ( void ); +void stopPrimaryHeater( void ); +void stopTrimmerHeater( void ); -BOOL testSetHeatersPublishIntervalOverride ( U32 value ); -BOOL testResetHeatersPublishIntervalOverride ( void ); +void handleTrimmerHeaterCmd( TRIMMER_HEATER_CMD_T *heaterCmdPtr ); // handle trimmer heater control command from HD +void execHeatersMonitor( void ); + +SELF_TEST_STATUS_T execHeatersSelfTest( void ); + +void execPrimaryHeaters( void ); +void execTrimmerHeater( void ); + +BOOL testSetHeatersPublishIntervalOverride( U32 value ); +BOOL testResetHeatersPublishIntervalOverride( void ); + +/**@}*/ + #endif