Fix EOT sound alert

This commit is contained in:
Armel FAUVEAU
2024-02-11 23:18:34 +01:00
parent 421f3d78a7
commit b8e209c6c8
3 changed files with 32 additions and 14 deletions

21
audio.c
View File

@@ -43,8 +43,9 @@ void AUDIO_PlayBeep(BEEP_Type_t Beep)
Beep != BEEP_880HZ_200MS && Beep != BEEP_880HZ_200MS &&
Beep != BEEP_880HZ_500MS && Beep != BEEP_880HZ_500MS &&
#ifdef ENABLE_FEAT_F4HWN #ifdef ENABLE_FEAT_F4HWN
Beep != BEEP_400HZ_30MS &&
Beep != BEEP_600HZ_30MS &&
Beep != BEEP_800HZ_30MS && Beep != BEEP_800HZ_30MS &&
Beep != BEEP_1000HZ_30MS &&
#endif #endif
!gEeprom.BEEP_CONTROL) !gEeprom.BEEP_CONTROL)
return; return;
@@ -99,12 +100,16 @@ void AUDIO_PlayBeep(BEEP_Type_t Beep)
ToneFrequency = 880; ToneFrequency = 880;
break; break;
#ifdef ENABLE_FEAT_F4HWN #ifdef ENABLE_FEAT_F4HWN
case BEEP_800HZ_30MS: case BEEP_400HZ_30MS:
ToneFrequency = 800; ToneFrequency = 400;
BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN)); BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN));
break; break;
case BEEP_1000HZ_30MS: case BEEP_600HZ_30MS:
ToneFrequency = 1000; ToneFrequency = 600;
BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN));
break;
case BEEP_800HZ_30MS:
ToneFrequency = 800;
BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN)); BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN));
break; break;
#endif #endif
@@ -148,14 +153,12 @@ void AUDIO_PlayBeep(BEEP_Type_t Beep)
Duration = 200; Duration = 200;
break; break;
#ifdef ENABLE_FEAT_F4HWN #ifdef ENABLE_FEAT_F4HWN
case BEEP_400HZ_30MS:
case BEEP_600HZ_30MS:
case BEEP_800HZ_30MS: case BEEP_800HZ_30MS:
BK4819_ExitTxMute(); BK4819_ExitTxMute();
Duration = 30; Duration = 30;
break; break;
case BEEP_1000HZ_30MS:
BK4819_ExitTxMute();
Duration = 30;
break;
#endif #endif
case BEEP_440HZ_500MS: case BEEP_440HZ_500MS:
case BEEP_880HZ_500MS: case BEEP_880HZ_500MS:

View File

@@ -35,8 +35,9 @@ enum BEEP_Type_t
BEEP_440HZ_40MS_OPTIONAL, BEEP_440HZ_40MS_OPTIONAL,
BEEP_880HZ_40MS_OPTIONAL, BEEP_880HZ_40MS_OPTIONAL,
#ifdef ENABLE_FEAT_F4HWN #ifdef ENABLE_FEAT_F4HWN
BEEP_400HZ_30MS,
BEEP_600HZ_30MS,
BEEP_800HZ_30MS, BEEP_800HZ_30MS,
BEEP_1000HZ_30MS,
#endif #endif
BEEP_880HZ_60MS_TRIPLE_BEEP BEEP_880HZ_60MS_TRIPLE_BEEP
}; };

View File

@@ -486,16 +486,30 @@ void UI_MAIN_TimeSlice500ms(void)
BK4819_ToggleGpioOut(BK4819_GPIO6_PIN2_GREEN, true); BK4819_ToggleGpioOut(BK4819_GPIO6_PIN2_GREEN, true);
} }
if(RXBlinkLedCounter > 6) if(RXBlinkLedCounter <= 6)
{ {
if(gSetting_set_eot == 1 || gSetting_set_eot == 3) if(gSetting_set_eot == 1 || gSetting_set_eot == 3)
{ {
AUDIO_PlayBeep(BEEP_800HZ_30MS); AUDIO_PlayBeep(BEEP_400HZ_30MS);
SYSTEM_DelayMs(300); }
}
else
{
if(gSetting_set_eot == 1 || gSetting_set_eot == 3)
{
if(RXBlinkLedCounter <= 8)
{
AUDIO_PlayBeep(BEEP_600HZ_30MS);
}
else
{
AUDIO_PlayBeep(BEEP_800HZ_30MS);
}
SYSTEM_DelayMs(200);
} }
else if(gSetting_set_eot == 2) else if(gSetting_set_eot == 2)
{ {
SYSTEM_DelayMs(350); SYSTEM_DelayMs(400);
} }
} }
} }