Index: firmware/App/Controllers/Pressures.h =================================================================== diff -u -r68fc03b5a22f14190146fc9069f022c109682b63 -r34ae229d1508df89630f4dc5fbe9291d135f0686 --- firmware/App/Controllers/Pressures.h (.../Pressures.h) (revision 68fc03b5a22f14190146fc9069f022c109682b63) +++ firmware/App/Controllers/Pressures.h (.../Pressures.h) (revision 34ae229d1508df89630f4dc5fbe9291d135f0686) @@ -1,18 +1,19 @@ -/**********************************************************************//** - * - * 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 Pressures.h - * - * @date 05-Apr-2020 - * @author S. Nash - * - * @brief Pressures header file. - * - **************************************************************************/ +/************************************************************************** +* +* Copyright (c) 2020-2023 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) Bill Bracken +* @date (last) 17-Jan-2023 +* +* @author (original) Sean +* @date (original) 04-Apr-2020 +* +***************************************************************************/ #ifndef __PRESSURES_H__ #define __PRESSURES_H__ @@ -28,27 +29,40 @@ * @{ */ -// ********** public definitions ********** +// ********** 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 + F32 barometricPressure; ///< Barometric 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. - NUM_OF_PRESSURE_SENSORS ///< Number of pressure sensors. + PRESSURE_FIRST = 0, ///< First pressure to scan + PRESSURE_SENSOR_RO_PUMP_INLET = PRESSURE_FIRST, ///< 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 ); -SELF_TEST_STATUS_T execPressuresTest( void ); - -DATA_ARRAY_GET_PROTOTYPE( F32, getMeasuredDGPressure, pressureID ); - BOOL testSetPressuresDataPublishIntervalOverride( U32 value ); BOOL testResetPressuresDataPublishIntervalOverride( void ); BOOL testSetDGPressureSensorOverride( U32 sensor, F32 value );