/************************************************************************** * * Copyright (c) 2020-2022 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 Pressures.h * * @author (last) Dara Navaei * @date (last) 18-Jul-2022 * * @author (original) Sean * @date (original) 04-Apr-2020 * ***************************************************************************/ #ifndef __PRESSURES_H__ #define __PRESSURES_H__ #include "DGCommon.h" /** * @defgroup DGPressures DGPressures * @brief Pressure sensors monitor module. Monitors the various DG pressure * sensors. * * @addtogroup DGPressures * @{ */ // ********** public definitions ********** #pragma pack(push,1) /// Pressure data struct. typedef struct { F32 roPumpInletPressure; ///< RO pump inlet pressure F32 roPumpOutletPressure; ///< RO pump outlet pressure F32 drainPumpInletPressure; ///< Drain pump inlet pressure F32 drainPumpOutletPressure; ///< Drain pump outlet pressure } PRESSURES_DATA_T; #pragma pack(pop) /// Enumeration of pressure sensors monitored by this module. typedef enum PressureSensors { PRESSURE_SENSOR_RO_PUMP_INLET = 0, ///< RO pump pressure sensor PRESSURE_SENSOR_RO_PUMP_OUTLET, ///< RO pump pressure sensor PRESSURE_SENSOR_DRAIN_PUMP_INLET, ///< drain pump inlet pressure PRESSURE_SENSOR_DRAIN_PUMP_OUTLET, ///< drain pump outlet pressure PRESSURE_SENSOR_BAROMETRIC, ///< Barometric pressure sensor NUM_OF_PRESSURE_SENSORS ///< Number of pressure sensors } PRESSURE_SENSORS_T; // ********** public function prototypes ********** void initPressures( void ); void execPressures( void ); SELF_TEST_STATUS_T execPressureSelfTest( void ); void checkInletWaterPressure( void ); F32 getMeasuredDGPressure( U32 pressureID ); BOOL testSetPressuresDataPublishIntervalOverride( U32 value ); BOOL testResetPressuresDataPublishIntervalOverride( void ); BOOL testSetDGPressureSensorOverride( U32 sensor, F32 value ); BOOL testResetDGPressureSensorOverride( U32 sensor ); /**@}*/ #endif