mirror of
https://github.com/OneOfEleven/uv-k5-firmware-custom.git
synced 2025-04-28 14:21:25 +03:00
Dual watch count down constants
This commit is contained in:
parent
fde690a74a
commit
d95ba32be5
75
app/app.c
75
app/app.c
@ -91,7 +91,7 @@ static void APP_CheckForIncoming(void)
|
||||
return;
|
||||
}
|
||||
|
||||
gDualWatchCountdown = 100;
|
||||
gDualWatchCountdown = dual_watch_count_after_rx;
|
||||
gScheduleDualWatch = false;
|
||||
}
|
||||
else
|
||||
@ -156,7 +156,7 @@ static void APP_HandleIncoming(void)
|
||||
{
|
||||
if (gRxReceptionMode == RX_MODE_DETECTED)
|
||||
{
|
||||
gDualWatchCountdown = 500;
|
||||
gDualWatchCountdown = dual_watch_count_after_1;
|
||||
gScheduleDualWatch = false;
|
||||
gRxReceptionMode = RX_MODE_LISTENING;
|
||||
return;
|
||||
@ -432,7 +432,8 @@ void APP_StartListening(FUNCTION_Type_t Function)
|
||||
if (gScanState == SCAN_OFF && gCssScanMode == CSS_SCAN_MODE_OFF && gEeprom.DUAL_WATCH != DUAL_WATCH_OFF)
|
||||
{
|
||||
gRxVfoIsActive = true;
|
||||
gDualWatchCountdown = 360;
|
||||
|
||||
gDualWatchCountdown = dual_watch_count_after_2;
|
||||
gScheduleDualWatch = false;
|
||||
}
|
||||
|
||||
@ -572,17 +573,17 @@ static void DUALWATCH_Alternate(void)
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
gEeprom.RX_CHANNEL = 1 - gEeprom.RX_CHANNEL;
|
||||
{ // toggle between VFO's
|
||||
gEeprom.RX_CHANNEL = (1 - gEeprom.RX_CHANNEL) & 1;
|
||||
gRxVfo = &gEeprom.VfoInfo[gEeprom.RX_CHANNEL];
|
||||
}
|
||||
|
||||
RADIO_SetupRegisters(false);
|
||||
|
||||
#ifndef DISABLE_NOAA
|
||||
gDualWatchCountdown = gIsNoaaMode ? 7 : 10;
|
||||
gDualWatchCountdown = gIsNoaaMode ? dual_watch_count_noaa : dual_watch_count_toggle;
|
||||
#else
|
||||
gDualWatchCountdown = 10;
|
||||
gDualWatchCountdown = dual_watch_count_toggle;
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -592,14 +593,17 @@ void APP_CheckRadioInterrupts(void)
|
||||
return;
|
||||
|
||||
while (BK4819_ReadRegister(BK4819_REG_0C) & 1u)
|
||||
{
|
||||
uint16_t Mask;
|
||||
{ // BK chip interrupt request
|
||||
|
||||
uint16_t interrupt_status_bits;
|
||||
|
||||
// reset the interrupt ?
|
||||
BK4819_WriteRegister(BK4819_REG_02, 0);
|
||||
|
||||
Mask = BK4819_ReadRegister(BK4819_REG_02);
|
||||
// fetch the interrupt status bits
|
||||
interrupt_status_bits = BK4819_ReadRegister(BK4819_REG_02);
|
||||
|
||||
if (Mask & BK4819_REG_02_DTMF_5TONE_FOUND)
|
||||
if (interrupt_status_bits & BK4819_REG_02_DTMF_5TONE_FOUND)
|
||||
{
|
||||
gDTMF_RequestPending = true;
|
||||
gDTMF_RecvTimeout = 5;
|
||||
@ -618,25 +622,25 @@ void APP_CheckRadioInterrupts(void)
|
||||
DTMF_HandleRequest();
|
||||
}
|
||||
|
||||
if (Mask & BK4819_REG_02_CxCSS_TAIL)
|
||||
if (interrupt_status_bits & BK4819_REG_02_CxCSS_TAIL)
|
||||
g_CxCSS_TAIL_Found = true;
|
||||
|
||||
if (Mask & BK4819_REG_02_CDCSS_LOST)
|
||||
if (interrupt_status_bits & BK4819_REG_02_CDCSS_LOST)
|
||||
{
|
||||
g_CDCSS_Lost = true;
|
||||
gCDCSSCodeType = BK4819_GetCDCSSCodeType();
|
||||
}
|
||||
|
||||
if (Mask & BK4819_REG_02_CDCSS_FOUND)
|
||||
if (interrupt_status_bits & BK4819_REG_02_CDCSS_FOUND)
|
||||
g_CDCSS_Lost = false;
|
||||
|
||||
if (Mask & BK4819_REG_02_CTCSS_LOST)
|
||||
if (interrupt_status_bits & BK4819_REG_02_CTCSS_LOST)
|
||||
g_CTCSS_Lost = true;
|
||||
|
||||
if (Mask & BK4819_REG_02_CTCSS_FOUND)
|
||||
if (interrupt_status_bits & BK4819_REG_02_CTCSS_FOUND)
|
||||
g_CTCSS_Lost = false;
|
||||
|
||||
if (Mask & BK4819_REG_02_VOX_LOST)
|
||||
if (interrupt_status_bits & BK4819_REG_02_VOX_LOST)
|
||||
{
|
||||
g_VOX_Lost = true;
|
||||
gVoxPauseCountdown = 10;
|
||||
@ -649,34 +653,37 @@ void APP_CheckRadioInterrupts(void)
|
||||
gBatterySaveCountdownExpired = 0;
|
||||
}
|
||||
|
||||
if (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF && (gScheduleDualWatch || gDualWatchCountdown < 20))
|
||||
if (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF && (gScheduleDualWatch || gDualWatchCountdown < dual_watch_count_after_vox))
|
||||
{
|
||||
gDualWatchCountdown = 20;
|
||||
gDualWatchCountdown = dual_watch_count_after_vox;
|
||||
gScheduleDualWatch = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (Mask & BK4819_REG_02_VOX_FOUND)
|
||||
if (interrupt_status_bits & BK4819_REG_02_VOX_FOUND)
|
||||
{
|
||||
g_VOX_Lost = false;
|
||||
gVoxPauseCountdown = 0;
|
||||
}
|
||||
|
||||
if (Mask & BK4819_REG_02_SQUELCH_LOST)
|
||||
if (interrupt_status_bits & BK4819_REG_02_SQUELCH_LOST)
|
||||
{
|
||||
g_SquelchLost = true;
|
||||
BK4819_ToggleGpioOut(BK4819_GPIO0_PIN28_GREEN, true);
|
||||
}
|
||||
|
||||
if (Mask & BK4819_REG_02_SQUELCH_FOUND)
|
||||
if (interrupt_status_bits & BK4819_REG_02_SQUELCH_FOUND)
|
||||
{
|
||||
g_SquelchLost = false;
|
||||
BK4819_ToggleGpioOut(BK4819_GPIO0_PIN28_GREEN, false);
|
||||
}
|
||||
|
||||
#ifndef DISABLE_AIRCOPY
|
||||
if (Mask & BK4819_REG_02_FSK_FIFO_ALMOST_FULL && gScreenToDisplay == DISPLAY_AIRCOPY && gAircopyState == AIRCOPY_TRANSFER && gAirCopyIsSendMode == 0)
|
||||
if (interrupt_status_bits & BK4819_REG_02_FSK_FIFO_ALMOST_FULL &&
|
||||
gScreenToDisplay == DISPLAY_AIRCOPY &&
|
||||
gAircopyState == AIRCOPY_TRANSFER &&
|
||||
gAirCopyIsSendMode == 0)
|
||||
{
|
||||
unsigned int i;
|
||||
for (i = 0; i < 4; i++)
|
||||
@ -692,16 +699,17 @@ void APP_EndTransmission(void)
|
||||
RADIO_SendEndOfTransmission();
|
||||
|
||||
if (gCurrentVfo->pTX->CodeType != CODE_TYPE_OFF)
|
||||
{ // CTCSS/CDCSS is enabled
|
||||
{ // CTCSS/DCS is enabled
|
||||
|
||||
//if (gEeprom.TAIL_NOTE_ELIMINATION && gEeprom.REPEATER_TAIL_TONE_ELIMINATION > 0)
|
||||
if (gEeprom.TAIL_NOTE_ELIMINATION)
|
||||
{ // send the tail tone
|
||||
{ // send the CTCSS/DCS tail tone - allows the receivers to mute the usual FM squelch tail/crash
|
||||
RADIO_EnableCxCSS();
|
||||
}
|
||||
#if 0
|
||||
else
|
||||
{ // TX a short blank carrier - gives the receivers time to mute RX audio before we drop carrier
|
||||
{ // TX a short blank carrier
|
||||
// this gives the receivers time to mute RX audio before we drop carrier
|
||||
BK4819_ExitSubAu();
|
||||
SYSTEM_DelayMs(200);
|
||||
}
|
||||
@ -879,15 +887,16 @@ void APP_Update(void)
|
||||
{
|
||||
if (!gPttIsPressed && !gFmRadioMode && gDTMF_CallState == DTMF_CALL_STATE_NONE && gCurrentFunction != FUNCTION_POWER_SAVE)
|
||||
{
|
||||
DUALWATCH_Alternate();
|
||||
gScheduleDualWatch = false;
|
||||
|
||||
DUALWATCH_Alternate(); // toggle between the two VFO's
|
||||
|
||||
if (gRxVfoIsActive && gScreenToDisplay == DISPLAY_MAIN)
|
||||
GUI_SelectNextDisplay(DISPLAY_MAIN);
|
||||
|
||||
gRxVfoIsActive = false;
|
||||
gScanPauseMode = false;
|
||||
gRxReceptionMode = RX_MODE_NONE;
|
||||
gScheduleDualWatch = false;
|
||||
gRxVfoIsActive = false;
|
||||
gScanPauseMode = false;
|
||||
gRxReceptionMode = RX_MODE_NONE;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -955,7 +964,7 @@ void APP_Update(void)
|
||||
|
||||
if (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF && gScanState == SCAN_OFF && gCssScanMode == CSS_SCAN_MODE_OFF)
|
||||
{
|
||||
DUALWATCH_Alternate();
|
||||
DUALWATCH_Alternate(); // toggle between the two VFO's
|
||||
gUpdateRSSI = false;
|
||||
}
|
||||
|
||||
@ -982,7 +991,7 @@ void APP_Update(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
DUALWATCH_Alternate();
|
||||
DUALWATCH_Alternate(); // toggle between the two VFO's
|
||||
|
||||
gUpdateRSSI = true;
|
||||
gBatterySave = 10;
|
||||
|
@ -286,50 +286,50 @@ enum {
|
||||
|
||||
// REG 51
|
||||
|
||||
#define BK4819_REG_51_SHIFT_ENABLE_CxCSS 15
|
||||
#define BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT 14
|
||||
#define BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY 13
|
||||
#define BK4819_REG_51_SHIFT_CxCSS_MODE 12
|
||||
#define BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH 11
|
||||
#define BK4819_REG_51_SHIFT_1050HZ_DETECTION 10
|
||||
#define BK4819_REG_51_SHIFT_AUTO_CDCSS_BW 9
|
||||
#define BK4819_REG_51_SHIFT_AUTO_CTCSS_BW 8
|
||||
#define BK4819_REG_51_SHIFT_CxCSS_TX_GAIN1 0
|
||||
#define BK4819_REG_51_SHIFT_ENABLE_CxCSS 15
|
||||
#define BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT 14
|
||||
#define BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY 13
|
||||
#define BK4819_REG_51_SHIFT_CxCSS_MODE 12
|
||||
#define BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH 11
|
||||
#define BK4819_REG_51_SHIFT_1050HZ_DETECTION 10
|
||||
#define BK4819_REG_51_SHIFT_AUTO_CDCSS_BW 9
|
||||
#define BK4819_REG_51_SHIFT_AUTO_CTCSS_BW 8
|
||||
#define BK4819_REG_51_SHIFT_CxCSS_TX_GAIN1 0
|
||||
|
||||
#define BK4819_REG_51_MASK_ENABLE_CxCSS (0x01U << BK4819_REG_51_SHIFT_ENABLE_CxCSS)
|
||||
#define BK4819_REG_51_MASK_GPIO6_PIN2_INPUT (0x01U << BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT)
|
||||
#define BK4819_REG_51_MASK_TX_CDCSS_POLARITY (0x01U << BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY)
|
||||
#define BK4819_REG_51_MASK_CxCSS_MODE (0x01U << BK4819_REG_51_SHIFT_CxCSS_MODE)
|
||||
#define BK4819_REG_51_MASK_CDCSS_BIT_WIDTH (0x01U << BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH)
|
||||
#define BK4819_REG_51_MASK_1050HZ_DETECTION (0x01U << BK4819_REG_51_SHIFT_1050HZ_DETECTION)
|
||||
#define BK4819_REG_51_MASK_AUTO_CDCSS_BW (0x01U << BK4819_REG_51_SHIFT_AUTO_CDCSS_BW)
|
||||
#define BK4819_REG_51_MASK_AUTO_CTCSS_BW (0x01U << BK4819_REG_51_SHIFT_AUTO_CTCSS_BW)
|
||||
#define BK4819_REG_51_MASK_CxCSS_TX_GAIN1 (0x7FU << BK4819_REG_51_SHIFT_CxCSS_TX_GAIN1)
|
||||
#define BK4819_REG_51_MASK_ENABLE_CxCSS (0x01U << BK4819_REG_51_SHIFT_ENABLE_CxCSS)
|
||||
#define BK4819_REG_51_MASK_GPIO6_PIN2_INPUT (0x01U << BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT)
|
||||
#define BK4819_REG_51_MASK_TX_CDCSS_POLARITY (0x01U << BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY)
|
||||
#define BK4819_REG_51_MASK_CxCSS_MODE (0x01U << BK4819_REG_51_SHIFT_CxCSS_MODE)
|
||||
#define BK4819_REG_51_MASK_CDCSS_BIT_WIDTH (0x01U << BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH)
|
||||
#define BK4819_REG_51_MASK_1050HZ_DETECTION (0x01U << BK4819_REG_51_SHIFT_1050HZ_DETECTION)
|
||||
#define BK4819_REG_51_MASK_AUTO_CDCSS_BW (0x01U << BK4819_REG_51_SHIFT_AUTO_CDCSS_BW)
|
||||
#define BK4819_REG_51_MASK_AUTO_CTCSS_BW (0x01U << BK4819_REG_51_SHIFT_AUTO_CTCSS_BW)
|
||||
#define BK4819_REG_51_MASK_CxCSS_TX_GAIN1 (0x7FU << BK4819_REG_51_SHIFT_CxCSS_TX_GAIN1)
|
||||
|
||||
enum {
|
||||
BK4819_REG_51_ENABLE_CxCSS = (1U << BK4819_REG_51_SHIFT_ENABLE_CxCSS),
|
||||
BK4819_REG_51_DISABLE_CxCSS = (0U << BK4819_REG_51_SHIFT_ENABLE_CxCSS),
|
||||
BK4819_REG_51_ENABLE_CxCSS = (1U << BK4819_REG_51_SHIFT_ENABLE_CxCSS),
|
||||
BK4819_REG_51_DISABLE_CxCSS = (0U << BK4819_REG_51_SHIFT_ENABLE_CxCSS),
|
||||
|
||||
BK4819_REG_51_GPIO6_PIN2_INPUT = (1U << BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT),
|
||||
BK4819_REG_51_GPIO6_PIN2_NORMAL = (0U << BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT),
|
||||
BK4819_REG_51_GPIO6_PIN2_INPUT = (1U << BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT),
|
||||
BK4819_REG_51_GPIO6_PIN2_NORMAL = (0U << BK4819_REG_51_SHIFT_GPIO6_PIN2_INPUT),
|
||||
|
||||
BK4819_REG_51_TX_CDCSS_NEGATIVE = (1U << BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY),
|
||||
BK4819_REG_51_TX_CDCSS_POSITIVE = (0U << BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY),
|
||||
BK4819_REG_51_TX_CDCSS_NEGATIVE = (1U << BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY),
|
||||
BK4819_REG_51_TX_CDCSS_POSITIVE = (0U << BK4819_REG_51_SHIFT_TX_CDCSS_POLARITY),
|
||||
|
||||
BK4819_REG_51_MODE_CTCSS = (1U << BK4819_REG_51_SHIFT_CxCSS_MODE),
|
||||
BK4819_REG_51_MODE_CDCSS = (0U << BK4819_REG_51_SHIFT_CxCSS_MODE),
|
||||
BK4819_REG_51_MODE_CTCSS = (1U << BK4819_REG_51_SHIFT_CxCSS_MODE),
|
||||
BK4819_REG_51_MODE_CDCSS = (0U << BK4819_REG_51_SHIFT_CxCSS_MODE),
|
||||
|
||||
BK4819_REG_51_CDCSS_24_BIT = (1U << BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH),
|
||||
BK4819_REG_51_CDCSS_23_BIT = (0U << BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH),
|
||||
BK4819_REG_51_CDCSS_24_BIT = (1U << BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH),
|
||||
BK4819_REG_51_CDCSS_23_BIT = (0U << BK4819_REG_51_SHIFT_CDCSS_BIT_WIDTH),
|
||||
|
||||
BK4819_REG_51_1050HZ_DETECTION = (1U << BK4819_REG_51_SHIFT_1050HZ_DETECTION),
|
||||
BK4819_REG_51_1050HZ_NO_DETECTION = (0U << BK4819_REG_51_SHIFT_1050HZ_DETECTION),
|
||||
BK4819_REG_51_1050HZ_DETECTION = (1U << BK4819_REG_51_SHIFT_1050HZ_DETECTION),
|
||||
BK4819_REG_51_1050HZ_NO_DETECTION = (0U << BK4819_REG_51_SHIFT_1050HZ_DETECTION),
|
||||
|
||||
BK4819_REG_51_AUTO_CDCSS_BW_DISABLE = (1U << BK4819_REG_51_SHIFT_AUTO_CDCSS_BW),
|
||||
BK4819_REG_51_AUTO_CDCSS_BW_ENABLE = (0U << BK4819_REG_51_SHIFT_AUTO_CDCSS_BW),
|
||||
BK4819_REG_51_AUTO_CDCSS_BW_DISABLE = (1U << BK4819_REG_51_SHIFT_AUTO_CDCSS_BW),
|
||||
BK4819_REG_51_AUTO_CDCSS_BW_ENABLE = (0U << BK4819_REG_51_SHIFT_AUTO_CDCSS_BW),
|
||||
|
||||
BK4819_REG_51_AUTO_CTCSS_BW_DISABLE = (1U << BK4819_REG_51_SHIFT_AUTO_CTCSS_BW),
|
||||
BK4819_REG_51_AUTO_CTCSS_BW_ENABLE = (0U << BK4819_REG_51_SHIFT_AUTO_CTCSS_BW),
|
||||
BK4819_REG_51_AUTO_CTCSS_BW_DISABLE = (1U << BK4819_REG_51_SHIFT_AUTO_CTCSS_BW),
|
||||
BK4819_REG_51_AUTO_CTCSS_BW_ENABLE = (0U << BK4819_REG_51_SHIFT_AUTO_CTCSS_BW),
|
||||
};
|
||||
|
||||
// REG 70
|
||||
|
@ -604,6 +604,16 @@ void BK4819_TxOn_Beep(void)
|
||||
|
||||
void BK4819_ExitSubAu(void)
|
||||
{
|
||||
// REG_51 <15> 0 1 = Enable TxCTCSS/CDCSS 0 = Disable
|
||||
// REG_51 <14> 0 1 = GPIO0Input for CDCSS 0 = Normal Mode.(for BK4819v3)
|
||||
// REG_51 <13> 0 1 = Transmit negative CDCSS code 0 = Transmit positive CDCSScode
|
||||
// REG_51 <12> 0 CTCSS/CDCSS mode selection 1 = CTCSS 0 = CDCSS
|
||||
// REG_51 <11> 0 CDCSS 24/23bit selection 1 = 24bit 0 = 23bit
|
||||
// REG_51 <10> 0 1050HzDetectionMode 1 = 1050/4 Detect Enable, CTC1 should be set to 1050/4 Hz
|
||||
// REG_51 <9> 0 Auto CDCSS Bw Mode 1 = Disable 0 = Enable.
|
||||
// REG_51 <8> 0 Auto CTCSS Bw Mode 0 = Enable 1 = Disable
|
||||
// REG_51 <6:0> 0 CTCSS/CDCSS Tx Gain1 Tuning 0 = min 127 = max
|
||||
|
||||
BK4819_WriteRegister(BK4819_REG_51, 0x0000);
|
||||
}
|
||||
|
||||
@ -853,6 +863,17 @@ void BK4819_EnableFrequencyScan(void)
|
||||
void BK4819_SetScanFrequency(uint32_t Frequency)
|
||||
{
|
||||
BK4819_SetFrequency(Frequency);
|
||||
|
||||
// REG_51 <15> 0 1 = Enable TxCTCSS/CDCSS 0 = Disable
|
||||
// REG_51 <14> 0 1 = GPIO0 Input for CDCSS 0 = Normal Mode.(for BK4819v3)
|
||||
// REG_51 <13> 0 1 = Transmit negative CDCSS code 0 = Transmit positive CDCSScode
|
||||
// REG_51 <12> 0 CTCSS/CDCSS mode selection 1 = CTCSS 0 = CDCSS
|
||||
// REG_51 <11> 0 CDCSS 24/23bit selection 1 = 24bit 0 = 23bit
|
||||
// REG_51 <10> 0 1050HzDetectionMode 1 = 1050/4 Detect Enable, CTC1 should be set to 1050/4 Hz
|
||||
// REG_51 <9> 0 Auto CDCSS Bw Mode 1 = Disable 0 = Enable.
|
||||
// REG_51 <8> 0 Auto CTCSS Bw Mode 0 = Enable 1 = Disable
|
||||
// REG_51 <6:0> 0 CTCSS/CDCSS Tx Gain1 Tuning 0 = min 127 = max
|
||||
|
||||
BK4819_WriteRegister(BK4819_REG_51, 0
|
||||
| BK4819_REG_51_DISABLE_CxCSS
|
||||
| BK4819_REG_51_GPIO6_PIN2_NORMAL
|
||||
@ -862,6 +883,7 @@ void BK4819_SetScanFrequency(uint32_t Frequency)
|
||||
| BK4819_REG_51_1050HZ_NO_DETECTION
|
||||
| BK4819_REG_51_AUTO_CDCSS_BW_DISABLE
|
||||
| BK4819_REG_51_AUTO_CTCSS_BW_DISABLE);
|
||||
|
||||
BK4819_RX_TurnOn();
|
||||
}
|
||||
|
||||
|
BIN
firmware.bin
BIN
firmware.bin
Binary file not shown.
Binary file not shown.
9
misc.c
9
misc.c
@ -30,6 +30,15 @@ const uint32_t gDefaultAesKey[4] = {0x4AA5CC60, 0x0312CC5F, 0xFFD2DABB, 0x6BB
|
||||
|
||||
const uint8_t gMicGain_dB2[5] = {3, 8, 16, 24, 31};
|
||||
|
||||
// 10ms count down resolution
|
||||
const uint16_t dual_watch_count_after_tx = 3600 / 10; // 3.6 sec after TX ends
|
||||
const uint16_t dual_watch_count_after_rx = 1000 / 10; // 1 sec after RX ends ?
|
||||
const uint16_t dual_watch_count_after_1 = 5000 / 10; // 5 sec
|
||||
const uint16_t dual_watch_count_after_2 = 3600 / 10; // 3.6 sec
|
||||
const uint16_t dual_watch_count_toggle = 100 / 10; // 100ms between VFO toggles
|
||||
const uint16_t dual_watch_count_noaa = 70 / 10; // 70ms
|
||||
const uint16_t dual_watch_count_after_vox = 200 / 10; // 200ms
|
||||
|
||||
bool gSetting_350TX;
|
||||
bool gSetting_KILLED;
|
||||
bool gSetting_200TX;
|
||||
|
8
misc.h
8
misc.h
@ -83,6 +83,14 @@ extern const uint16_t gMin_bat_v;
|
||||
|
||||
extern const uint8_t gMicGain_dB2[5];
|
||||
|
||||
extern const uint16_t dual_watch_count_after_tx;
|
||||
extern const uint16_t dual_watch_count_after_rx;
|
||||
extern const uint16_t dual_watch_count_after_1;
|
||||
extern const uint16_t dual_watch_count_after_2;
|
||||
extern const uint16_t dual_watch_count_toggle;
|
||||
extern const uint16_t dual_watch_count_noaa;
|
||||
extern const uint16_t dual_watch_count_after_vox;
|
||||
|
||||
extern bool gSetting_350TX;
|
||||
extern bool gSetting_KILLED;
|
||||
extern bool gSetting_200TX;
|
||||
|
3
radio.c
3
radio.c
@ -799,8 +799,9 @@ void RADIO_PrepareTX(void)
|
||||
{
|
||||
if (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF)
|
||||
{
|
||||
gDualWatchCountdown = 360;
|
||||
gDualWatchCountdown = dual_watch_count_after_tx;
|
||||
gScheduleDualWatch = false;
|
||||
|
||||
if (!gRxVfoIsActive)
|
||||
{
|
||||
gEeprom.RX_CHANNEL = gEeprom.TX_CHANNEL;
|
||||
|
@ -71,9 +71,8 @@ void SystickHandler(void)
|
||||
DECREMENT_AND_TRIGGER(gBatterySave, gBatterySaveCountdownExpired);
|
||||
|
||||
if (gScanState == SCAN_OFF && gCssScanMode == CSS_SCAN_MODE_OFF && gEeprom.DUAL_WATCH != DUAL_WATCH_OFF)
|
||||
if (gCurrentFunction != FUNCTION_MONITOR && gCurrentFunction != FUNCTION_TRANSMIT)
|
||||
if (gCurrentFunction != FUNCTION_RECEIVE)
|
||||
DECREMENT_AND_TRIGGER(gDualWatchCountdown, gScheduleDualWatch);
|
||||
if (gCurrentFunction != FUNCTION_MONITOR && gCurrentFunction != FUNCTION_TRANSMIT && gCurrentFunction != FUNCTION_RECEIVE)
|
||||
DECREMENT_AND_TRIGGER(gDualWatchCountdown, gScheduleDualWatch);
|
||||
|
||||
#ifndef DISABLE_NOAA
|
||||
if (gScanState == SCAN_OFF && gCssScanMode == CSS_SCAN_MODE_OFF && gEeprom.DUAL_WATCH == DUAL_WATCH_OFF)
|
||||
|
Loading…
x
Reference in New Issue
Block a user