Index: firmware/App/Drivers/PressureSensor.c =================================================================== diff -u -rabba5986eed8c2f702ca1ed70afd735a7f31db2a -r0c8ae7b952186d912c77d8c2cfb7dad809fa5225 --- firmware/App/Drivers/PressureSensor.c (.../PressureSensor.c) (revision abba5986eed8c2f702ca1ed70afd735a7f31db2a) +++ firmware/App/Drivers/PressureSensor.c (.../PressureSensor.c) (revision 0c8ae7b952186d912c77d8c2cfb7dad809fa5225) @@ -254,5 +254,55 @@ return result; } + + +/************************************************************************* + * TEST SUPPORT FUNCTIONS + *************************************************************************/ + + +/*********************************************************************//** + * @brief + * The testPressureSensorOverride function overrides the pressure reading + * for a given pressure sensor. + * @details \b Inputs: none + * @details \b Outputs: currentPressureReadings[] + * @param message Override message from Dialin which includes an ID of + * the sensor to override and the state to override the sensor to. + * @return TRUE if override request is successful, FALSE if not + *************************************************************************/ +BOOL testPressureSensorOverride( MESSAGE_T *message ) +{ + BOOL result = FALSE; + TEST_OVERRIDE_ARRAY_PAYLOAD_T override; + OVERRIDE_TYPE_T ovType = getOverrideArrayPayloadFromMessage( message, &override ); + + // Verify tester has logged in with TD and override type is valid + if ( ( TRUE == isTestingActivated() ) && ( ovType != OVERRIDE_INVALID ) && ( ovType < NUM_OF_OVERRIDE_TYPES ) ) + { + U32 sensor = override.index; + + // Verify pressure sensor index of override + if ( sensor < NUM_OF_PRESSURE_SENSORS ) + { + result = TRUE; + + if ( OVERRIDE_OVERRIDE == ovType ) + { + F32 value = override.state.f32; + + currentPressureReadings[ sensor ].ovData = value; + currentPressureReadings[ sensor ].override = OVERRIDE_KEY; + } + else + { + currentPressureReadings[ sensor ].override = OVERRIDE_RESET; + currentPressureReadings[ sensor ].ovData = currentPressureReadings[ sensor ].ovInitData; + } + } + } + + return result; +} /**@}*/