Index: firmware/App/Monitors/Temperature.c =================================================================== diff -u -r895ae090a3c78f9e002ac526332ef29929ceef71 -rb689a4627e86e263cb69e83b91e80802bf411c92 --- firmware/App/Monitors/Temperature.c (.../Temperature.c) (revision 895ae090a3c78f9e002ac526332ef29929ceef71) +++ firmware/App/Monitors/Temperature.c (.../Temperature.c) (revision b689a4627e86e263cb69e83b91e80802bf411c92) @@ -416,66 +416,33 @@ /*********************************************************************//** * @brief - * The getD4AverageTemperature function returns the average temperature - * for D4 temp sensor. + * The getFilteredTemperatureValue function gets the filtered current + * Temperature sensor temperature (in deg C) for a given sensor. + * @details \b Alarm: ALARM_ID_DD_SOFTWARE_FAULT if given sensor is invalid. * @details \b Inputs: filteredcurrentTemperatureReadings * @details \b Outputs: none - * @return the D4 average temperature + * @param sensor ID of temperature sensor to get temperature reading for. + * @return The filtered current temperature sensor temperature (in deg C) of + * the given sensor. *************************************************************************/ -F32 getD4AverageTemperature( void ) +F32 getFilteredTemperatureValue( TEMPERATURE_SENSORS_T sensor ) { - F32 temperature = getF32OverrideValue( &filteredcurrentTemperatureReadings[ D4_TEMP ] ); + F32 temperature = 0.0F; - return temperature; -} + if ( sensor < NUM_OF_TEMPERATURE_SENSORS ) + { + temperature = getF32OverrideValue( &filteredcurrentTemperatureReadings[ sensor ] ); + } + else + { + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_TEMPERATURE_SENSOR_SELECTED3, sensor ) + } -/*********************************************************************//** - * @brief - * The getD50AverageTemperature function returns the average temperature - * for D50 temp sensor. - * @details \b Inputs: filteredcurrentTemperatureReadings - * @details \b Outputs: none - * @return the D50 average temperature - *************************************************************************/ -F32 getD50AverageTemperature( void ) -{ - F32 temperature = getF32OverrideValue( &filteredcurrentTemperatureReadings[ D50_TEMP ] ); - return temperature; } /*********************************************************************//** * @brief - * The getD99AverageTemperature function returns the average temperature - * for D99 temperature sensor. - * @details \b Inputs: filteredcurrentTemperatureReadings - * @details \b Outputs: none - * @return the D99 average temperature - *************************************************************************/ -F32 getD99AverageTemperature( void ) -{ - F32 temperature = getF32OverrideValue( &filteredcurrentTemperatureReadings[ D99_TEMP ] ); - - return temperature; -} - -/*********************************************************************//** - * @brief - * The getD78AverageTemperature function returns the average temperature - * for D78 temperature sensor. - * @details \b Inputs: filteredcurrentTemperatureReadings - * @details \b Outputs: none - * @return the D78 average temperature - *************************************************************************/ -F32 getD78AverageTemperature( void ) -{ - F32 temperature = getF32OverrideValue( &filteredcurrentTemperatureReadings[ D78_TEMP ] ); - - return temperature; -} - -/*********************************************************************//** - * @brief * The getTempMovingAverageTimeInterval function calculates the temperature * interval used for sample collection based on the dialysate flow rate, * to find the average value. @@ -529,12 +496,12 @@ data.d44CondTemp = getConductivityTemperatureValue( D43_COND ); data.d75CondTemp = getConductivityTemperatureValue( D74_COND ); #endif - data.d4AvgTemp = getD4AverageTemperature(); - data.d50AvgTemp = getD50AverageTemperature(); - data.d99AvgTemp = getD99AverageTemperature(); + data.d4AvgTemp = getFilteredTemperatureValue( D4_TEMP ); + data.d50AvgTemp = getFilteredTemperatureValue( D50_TEMP ); + data.d99AvgTemp = getFilteredTemperatureValue( D99_TEMP ); data.d28AvgTemp = dialTempMovingAvgData[ DIAL_TEMP_D28 ].dialTempAvgC; data.d30AvgTemp = dialTempMovingAvgData[ DIAL_TEMP_D30 ].dialTempAvgC; - data.d78AvgTemp = getD78AverageTemperature(); + data.d78AvgTemp = getFilteredTemperatureValue( D78_TEMP ); data.d9PresTemp = getFilteredPressureSensorTemperature( D9_PRES ); data.d66PresTemp = getFilteredPressureSensorTemperature( D66_PRES ); data.d51PresTemp = getFilteredPressureSensorTemperature( D51_PRES );