/**********************************************************************//** * * 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 ROPump.h * * @date 03-Apr-2020 * @author S. Nash * * @brief ROPump header file. * **************************************************************************/ #ifndef __RO_PUMP_H__ #define __RO_PUMP_H__ #include "DGCommon.h" /** * @defgroup ROPump ROPump * @brief RO Pump monitor/controller module. Controls and monitors the RO pump. * * @addtogroup ROPump * @{ */ // ********** public definitions ********** #define MAX_RO_PRESSURE 140 // PSI #define MIN_RO_PRESSURE 100 // PSI // ********** public function prototypes ********** void initROPump( void ); void execROPumpMonitor( void ); void execROPumpController( void ); BOOL setROPumpTargetPressure( U32 roPressure, PUMP_CONTROL_MODE_T mode ); void signalROPumpHardStop( void ); SELF_TEST_STATUS_T execROPumpTest( void ); DATA_GET_PROTOTYPE( U32, getTargetROPumpPressure ); DATA_GET_PROTOTYPE( F32, getMeasuredROFlowRate ); BOOL testSetROPumpDataPublishIntervalOverride( U32 value ); BOOL testResetROPumpDataPublishIntervalOverride( void ); BOOL testSetTargetROPumpPressureOverride( S32 value ); BOOL testResetTargetROPumpPressureOverride( void ); BOOL testSetMeasuredROFlowRateOverride( F32 value ); BOOL testResetMeasuredROFlowRateOverride( void ); /**@}*/ #endif