/************************************************************************** * * Copyright (c) 2020-2024 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 Thermistors.h * * @author (last) Bill Bracken * @date (last) 17-Jan-2023 * * @author (original) Dara Navaei * @date (original) 25-Nov-2020 * ***************************************************************************/ #ifndef _THERMISTORS_H_ #define _THERMISTORS_H_ #include "DGCommon.h" /** * @defgroup Thermistors Thermistors * @brief Thermistors driver module. Reads and processes the thermistors. * Onboard thermistor manufacturer: Murata Manufacturing, PN: NCP14XH103J03RC * Power supply thermistors manufacturer: Murata Manufacturing, PN: NCP18XH103F03RB or * Epcos Manufacturing, PN: B57330V2103F260 * * @addtogroup Thermistors * @{ */ // ********** public definitions ********** /// Enumeration of thermistors typedef enum DG_thermistors { THERMISTOR_FIRST = 0, ///< First thermistor to scan THERMISTOR_ONBOARD_NTC = THERMISTOR_FIRST, ///< Onboard thermistor THERMISTOR_POWER_SUPPLY_1, ///< DG power supply 1 thermistor THERMISTOR_POWER_SUPPLY_2, ///< DG power supply 2 thermistor NUM_OF_THERMISTORS, ///< Number of thermistors } THERMISTORS_TEMP_SENSORS_T; /// Thermistors/temperature sensors data publish struct typedef struct { F32 onboardThermistor; ///< Onboard thermistor data F32 powerSupply1Thermistor; ///< Power supply 1 thermistor F32 powerSupply2Thermistor; ///< Power supply 2 thermistor } THERMISTORS_DATA_T; // ********** public function prototypes ********** void initThermistors( void ); SELF_TEST_STATUS_T execThermistorsSelfTest( void ); void execThermistors( void ); F32 getThermistorTemperatureValue( THERMISTORS_TEMP_SENSORS_T thermistor ); BOOL testSetMeasuredThermistorOverride( U32 thermistor, F32 temperature ); BOOL testResetMeasuredThermistorOverride( U32 thermistor ); BOOL testSetThermistorPublishIntervalOverride( U32 value ); BOOL testResetThermistorPublishIntervalOverride( void ); /**@}*/ #endif