Improve ScnRev - scan resume mode

This commit is contained in:
Armel FAUVEAU
2024-09-22 05:07:04 +02:00
parent 62677f8c73
commit 5bfe710bb9
6 changed files with 54 additions and 3 deletions

View File

@@ -380,6 +380,8 @@ Skip:
if (gScanStateDir != SCAN_OFF) if (gScanStateDir != SCAN_OFF)
{ {
/*
switch (gEeprom.SCAN_RESUME_MODE) switch (gEeprom.SCAN_RESUME_MODE)
{ {
case SCAN_RESUME_TO: case SCAN_RESUME_TO:
@@ -394,6 +396,23 @@ Skip:
CHFRSCANNER_Stop(); CHFRSCANNER_Stop();
break; break;
} }
*/
switch (gEeprom.SCAN_RESUME_MODE)
{
case 0:
gScanPauseDelayIn_10ms = scan_pause_delay_in_6_10ms;
gScheduleScanListen = false;
break;
case 62:
CHFRSCANNER_Stop();
break;
default:
gScanPauseDelayIn_10ms = scan_pause_delay_in_1_10ms * gEeprom.SCAN_RESUME_MODE;
break;
}
} }
break; break;

View File

@@ -102,6 +102,22 @@ void CHFRSCANNER_ContinueScanning(void)
void CHFRSCANNER_Found(void) void CHFRSCANNER_Found(void)
{ {
if(gEeprom.SCAN_RESUME_MODE > 0 && gEeprom.SCAN_RESUME_MODE < 61)
{
if (!gScanPauseMode)
{
gScanPauseDelayIn_10ms = scan_pause_delay_in_1_10ms * gEeprom.SCAN_RESUME_MODE;
gScheduleScanListen = false;
gScanPauseMode = true;
}
}
else
{
gScanPauseDelayIn_10ms = 0;
gScheduleScanListen = false;
}
/*
switch (gEeprom.SCAN_RESUME_MODE) switch (gEeprom.SCAN_RESUME_MODE)
{ {
case SCAN_RESUME_TO: case SCAN_RESUME_TO:
@@ -119,6 +135,7 @@ void CHFRSCANNER_Found(void)
gScheduleScanListen = false; gScheduleScanListen = false;
break; break;
} }
*/
#ifdef ENABLE_FEAT_F4HWN #ifdef ENABLE_FEAT_F4HWN
lastFoundFrqOrChanOld = lastFoundFrqOrChan; lastFoundFrqOrChanOld = lastFoundFrqOrChan;

View File

@@ -176,7 +176,7 @@ int MENU_GetLimits(uint8_t menu_id, int32_t *pMin, int32_t *pMax)
case MENU_SC_REV: case MENU_SC_REV:
//*pMin = 0; //*pMin = 0;
*pMax = ARRAY_SIZE(gSubMenu_SC_REV) - 1; *pMax = 61;
break; break;
case MENU_ROGER: case MENU_ROGER:

View File

@@ -119,7 +119,7 @@ void SETTINGS_InitEEPROM(void)
gEeprom.KEY_1_LONG_PRESS_ACTION = (Data[2] < ACTION_OPT_LEN) ? Data[2] : ACTION_OPT_NONE; gEeprom.KEY_1_LONG_PRESS_ACTION = (Data[2] < ACTION_OPT_LEN) ? Data[2] : ACTION_OPT_NONE;
gEeprom.KEY_2_SHORT_PRESS_ACTION = (Data[3] < ACTION_OPT_LEN) ? Data[3] : ACTION_OPT_SCAN; gEeprom.KEY_2_SHORT_PRESS_ACTION = (Data[3] < ACTION_OPT_LEN) ? Data[3] : ACTION_OPT_SCAN;
gEeprom.KEY_2_LONG_PRESS_ACTION = (Data[4] < ACTION_OPT_LEN) ? Data[4] : ACTION_OPT_NONE; gEeprom.KEY_2_LONG_PRESS_ACTION = (Data[4] < ACTION_OPT_LEN) ? Data[4] : ACTION_OPT_NONE;
gEeprom.SCAN_RESUME_MODE = (Data[5] < 3) ? Data[5] : SCAN_RESUME_CO; gEeprom.SCAN_RESUME_MODE = (Data[5] < 62) ? Data[5] : 1;
gEeprom.AUTO_KEYPAD_LOCK = (Data[6] < 2) ? Data[6] : false; gEeprom.AUTO_KEYPAD_LOCK = (Data[6] < 2) ? Data[6] : false;
#ifdef ENABLE_FEAT_F4HWN #ifdef ENABLE_FEAT_F4HWN
gEeprom.POWER_ON_DISPLAY_MODE = (Data[7] < 6) ? Data[7] : POWER_ON_DISPLAY_MODE_VOLTAGE; gEeprom.POWER_ON_DISPLAY_MODE = (Data[7] < 6) ? Data[7] : POWER_ON_DISPLAY_MODE_VOLTAGE;

View File

@@ -59,11 +59,13 @@ enum TxLockModes_t {
F_LOCK_LEN F_LOCK_LEN
}; };
/*
enum { enum {
SCAN_RESUME_TO = 0, SCAN_RESUME_TO = 0,
SCAN_RESUME_CO, SCAN_RESUME_CO,
SCAN_RESUME_SE SCAN_RESUME_SE
}; };
*/
enum { enum {
CROSS_BAND_OFF = 0, CROSS_BAND_OFF = 0,

View File

@@ -227,12 +227,14 @@ const char* const gSubMenu_RXMode[] =
}; };
#endif #endif
/*
const char gSubMenu_SC_REV[][8] = const char gSubMenu_SC_REV[][8] =
{ {
"TIMEOUT", "TIMEOUT",
"CARRIER", "CARRIER",
"STOP" "STOP"
}; };
*/
const char* const gSubMenu_MDF[] = const char* const gSubMenu_MDF[] =
{ {
@@ -826,7 +828,18 @@ void UI_DisplayMenu(void)
#endif #endif
case MENU_SC_REV: case MENU_SC_REV:
strcpy(String, gSubMenu_SC_REV[gSubMenuSelection]); if(gSubMenuSelection == 0)
{
sprintf(String, "%s", "CARRIER");
}
else if(gSubMenuSelection < 61)
{
sprintf(String, "%02dm:%02ds", (((gSubMenuSelection) * 5) / 60), (((gSubMenuSelection) * 5) % 60));
}
else
{
sprintf(String, "%s", "STOP");
}
break; break;
case MENU_MDF: case MENU_MDF: