Index: firmware/App/Monitors/Level.c =================================================================== diff -u -r371726565d87e57f0aa571740b294be6d7310e11 -rd27cbe971509e825c51b17500e289627136b3ab7 --- firmware/App/Monitors/Level.c (.../Level.c) (revision 371726565d87e57f0aa571740b294be6d7310e11) +++ firmware/App/Monitors/Level.c (.../Level.c) (revision d27cbe971509e825c51b17500e289627136b3ab7) @@ -61,7 +61,7 @@ static void publishLevelsData( void ); static BOOL processLevelCount( U16 count ); -static LEVEL_STATE_T getFloaterLevelstatus( LEVEL_T levelId ); +static LEVEL_STATE_T readFloaterLevelstatus( LEVEL_T levelId ); /*********************************************************************//** * @brief @@ -118,7 +118,7 @@ { // Process the status of the Level case D6_LEVL: - currentLevelStatus = getFloaterLevelstatus( D6_LEVL ); + currentLevelStatus = readFloaterLevelstatus( D6_LEVL ); break; case D63_LEVL: @@ -130,7 +130,7 @@ break; case P25_LEVL: - currentLevelStatus = getFloaterLevelstatus( P25_LEVL ); + currentLevelStatus = readFloaterLevelstatus( P25_LEVL ); break; #ifndef _VECTORCAST_ @@ -253,21 +253,24 @@ * @details \b Outputs: level * @return level status *************************************************************************/ -static LEVEL_STATE_T getFloaterLevelstatus( LEVEL_T levelId ) +static LEVEL_STATE_T readFloaterLevelstatus( LEVEL_T levelId ) { LEVEL_STATE_T currentLevelStatus = LEVEL_STATE_HIGH; + U32 levelStatus = 0; if ( D6_LEVL == levelId ) { - if ( FPGA_LEVEL_LOW == getFPGAD6LevelStatus() ) + levelStatus = getFPGAD6LevelStatus(); + + if ( FPGA_LEVEL_LOW == levelStatus ) { currentLevelStatus = LEVEL_STATE_HIGH ; } - else if ( FPGA_LEVEL_MEDIUM == getFPGAD6LevelStatus() ) + else if ( FPGA_LEVEL_MEDIUM == levelStatus ) { currentLevelStatus = LEVEL_STATE_MEDIUM ; } - else if ( FPGA_LEVEL_HIGH == getFPGAD6LevelStatus() ) + else if ( FPGA_LEVEL_HIGH == levelStatus ) { currentLevelStatus = LEVEL_STATE_LOW ; } @@ -279,15 +282,17 @@ } else if ( P25_LEVL == levelId ) { - if ( FPGA_LEVEL_LOW == getFPGAP25FloaterState() ) + levelStatus = getFPGAP25FloaterState(); + + if ( FPGA_LEVEL_LOW == levelStatus ) { currentLevelStatus = LEVEL_STATE_LOW ; } - else if ( FPGA_LEVEL_MEDIUM == getFPGAP25FloaterState() ) + else if ( FPGA_LEVEL_MEDIUM == levelStatus ) { currentLevelStatus = LEVEL_STATE_MEDIUM ; } - else if ( FPGA_LEVEL_HIGH == getFPGAP25FloaterState() ) + else if ( FPGA_LEVEL_HIGH == levelStatus ) { currentLevelStatus = LEVEL_STATE_HIGH ; } @@ -301,6 +306,7 @@ { SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_DD_INVALID_LEVEL_ID, (U32)levelId ) } + return currentLevelStatus; }