Simplify logic in radio.c
This commit is contained in:
48
radio.c
48
radio.c
@@ -724,26 +724,22 @@ void RADIO_SetupRegisters(bool switchToForeground)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef ENABLE_VOX
|
#ifdef ENABLE_VOX
|
||||||
|
if (gEeprom.VOX_SWITCH && gCurrentVfo->Modulation == MODULATION_FM
|
||||||
#ifdef ENABLE_NOAA
|
#ifdef ENABLE_NOAA
|
||||||
|
&& !IS_NOAA_CHANNEL(gCurrentVfo->CHANNEL_SAVE)
|
||||||
|
#endif
|
||||||
#ifdef ENABLE_FMRADIO
|
#ifdef ENABLE_FMRADIO
|
||||||
if (gEeprom.VOX_SWITCH && !gFmRadioMode && !IS_NOAA_CHANNEL(gCurrentVfo->CHANNEL_SAVE) && gCurrentVfo->Modulation == MODULATION_FM)
|
&& !gFmRadioMode
|
||||||
#else
|
|
||||||
if (gEeprom.VOX_SWITCH && !IS_NOAA_CHANNEL(gCurrentVfo->CHANNEL_SAVE) && gCurrentVfo->Modulation == MODULATION_FM)
|
|
||||||
#endif
|
#endif
|
||||||
#else
|
){
|
||||||
#ifdef ENABLE_FMRADIO
|
|
||||||
if (gEeprom.VOX_SWITCH && !gFmRadioMode && gCurrentVfo->Modulation == MODULATION_FM)
|
|
||||||
#else
|
|
||||||
if (gEeprom.VOX_SWITCH && gCurrentVfo->Modulation == MODULATION_FM)
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
BK4819_EnableVox(gEeprom.VOX1_THRESHOLD, gEeprom.VOX0_THRESHOLD);
|
BK4819_EnableVox(gEeprom.VOX1_THRESHOLD, gEeprom.VOX0_THRESHOLD);
|
||||||
InterruptMask |= BK4819_REG_3F_VOX_FOUND | BK4819_REG_3F_VOX_LOST;
|
InterruptMask |= BK4819_REG_3F_VOX_FOUND | BK4819_REG_3F_VOX_LOST;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
|
{
|
||||||
BK4819_DisableVox();
|
BK4819_DisableVox();
|
||||||
|
}
|
||||||
|
|
||||||
// RX expander
|
// RX expander
|
||||||
BK4819_SetCompander((gRxVfo->Modulation == MODULATION_FM && gRxVfo->Compander >= 2) ? gRxVfo->Compander : 0);
|
BK4819_SetCompander((gRxVfo->Modulation == MODULATION_FM && gRxVfo->Compander >= 2) ? gRxVfo->Compander : 0);
|
||||||
@@ -759,16 +755,12 @@ void RADIO_SetupRegisters(bool switchToForeground)
|
|||||||
InterruptMask |= BK4819_REG_3F_DTMF_5TONE_FOUND;
|
InterruptMask |= BK4819_REG_3F_DTMF_5TONE_FOUND;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
if (gCurrentFunction != FUNCTION_TRANSMIT)
|
|
||||||
{
|
|
||||||
BK4819_DisableDTMF();
|
BK4819_DisableDTMF();
|
||||||
|
|
||||||
|
if (gCurrentFunction != FUNCTION_TRANSMIT) {
|
||||||
BK4819_EnableDTMF();
|
BK4819_EnableDTMF();
|
||||||
InterruptMask |= BK4819_REG_3F_DTMF_5TONE_FOUND;
|
InterruptMask |= BK4819_REG_3F_DTMF_5TONE_FOUND;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
BK4819_DisableDTMF();
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
RADIO_SetupAGC(gRxVfo->Modulation == MODULATION_AM, false);
|
RADIO_SetupAGC(gRxVfo->Modulation == MODULATION_AM, false);
|
||||||
@@ -1042,15 +1034,12 @@ void RADIO_PrepareTX(void)
|
|||||||
#ifdef ENABLE_DTMF_CALLING
|
#ifdef ENABLE_DTMF_CALLING
|
||||||
if (gDTMF_ReplyState == DTMF_REPLY_ANI)
|
if (gDTMF_ReplyState == DTMF_REPLY_ANI)
|
||||||
{
|
{
|
||||||
if (gDTMF_CallMode == DTMF_CALL_MODE_DTMF)
|
gDTMF_IsTx = gDTMF_CallMode == DTMF_CALL_MODE_DTMF;
|
||||||
{
|
|
||||||
gDTMF_IsTx = true;
|
if (gDTMF_IsTx) {
|
||||||
gDTMF_CallState = DTMF_CALL_STATE_NONE;
|
gDTMF_CallState = DTMF_CALL_STATE_NONE;
|
||||||
gDTMF_TxStopCountdown_500ms = DTMF_txstop_countdown_500ms;
|
gDTMF_TxStopCountdown_500ms = DTMF_txstop_countdown_500ms;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
gDTMF_IsTx = false;
|
|
||||||
gDTMF_CallState = DTMF_CALL_STATE_CALL_OUT;
|
gDTMF_CallState = DTMF_CALL_STATE_CALL_OUT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1110,20 +1099,17 @@ void RADIO_SendEndOfTransmission(void)
|
|||||||
{
|
{
|
||||||
if (gEeprom.ROGER == ROGER_MODE_ROGER)
|
if (gEeprom.ROGER == ROGER_MODE_ROGER)
|
||||||
BK4819_PlayRoger();
|
BK4819_PlayRoger();
|
||||||
else
|
else if (gEeprom.ROGER == ROGER_MODE_MDC)
|
||||||
if (gEeprom.ROGER == ROGER_MODE_MDC)
|
|
||||||
BK4819_PlayRogerMDC();
|
BK4819_PlayRogerMDC();
|
||||||
|
|
||||||
if (gCurrentVfo->DTMF_PTT_ID_TX_MODE == PTT_ID_APOLLO)
|
if (gCurrentVfo->DTMF_PTT_ID_TX_MODE == PTT_ID_APOLLO)
|
||||||
BK4819_PlaySingleTone(2475, 250, 28, gEeprom.DTMF_SIDE_TONE);
|
BK4819_PlaySingleTone(2475, 250, 28, gEeprom.DTMF_SIDE_TONE);
|
||||||
|
|
||||||
if (
|
if ((gCurrentVfo->DTMF_PTT_ID_TX_MODE == PTT_ID_TX_DOWN || gCurrentVfo->DTMF_PTT_ID_TX_MODE == PTT_ID_BOTH)
|
||||||
#ifdef ENABLE_DTMF_CALLING
|
#ifdef ENABLE_DTMF_CALLING
|
||||||
gDTMF_CallState == DTMF_CALL_STATE_NONE &&
|
&& gDTMF_CallState == DTMF_CALL_STATE_NONE
|
||||||
#endif
|
#endif
|
||||||
(gCurrentVfo->DTMF_PTT_ID_TX_MODE == PTT_ID_TX_DOWN ||
|
) { // end-of-tx
|
||||||
gCurrentVfo->DTMF_PTT_ID_TX_MODE == PTT_ID_BOTH))
|
|
||||||
{ // end-of-tx
|
|
||||||
if (gEeprom.DTMF_SIDE_TONE)
|
if (gEeprom.DTMF_SIDE_TONE)
|
||||||
{
|
{
|
||||||
AUDIO_AudioPathOn();
|
AUDIO_AudioPathOn();
|
||||||
|
Reference in New Issue
Block a user