/************************************************************************** * * 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 TemperatureSensors.h * * @author (last) Quang Nguyen * @date (last) 25-Aug-2020 * * @author (original) Dara Navaei * @date (original) 08-Apr-2020 * ***************************************************************************/ #ifndef __TEMPERATURESENSORS_H__ #define __TEMPERATURESENSORS_H__ #include "DGCommon.h" /** * @defgroup TemperatureSensors TemperatureSensors * @brief Temperature Sensors driver module. Reads and processes the temperature sensors. * * @addtogroup TemperatureSensors * @{ */ // ********** public definitions ********** /// Enumeration of temperature sensors. typedef enum SENSORS_NAME { TEMPSENSORS_INLET_PRIMARY_HEATER = 0, ///< Inlet primary heaters temperature sensor TEMPSENSORS_OUTLET_PRIMARY_HEATER, ///< Outlet primary heaters temperature sensor TEMPSENSORS_CONDUCTIVITY_SENSOR_1, ///< Conductivity sensor 1 temperature sensor TEMPSENSORS_CONDUCTIVITY_SENSOR_2, ///< Conductivity sensor 2 temperature sensor TEMPSENSORS_OUTLET_REDUNDANCY, ///< Outlet redundancy temperature sensor TEMPSENSORS_INLET_DIALYSATE, ///< Inlet dialysate temperature sensor TEMPSENSORS_PRIMARY_HEATER_THERMO_COUPLE, ///< Primary heaters internal temperature sensor TEMPSENSORS_TRIMMER_HEATER_THERMO_COUPLE, ///< Trimmer heater internal temperature sensor TEMPSENSORS_PRIMARY_HEATER_COLD_JUNCTION, ///< Primary heaters cold junction temperature sensor TEMPSENSORS_TRIMMER_HEATER_COLD_JUNCTION, ///< Trimmer heater cold junction temperature sensor TEMPSENSORS_PRIMARY_HEATER_INTERNAL, ///< Primary heaters internal temperature TEMPSENSORS_TRIMMER_HEATER_INTERNAL, ///< Trimmer heater internal temperature NUM_OF_TEMPERATURE_SENSORS ///< Number of temperature sensors } TEMPERATURE_SENSORS_T; // ********** public function prototypes ********** void initTemperatureSensors( void ); SELF_TEST_STATUS_T execTemperatureSensorsSelfTest( void ); void execTemperatureSensors( void ); void checkInletWaterTemperature( void ); F32 getTemperatureValue( U32 sensorIndex ); BOOL testSetMeasuredTemperatureOverride( U32 sensorIndex, F32 temperature ); BOOL testResetMeasuredTemperatureOverride( U32 sensorIndex ); BOOL testSetTemperatureSensorsPublishIntervalOverride( U32 value ); BOOL testResetTemperatureSensorsPublishIntervalOverride( void ); /**@}*/ #endif