Index: firmware/App/Controllers/Heaters.c =================================================================== diff -u -r4fdc3246f14c8b3b04724d39803530f60b6caac8 -r853d846a60d61d1c6f8987d9cdcfc2bc32913840 --- firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision 4fdc3246f14c8b3b04724d39803530f60b6caac8) +++ firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision 853d846a60d61d1c6f8987d9cdcfc2bc32913840) @@ -20,6 +20,7 @@ #include "etpwm.h" #include "AlarmMgmt.h" +#include "DGDefs.h" #include "Heaters.h" #include "ROPump.h" #include "PIControllers.h" @@ -284,6 +285,47 @@ /*********************************************************************//** * @brief + * The handleTrimmerHeaterCmd handles a start trimmer heater command from the HD. + * It resets the trimmer heater's state and sets the duty cycle of the trimmer heater. + * @details Inputs: none + * @details Outputs: process command and send back response + * @param heaterCmdPtr pointer to heater command data record + * @return status + *************************************************************************/ +void handleTrimmerHeaterCmd( TRIMMER_HEATER_CMD_T *heaterCmdPtr ) +{ + DG_CMD_RESPONSE_T cmdResponse; + + cmdResponse.commandID = DG_CMD_START_TRIMMER_HEATER; + cmdResponse.rejected = TRUE; + cmdResponse.rejectCode = DG_CMD_REQUEST_REJECT_REASON_NONE; + + if ( TRUE == heaterCmdPtr->startHeater ) + { + if ( ( MINIMUM_TARGET_TEMPERATURE <= heaterCmdPtr->targetTemp ) && ( heaterCmdPtr->targetTemp <= MAXIMUM_TARGET_TEMPERATURE ) ) + { + cmdResponse.rejected = FALSE; + #ifndef DISABLE_HEATERS_AND_TEMPS + trimmerHeaterTargetTemperature = heaterCmdPtr->targetTemp; + hasStartTrimmerHeaterRequested = TRUE; + #endif + } + else + { + cmdResponse.rejectCode = DG_CMD_REQUEST_REJECT_REASON_INVALID_PARAMETER; + } + } + else + { + cmdResponse.rejected = FALSE; + stopTrimmerHeater(); + } + + sendCommandResponseMsg( &cmdResponse ); +} + +/*********************************************************************//** + * @brief * The execHeatersMonitor function turns off the heaters when RO pump is not on. * @details Inputs: none * @details Outputs: Turns off the heaters when RO pump is not on