/************************************************************************** * * Copyright (c) 2024-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 ConductivitySensors.h * * @author (last) Vinayakam Mani * @date (last) 10-Sep-2024 * * @author (original) Vinayakam Mani * @date (original) 10-Sep-2024 * ***************************************************************************/ #ifndef __CONDUCTIVITY_SENSORS_H__ #define __CONDUCTIVITY_SENSORS_H__ #include "DDCommon.h" /** * @defgroup ConductivitySensors ConductivitySensors * @brief Conductivity Sensors monitor module. Monitors and filters conductivity sensor readings. * The module uses AD5941 - high precision, low power analog front ends(AFEs) for conductivity measurement * for CD1,CD2, CD3 and CD4. * * Conductivity Sensor Module * Diality P/N: TBD * Manufacturer: TBD * Manufacture P/N: TBD * * @addtogroup ConductivitySensors * @{ */ // ********** public definitions ********** /// Enumeration of conductivity sensors. typedef enum ConductivitySensors { FIRST_COND_SENSOR = 0, ///< First conductivity sensor D17_COND = FIRST_COND_SENSOR, ///< Bicarb only conductivity sensor D27_COND, ///< Acid and Bicarb mix conductivity sensor - 1 D29_COND, ///< Acid and Bicarb mix conductivity sensor - 2 D43_COND, ///< Spent dialysate conductivity sensor NUM_OF_CONDUCTIVITY_SENSORS ///< Number of conductivity sensors } CONDUCTIVITY_SENSORS_T; // ********** public function prototypes ********** void initConductivitySensors( void ); void readConductivitySensors( void ); F32 getConductivityValue( CONDUCTIVITY_SENSORS_T sensor ); F32 getConductivityTemperatureValue( CONDUCTIVITY_SENSORS_T sensor ); U32 getConductivitySensorReadCount( CONDUCTIVITY_SENSORS_T sensor ); U32 getConductivitySensorErrorCount( CONDUCTIVITY_SENSORS_T sensor ); void handleConductivitySensorsReset( void ); void handleConductivitySensorsInitProcedure( void ); void execConductivitySensorWrite( void ); void execConductivitySensorRead( void ); void requestConductivitySensorReset( CONDUCTIVITY_SENSORS_T sensor ); void setConductivitySensorInitEnable( CONDUCTIVITY_SENSORS_T sensor ); void conductivitySensorWriteRequest( CONDUCTIVITY_SENSORS_T sensor, U16 writeAddr, U32 data ); void conductivitySensorReadRequest( CONDUCTIVITY_SENSORS_T sensor, U16 readAddr ); U32 conductivitySensorReadData( CONDUCTIVITY_SENSORS_T sensor ); BOOL testConductivitySensorReadingsOverride( MESSAGE_T *message ); BOOL testConductivitySensorTemperatureReadingsOverride( MESSAGE_T *message ); BOOL testConductivitySensorReadCounterOverride( MESSAGE_T *message ); BOOL testConductivitySensorErrorCounterOverride( MESSAGE_T *message ); /**@}*/ #endif