#include "Popup_Alarm_Handle.h"
#include "Sound_Alarm_handle.h"
#include "CAN_CH0_CAN_Communication_Matrix.h"
uint16_t u16SoundDiagCtr = 0xFFFF;
void Sound_Alarm_Trigger_DOOR(void)
{
if ( u8PopAlarmDoor )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_DOOR);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_DOOR);
}
}
void Sound_Alarm_Trigger_LDWS(void)
{
if (( SYS_OPR_STAT_IGN_ON )&&(Get_NodeConfig_LWDS() == 1)&&(MenuData.Ldws == 2))
{
if(( u8PopAlarmLDWS_L == 0)&&(u8PopAlarmLDWS_R == 0))
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_LDWS);
}
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_LDWS);
}
}
// Sound_uint8_t u8SoundAlarmGearPOnce;
void Sound_Alarm_Trigger_GEAR_P(void)
{
uint16_t u16SndTig = 0U;
if ( SYS_OPR_STAT_IGN_ON )
{
//{
if ( (Get_CAN_CH0_ID_10FF7521_Sig_PsngrDoorSts( ) == 1) || (Get_CAN_CH0_ID_10FF7521_Sig_DriverDoorSts( ) == 1) || (Get_CAN_CH0_ID_10FF7521_Sig_RHRDoorSts( ) == 1) )
{
uint16_t u16SndGear = Get_CAN_CH0_ID_18F00503_Sig_TransCurrentGear( );
if ( (Get_EngSpeed_Start_Flag( ) == 1U) )
{
if ( u16SndGear == 0X7D ) // N
{
if ( Line_In_Get_Status(LINE_IN_Handbrake) == 1U )
{
u16SndTig = 1;
}
}
else
{
u16SndTig = 1;
}
}
if ( u16SndGear == 0x7C ) // R
{
if ( Get_DispVechileSpeed( ) >= 10 )
{
u16SndTig = 1;
}
}
}
// if ( u16SndTig == 0 )
// {
// u8SoundAlarmGearPOnce = 1;
// }
//}
// else
// {
// u8SoundAlarmGearPOnce = 0U;
// }
if ( (u8DTC0XB8F0E0xx) || (u32RecSA03DTC == 0XB8F0E000) || (u8DTC0XCCF0E0xx) || (u32RecSA03DTC == 0XCCF0E000) )
{
u16SndTig = 1;
}
if ( (u8DTC0XB9F0E0xx) || (u32RecSA03DTC == 0xB9F0E000) || (u8DTC0XC1F0E0xx) || (u32RecSA03DTC == 0xC1F0E000) )
{
u16SndTig = 1;
}
if ( u8PopAlarmGearBoxHighTemp == 1 )
{
u16SndTig = 1;
}
}
if ( u8PopAlarmGearBoxFailure == 1 )
{
u16SndTig = 1;
}
if ( u16SndTig )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_GEAR_P);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_GEAR_P);
}
}
void Sound_Alarm_Trigger_RADAR(void)
{
if ( SYS_OPR_STAT_IGN_ON )
{
if ( Get_CAN_CH0_ID_10FF1021_Sig_ReverseSts( ) == 1U )
{
uint16_t u16SdRadar = 0;
if ( Get_CAN_CH0_ID_18FFB078_Sig_PAM_Voice( ) == 5U )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_RADAR_LOOP);
u16SdRadar = 1;
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_LOOP);
}
if ( Get_CAN_CH0_ID_18FFB078_Sig_PAM_Voice( ) == 4U )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_RADAR_8);
u16SdRadar = 1;
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_8);
}
if ( Get_CAN_CH0_ID_18FFB078_Sig_PAM_Voice( ) == 3U )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_RADAR_4);
u16SdRadar = 1;
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_4);
}
if ( Get_CAN_CH0_ID_18FFB078_Sig_PAM_Voice( ) == 2U )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_RADAR_2);
u16SdRadar = 1;
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_2);
}
if ( Get_CAN_CH0_ID_18FFB078_Sig_PAM_Voice( ) == 1U )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_RADAR_1);
u16SdRadar = 1;
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_1);
}
if ( u16SdRadar == 0 )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_RADAR_0);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_0);
}
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_LOOP);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_8);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_4);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_2);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_1);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_0);
}
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_LOOP);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_8);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_4);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_2);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_1);
Sound_Alarm_Delete_Normal(SOUND_ALARM_RADAR_0);
}
}
#define SOUND_ENGLUBR_TIME 80
uint8_t u8SoundEngineLubricatTime = 0;
void Sound_Alarm_Trigger_TEMP(void)
{
uint16_t u16SndTig = 0U;
if ( u8PopAlarmTemp )
{
u16SndTig = 1;
}
if ( u8PopAlarmEngineLubricate )
{
u16SndTig = 1;
}
if ( u16SndTig )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_TEMP);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_TEMP);
}
}
void Sound_Alarm_Trigger_Par_Full_Reset(void)
{
if ( SYS_OPR_STAT_IGN_ON )
{
if ( CAN_MSG_Status(&CAN_CH0_CanMsgOp, CAN_CH0_ID_can18FD7C00_Msg_Count) != CAN_SIG_LOST )
{
uint16_t u16SoundCondition = Get_CAN_CH0_ID_18FD7C00_Sig_DPFLampSts( );
if ( (u16SoundCondition == 2) || (u16SoundCondition == 4) )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_PAR_FULL_MANUAL_RESET);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_PAR_FULL_MANUAL_RESET )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_PAR_FULL_MANUAL_RESET);
}
}
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_PAR_FULL_MANUAL_RESET )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_PAR_FULL_MANUAL_RESET);
}
}
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_PAR_FULL_MANUAL_RESET);
}
}
void Sound_Alarm_Trigger_TBox(void)
{
if ( u8PopAlarmTBoxDismantle )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_TBOX);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_TBOX )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_TBOX);
}
}
if ( u8PopAlarmFuelSenFail )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_FUEL_SEN_FAIL);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_FUEL_SEN_FAIL )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_FUEL_SEN_FAIL);
}
}
// if ( u8SoundAlarmGearPOnce )
if ( (u8DTC0XCD160Bxx) || (u32RecSA03DTC == 0xCD160B00) )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_START_IN_P_ONCE);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_START_IN_P_ONCE )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_START_IN_P_ONCE);
}
}
if ( u8PopAlarmBreakToShift )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_BRAKE_TO_SHIFT);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_BRAKE_TO_SHIFT )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_BRAKE_TO_SHIFT);
}
}
if ( u8PopAlarmGearBoxCaution )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_GEARBOX_CAUTION);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_GEARBOX_CAUTION )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_GEARBOX_CAUTION);
}
}
if ( u8PopAlarmESCActive )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_ESC_ATCIVE);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_ESC_ATCIVE )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_ESC_ATCIVE);
}
}
if ( u8PopAlarmESCClose )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_ESC_CLOSE);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_ESC_CLOSE )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_ESC_CLOSE);
}
}
if ( u8PopAlarmESCFailure )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_ESC_FAILURE);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_ESC_FAILURE )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_ESC_FAILURE);
}
}
}
void Sound_Alarm_Trigger_LOW_OIL_PRESSURE(void)
{
}
void Sound_Alarm_Trigger_DPF(void)
{
if ( u8PopAlarmDPF )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_DPF);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_DPF )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_DPF);
}
}
}
void Sound_Alarm_Trigger_SPEED_LIMIT(void)
{
if ( SYS_OPR_STAT_IGN_ON )
{
if ( (CAN_MSG_Status(&CAN_CH0_CanMsgOp, CAN_CH0_ID_can18FF2100_Msg_Count) == CAN_SIG_LOST) || (CanReceive.Can_18FF2100 != 1) )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_SPEED_LIMIT);
}
else
{
if ( Get_CAN_CH0_ID_18FF2100_Sig_EDC_MaxVehSpeedLimSetp( ) <= (Common_Get_Act_V_Speed( ) / 10) )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_SPEED_LIMIT);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_SPEED_LIMIT);
}
}
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_SPEED_LIMIT);
}
}
void Sound_Alarm_Trigger_UREA(void)
{
// if ( u8PopAlarmUreaFailChange )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA);
// }
// }
// if ( u8PopAlarmUreaLowAdd )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_2);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_2 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_2);
// }
// }
// if ( u8PopAlarmUreaFailLimit75 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_3);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_3 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_3);
// }
// }
// if ( u8PopAlarmUreaLowLimit75 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_4);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_4 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_4);
// }
// }
// if ( u8PopAlarmUreaLowTqrqueLimit75 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_5);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_5 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_5);
// }
// }
// if ( u8PopAlarmUreaFailReset20 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_6);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_6 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_6);
// }
// }
// if ( u8PopAlarmUreaLowReset20 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_7);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_7 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_7);
// }
// }
// if ( u8PopAlarmUreaFail20 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_8);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_8 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_8);
// }
// }
// if ( u8PopAlarmUreaLow20 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_9);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_9 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_9);
// }
// }
// if ( u8PopAlarmLimit75Change )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_10);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_10 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_10);
// }
// }
// if ( u8PopAlarmEmissionFailService )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_11);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_11 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_11);
// }
// }
// if ( u8PopAlarmEmissionFailLimit75 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_12);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_12 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_12);
// }
// }
// if ( u8PopAlarmLimit75Service )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_13);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_13 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_13);
// }
// }
// if ( u8PopAlarmEmissionFailReset20 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_14);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_14 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_14);
// }
// }
// if ( u8PopAlarmEmissionFail20 )
// {
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA_15);
// }
// else
// {
// if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA_15 )
// {
// Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA_15);
// }
// }
if ( (u8PopAlarmUreaFailChange) || (u8PopAlarmUreaLowAdd) || (u8PopAlarmUreaFailLimit75) || (u8PopAlarmUreaLowLimit75) || (u8PopAlarmUreaLowTqrqueLimit75) || (u8PopAlarmUreaFailReset20) || (u8PopAlarmUreaLowReset20) || (u8PopAlarmUreaFail20) || (u8PopAlarmUreaLow20) || (u8PopAlarmLimit75Change) || (u8PopAlarmEmissionFailService) || (u8PopAlarmEmissionFailLimit75) || (u8PopAlarmLimit75Service) || (u8PopAlarmEmissionFailReset20) || (u8PopAlarmEmissionFail20) )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_UREA);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_UREA )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_UREA);
}
}
}
void Sound_Alarm_Trigger_TPMS(void)
{
if ( (u8PopAlarmTPMS) )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_TPMS);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_TPMS )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_TPMS);
}
}
if ( (u8PopAlarmTPMSConfigError) )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_TPMS_CONFIG_ERROR);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_TPMS_CONFIG_ERROR )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_TPMS_CONFIG_ERROR);
}
}
}
void Sound_Alarm_Trigger_SAFE_BELT(void)
{
if ( u8SafeBeltTrigger == 2 )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_SAFE_BELT);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_SAFE_BELT);
}
}
void Sound_Alarm_Trigger_LIGHT_LEFT_ON(void)
{
if ( u8PopAlarmPositionLight )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_LIGHT_LEFT_ON);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_LIGHT_LEFT_ON);
}
}
void Sound_Alarm_Trigger_UNPLUGGED_KEY(void)
{
if ( u8PopAlarmKEY )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_UNPLUGGED_KEY);
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_UNPLUGGED_KEY);
}
}
uint8_t u8SoundTurnL = 0U;
uint8_t u8SoundTurnR = 0U;
uint8_t u8TurnTickCount = 0;
uint8_t u8TurnTockCount = 0;
void Sound_Alarm_Trigger_TURN(void)
{
uint8_t u8SoundTurnLBuf = Get_CAN_CH0_ID_10FF1021_Sig_LHTurnSignalSts( );
uint8_t u8SoundTurnRBuf = Get_CAN_CH0_ID_10FF1021_Sig_RHTurnSignalSts( );
if ( SYS_OPR_STAT_HALT )
{
return;
}
if ( (Common_GetIgnOnTime( ) < SELF_CHECK_TIME) && (SYS_OPR_STAT_IGN_ON) )
{
return;
}
if ( (u16SoundDiagCtr <= 0x0B) )
{
return;
}
if ( u8TurnTickCount < 5 )
{
u8TurnTickCount++;
}
if ( u8TurnTickCount >= 5 )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_TICK);
}
if ( u8TurnTockCount < 5 )
{
u8TurnTockCount++;
}
if ( u8TurnTockCount >= 5 )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_TOCK);
}
if ( ((u8SoundTurnL == 1U) && (u8SoundTurnLBuf == 0U)) || ((u8SoundTurnR == 1U) && (u8SoundTurnRBuf == 0U)) )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_TOCK);
u8TurnTockCount = 0U;
}
if ( ((u8SoundTurnL == 0U) && (u8SoundTurnLBuf == 1U)) || ((u8SoundTurnR == 0U) && (u8SoundTurnRBuf == 1U)) )
{
Sound_Alarm_Request_Normal(SOUND_ALARM_TICK);
u8TurnTickCount = 0U;
}
u8SoundTurnL = u8SoundTurnLBuf;
u8SoundTurnR = u8SoundTurnRBuf;
}
Sound_uint32_t u32SoundEnableSuspend = 1;
void Sound_Alarm_Trigger_Volume(void)
{
/*当前有声音报警,且不是设置音量*/
if ( (Sound_Alarm_Current_Read( ) < SOUND_ALARM_MAX) && (Sound_Alarm_Current_Read( ) != SOUND_ALARM_VOLUME) )
{
}
else
{
Sound_Alarm_Request_Normal(SOUND_ALARM_VOLUME);
}
if ( u32SoundEnableSuspend == 1 )
{
uint32_t i = 0;
for ( i = SOUND_ALARM_DPF; i < SOUND_ALARM_MAX; i++ )
{
Sound_Alarm_Enable_Suspend(i, 0);
}
u32SoundEnableSuspend = 0;
}
}
void Sound_Alarm_Volume_Menu_Check(void)
{
if ( (Menu_Get_Current_Cursor_Information( ) != MENU_ITEM_SET_Sound) )
{
if ( u32SoundEnableSuspend == 0 )
{
uint32_t i = 0;
for ( i = SOUND_ALARM_DPF; i < SOUND_ALARM_MAX; i++ )
{
Sound_Alarm_Enable_Suspend(i, 1);
}
u32SoundEnableSuspend = 1;
}
}
}
void Sound_Alarm_Trigger_HILL_HOLD_MALF(void)
{
if ( (SYS_OPR_STAT_IGN_ON) && (COF_ESP_EXIST) )
{
if ( Get_CAN_CH0_ID_0A18A006_Sig_HhFail( ) == 1 )
{
// Sound_Alarm_Request_Normal(SOUND_ALARM_HILL_HOLD_MALF);
}
else
{
if ( Sound_Alarm_Current_Read( ) != SOUND_ALARM_HILL_HOLD_MALF )
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_HILL_HOLD_MALF);
}
}
}
else
{
Sound_Alarm_Delete_Normal(SOUND_ALARM_HILL_HOLD_MALF);
}
}
void Sound_Alarm_Trigger_Time(void)
{
if ( Get_EngSpeed_Start_Flag( ) == 1U )
{
if ( u8SoundEngineLubricatTime < SOUND_ENGLUBR_TIME )
{
u8SoundEngineLubricatTime++;
}
}
else
{
u8SoundEngineLubricatTime = 0;
}
}
void Sound_Alarm_Trigger_Delete_All(void)
{
Sound_Alarm_en_t enSoundIndexBuf = 0U;
for ( enSoundIndexBuf = 0U; enSoundIndexBuf < SOUND_ALARM_MAX; enSoundIndexBuf++ )
{
Sound_Alarm_Delete_Normal(enSoundIndexBuf);
}
}
void Sound_Alarm_Trigger_OFF_Init(void)
{
u16SoundDiagCtr = 0xFFFF;
Sound_Alarm_Trigger_Delete_All( );
}
void Sound_Alarm_Trigger_ON_Init(void)
{
Sound_Alarm_Trigger_Delete_All( );
u16SoundDiagCtr = 0xFFFF;
}
void Soung_Trigger_One(uint16_t u16SoundOne)
{
uint16_t i = 0;
for ( i = 0; i < SOUND_ALARM_MAX; i++ )
{
if ( u16SoundOne == i )
{
Sound_Alarm_Request_Normal(i);
}
else
{
Sound_Alarm_Delete_Normal(i);
}
}
}
void Sound_Alarm_Trigger_Service(void)
{
if ( SYS_OPR_STAT_HALT )
{
return;
}
if ( (u16SoundDiagCtr <= 0x0B) )
{
switch ( u16SoundDiagCtr )
{
case 0:
Sound_Alarm_Trigger_Delete_All( );
break;
case 1:
Soung_Trigger_One(SOUND_ALARM_DOOR);
break;
case 2:
Soung_Trigger_One(SOUND_ALARM_SAFE_BELT);
break;
case 3:
Soung_Trigger_One(SOUND_ALARM_TEMP);
break;
case 4:
Soung_Trigger_One(SOUND_ALARM_LOW_OIL_PRESSURE);
break;
case 5:
Soung_Trigger_One(SOUND_ALARM_UNPLUGGED_KEY);
break;
case 6:
Soung_Trigger_One(SOUND_ALARM_LIGHT_LEFT_ON);
break;
case 7:
Soung_Trigger_One(SOUND_ALARM_TICK);
break;
case 8:
Soung_Trigger_One(SOUND_ALARM_UREA);
break;
case 9:
Soung_Trigger_One(SOUND_ALARM_TPMS);
break;
case 0x0A:
// Soung_Trigger_One(SOUND_ALARM_DOOR);
break;
case 0X0B:
Soung_Trigger_One(SOUND_ALARM_RADAR_LOOP);
break;
default:
break;
}
return;
}
Sound_Alarm_Volume_Menu_Check( );
if ( (Common_GetIgnOnTime( ) >= SELF_CHECK_TIME) && (SYS_OPR_STAT_IGN_ON) )
{
Sound_Alarm_Trigger_DPF( );
Sound_Alarm_Trigger_DOOR( );
Sound_Alarm_Trigger_RADAR( );
Sound_Alarm_Trigger_GEAR_P( );
Sound_Alarm_Trigger_TEMP( );
Sound_Alarm_Trigger_Par_Full_Reset( );
Sound_Alarm_Trigger_SPEED_LIMIT( );
Sound_Alarm_Trigger_UREA( );
Sound_Alarm_Trigger_TPMS( );
Sound_Alarm_Trigger_SAFE_BELT( );
Sound_Alarm_Trigger_TBox( );
Sound_Alarm_Trigger_LOW_OIL_PRESSURE( );
Sound_Alarm_Trigger_HILL_HOLD_MALF( );
Sound_Alarm_Trigger_LDWS();
}
if ( SYS_OPR_STAT_IGN_OFF )
{
Sound_Alarm_Trigger_GEAR_P( );
Sound_Alarm_Trigger_LIGHT_LEFT_ON( );
Sound_Alarm_Trigger_UNPLUGGED_KEY( );
}
// Sound_Alarm_Trigger_TURN();
}
/*
u8OnOff : 0 诊断不控制 3 诊断控制
u8Index :受控时,具体播放哪个报警
*/
void Sound_Diag_Ctrl(Sound_uint8_t u8OnOff, Sound_uint8_t u8Index)
{
if ( u8OnOff == 3 )
{
u16SoundDiagCtr = u8Index;
}
else
{
u16SoundDiagCtr = 0xFFFF;
}
}
Sound_uint16_t Sound_Get_Diag_Ctrl(void)
{
return u16SoundDiagCtr;
}