/************************************************************************** * * Copyright (c) 2021-2021 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 Temperatures.h * * @author (last) Dara Navaei * @date (last) 01-Oct-2021 * * @author (original) Dara Navaei * @date (original) 01-Oct-2021 * ***************************************************************************/ #ifndef APP_CONTROLLERS_TEMPERATURES_H_ #define APP_CONTROLLERS_TEMPERATURES_H_ #include "HDCommon.h" /** * @defgroup Temperatures Temperatures * @brief Temperatures driver module. Reads and processes the thermistors and temperature sensors. * Onboard thermistor manufacturer: Murata Manufacturing, PN: NCP14XH103J03RC * Power supply thermistors manufacturer: Murata Manufacturing, PN: NCP18XH103F03RB or * Epcos Manufacturing, PN: B57330V2103F260 * * @addtogroup Temperatures * @{ */ // ********** public definitions ********** /// Enumeration of temperatures typedef enum HD_temperatures { THERMISTOR_ONBOARD_NTC = 0, ///< Onboard thermistor THERMISTOR_POWER_SUPPLY_1, ///< HD power supply 1 thermistor TEMPSENSOR_FPGA_BOARD_SENSOR, ///< FPGA board temperature sensor TEMPSENSOR_VENOUS_PRESSURE_SENSOR, ///< Venous pressure sensor temperature TEMPSENSOR_PBA_ADC_SENSOR, ///< PBA ADC temperature sensor NUM_OF_TEMPERATURES, ///< Number of temperatures } TEMPERATURES_T; /// Thermistors/temperature sensors data publish structure typedef struct { F32 onboardThermistor; ///< Onboard thermistor data F32 powerSupply1Thermistor; ///< Power supply 1 thermistor F32 fpgaBoardTempSensor; ///< FPGA board temperature sensor F32 venousPressSensorTemp; ///< Venous pressure sensor temperature F32 pbaADCTempSensor; ///< PBA ADC temperature sensor } TEMPERATURES_DATA_T; // ********** public function prototypes ********** void initTemperatures( void ); SELF_TEST_STATUS_T execTemperaturesSelfTest( void ); void execTemperatures( void ); F32 getTemperatureValue( TEMPERATURES_T sensorID ); BOOL testSetMeasuredTemperatureOverride( U32 sensorID, F32 temperature ); BOOL testResetMeasuredTemperatureOverride( U32 sensorID ); BOOL testSetTemperaturesPublishIntervalOverride( U32 value ); BOOL testResetTemperaturesPublishIntervalOverride( void ); /**@}*/ #endif