From 50a55e34ab8bf18ec29b9ae8674ec68d81107afe Mon Sep 17 00:00:00 2001 From: OneOfEleven Date: Sun, 10 Sep 2023 17:57:12 +0100 Subject: [PATCH] Fixed 200ms TX tail bug. --- app/action.c | 2 +- app/app.c | 35 +++++++++++------ dcs.h | 11 +++--- driver/backlight.c | 11 ++---- firmware | Bin 172692 -> 172692 bytes firmware.bin | Bin 56824 -> 56880 bytes firmware.packed.bin | Bin 56842 -> 56898 bytes functions.h | 17 ++++---- main.c | 9 +++-- radio.c | 15 +++++--- scheduler.c | 92 ++++++++++++++++++++++++++------------------ 11 files changed, 112 insertions(+), 80 deletions(-) diff --git a/app/action.c b/app/action.c index e980b91..ff6ba58 100644 --- a/app/action.c +++ b/app/action.c @@ -230,7 +230,7 @@ void ACTION_Handle(KEY_Code_t Key, bool bKeyPressed, bool bKeyHeld) gDTMF_InputBox[--gDTMF_InputIndex] = '-'; if (gDTMF_InputIndex) { - gPttWasReleased = true; + gPttWasReleased = true; gRequestDisplayScreen = DISPLAY_MAIN; return; } diff --git a/app/app.c b/app/app.c index ae079dc..99b68db 100644 --- a/app/app.c +++ b/app/app.c @@ -907,6 +907,8 @@ void APP_Update(void) void APP_CheckKeys(void) { + const uint16_t key_repeat_delay = 70; // 700ms + KEY_Code_t Key; #ifndef DISABLE_AIRCOPY @@ -920,15 +922,25 @@ void APP_CheckKeys(void) if (gPttIsPressed) { if (GPIO_CheckBit(&GPIOC->DATA, GPIOC_PIN_PTT)) - { - SYSTEM_DelayMs(20); + { // PTT released - if (GPIO_CheckBit(&GPIOC->DATA, GPIOC_PIN_PTT)) + // denoise the PTT + unsigned int i = 4; // loop for 4ms + unsigned int count = 0; + while (i-- > 0) + { + SYSTEM_DelayMs(1); + if (GPIO_CheckBit(&GPIOC->DATA, GPIOC_PIN_PTT)) + count++; + else + if (count > 0) + count--; + } + + if (count >= 2) { APP_ProcessKey(KEY_PTT, false, false); - gPttIsPressed = false; - if (gKeyReading1 != KEY_INVALID) gPttWasReleased = true; } @@ -938,7 +950,7 @@ void APP_CheckKeys(void) { if (!GPIO_CheckBit(&GPIOC->DATA, GPIOC_PIN_PTT)) { - if (++gPttDebounceCounter > 4) + if (++gPttDebounceCounter >= 4) // 40ms { gPttIsPressed = true; APP_ProcessKey(KEY_PTT, true, false); @@ -982,7 +994,7 @@ void APP_CheckKeys(void) gKeyBeingHeld = false; } else - if (gDebounceCounter == 128) + if (gDebounceCounter == key_repeat_delay) { if (Key == KEY_STAR || Key == KEY_F || Key == KEY_SIDE2 || Key == KEY_SIDE1 || Key == KEY_UP || Key == KEY_DOWN) { @@ -991,7 +1003,7 @@ void APP_CheckKeys(void) } } else - if (gDebounceCounter > 128) + if (gDebounceCounter > key_repeat_delay) { if (Key == KEY_UP || Key == KEY_DOWN) { @@ -1003,14 +1015,14 @@ void APP_CheckKeys(void) if (gDebounceCounter < 0xFFFF) return; - gDebounceCounter = 128; + gDebounceCounter = key_repeat_delay; } } void APP_TimeSlice10ms(void) { gFlashLightBlinkCounter++; - + if (UART_IsCommandAvailable()) { __disable_irq(); @@ -1102,6 +1114,7 @@ void APP_TimeSlice10ms(void) } #endif + // repeater tail tone elimination if (gRTTECountdown) { if (--gRTTECountdown == 0) @@ -1560,9 +1573,7 @@ static void APP_ProcessKey(KEY_Code_t Key, bool bKeyPressed, bool bKeyHeld) if (gDTMF_DecodeRing) { gDTMF_DecodeRing = false; - AUDIO_PlayBeep(BEEP_1KHZ_60MS_OPTIONAL); - if (Key != KEY_PTT) { gPttWasReleased = true; diff --git a/dcs.h b/dcs.h index 08db2bf..b8dfdc0 100644 --- a/dcs.h +++ b/dcs.h @@ -19,11 +19,12 @@ #include -enum DCS_CodeType_t { - CODE_TYPE_OFF = 0x00U, - CODE_TYPE_CONTINUOUS_TONE = 0x01U, - CODE_TYPE_DIGITAL = 0x02U, - CODE_TYPE_REVERSE_DIGITAL = 0x03U, +enum DCS_CodeType_t +{ + CODE_TYPE_OFF = 0, + CODE_TYPE_CONTINUOUS_TONE, + CODE_TYPE_DIGITAL, + CODE_TYPE_REVERSE_DIGITAL }; typedef enum DCS_CodeType_t DCS_CodeType_t; diff --git a/driver/backlight.c b/driver/backlight.c index c50c77d..0ac2a0a 100644 --- a/driver/backlight.c +++ b/driver/backlight.c @@ -19,19 +19,14 @@ #include "driver/gpio.h" #include "settings.h" -uint8_t gBacklightCountdown; +uint8_t gBacklightCountdown = 0; void BACKLIGHT_TurnOn(void) { if (gEeprom.BACKLIGHT > 0) { - GPIO_SetBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); - #if 0 - gBacklightCountdown = 1 + (gEeprom.BACKLIGHT * 2); - #else - // much longer backlight times - gBacklightCountdown = (gEeprom.BACKLIGHT * 20) - 19; - #endif + GPIO_SetBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight ON + gBacklightCountdown = (gEeprom.BACKLIGHT < 5) ? (gEeprom.BACKLIGHT * 20) - 19 : 0; // much longer backlight times } } diff --git a/firmware b/firmware index 92a7babceb3e0588f4d7dd29c9bf880a10f446ce..ec0749c9af9821d31209ae3a1e2b282ace64f319 100644 GIT binary patch delta 21626 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 delta 21815 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 diff --git a/firmware.packed.bin b/firmware.packed.bin index 70c634ad43d7c2800347ba2836be955de53bab05..7c0eb3d46e2a9b05ea9ecd99a283b4549f7f7294 100644 GIT binary patch delta 48607 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 diff --git a/functions.h b/functions.h index 1cc836f..991d921 100644 --- a/functions.h +++ b/functions.h @@ -19,18 +19,19 @@ #include -enum FUNCTION_Type_t { - FUNCTION_FOREGROUND = 0U, - FUNCTION_TRANSMIT = 1U, - FUNCTION_MONITOR = 2U, - FUNCTION_INCOMING = 3U, - FUNCTION_RECEIVE = 4U, - FUNCTION_POWER_SAVE = 5U, +enum FUNCTION_Type_t +{ + FUNCTION_FOREGROUND = 0, + FUNCTION_TRANSMIT, + FUNCTION_MONITOR, + FUNCTION_INCOMING, + FUNCTION_RECEIVE, + FUNCTION_POWER_SAVE }; typedef enum FUNCTION_Type_t FUNCTION_Type_t; -extern FUNCTION_Type_t gCurrentFunction; +extern FUNCTION_Type_t gCurrentFunction; void FUNCTION_Init(void); void FUNCTION_Select(FUNCTION_Type_t Function); diff --git a/main.c b/main.c index 910f66f..9dffc76 100644 --- a/main.c +++ b/main.c @@ -64,7 +64,6 @@ void Main(void) SYSTICK_Init(); BOARD_Init(); - UART_Init(); #ifdef GIT_HASH @@ -110,8 +109,12 @@ void Main(void) if (!gChargingWithTypeC && !gBatteryDisplayLevel) { FUNCTION_Select(FUNCTION_POWER_SAVE); - //if (gEeprom.BACKLIGHT < 5) - GPIO_ClearBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); + + if (gEeprom.BACKLIGHT < 5) + GPIO_ClearBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight OFF + else + GPIO_SetBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight ON + gReducedService = true; } else diff --git a/radio.c b/radio.c index ec0e34a..5bdb0b8 100644 --- a/radio.c +++ b/radio.c @@ -874,17 +874,20 @@ void RADIO_EnableCxCSS(void) { switch (gCurrentVfo->pTX->CodeType) { + case CODE_TYPE_OFF: + break; + + case CODE_TYPE_CONTINUOUS_TONE: + BK4819_EnableCTCSS(); + SYSTEM_DelayMs(200); + break; + case CODE_TYPE_DIGITAL: case CODE_TYPE_REVERSE_DIGITAL: BK4819_EnableCDCSS(); - break; - - default: - BK4819_EnableCTCSS(); + SYSTEM_DelayMs(200); break; } - - SYSTEM_DelayMs(200); } void RADIO_PrepareCssTX(void) diff --git a/scheduler.c b/scheduler.c index be11dd0..089e65b 100644 --- a/scheduler.c +++ b/scheduler.c @@ -22,6 +22,10 @@ #include "misc.h" #include "settings.h" +#include "driver/backlight.h" +#include "bsp/dp32g030/gpio.h" +#include "driver/gpio.h" + #define DECREMENT_AND_TRIGGER(cnt, flag) \ do { \ if (cnt) { \ @@ -35,40 +39,41 @@ static volatile uint32_t gGlobalSysTickCounter; void SystickHandler(void); +// we come here every 10ms void SystickHandler(void) { gGlobalSysTickCounter++; + gNextTimeslice = true; - if ((gGlobalSysTickCounter % 50) == 0) { + + if ((gGlobalSysTickCounter % 50) == 0) + { gNextTimeslice500ms = true; DECREMENT_AND_TRIGGER(gTxTimerCountdown, gTxTimeoutReached); } - if ((gGlobalSysTickCounter & 3) == 0) { - gNextTimeslice40ms = true; - } - if (gSystickCountdown2) { - gSystickCountdown2--; - } - if (gFoundCDCSSCountdown) { - gFoundCDCSSCountdown--; - } - if (gFoundCTCSSCountdown) { - gFoundCTCSSCountdown--; - } - if (gCurrentFunction == FUNCTION_FOREGROUND) { - DECREMENT_AND_TRIGGER(gBatterySaveCountdown, gSchedulePowerSave); - } - if (gCurrentFunction == FUNCTION_POWER_SAVE) { - 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) { + if ((gGlobalSysTickCounter & 3) == 0) + gNextTimeslice40ms = true; + + if (gSystickCountdown2) + gSystickCountdown2--; + + if (gFoundCDCSSCountdown) + gFoundCDCSSCountdown--; + + if (gFoundCTCSSCountdown) + gFoundCTCSSCountdown--; + + if (gCurrentFunction == FUNCTION_FOREGROUND) + DECREMENT_AND_TRIGGER(gBatterySaveCountdown, gSchedulePowerSave); + + if (gCurrentFunction == FUNCTION_POWER_SAVE) + 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); - } - } - } #ifndef DISABLE_NOAA if (gScanState == SCAN_OFF && gCssScanMode == CSS_SCAN_MODE_OFF && gEeprom.DUAL_WATCH == DUAL_WATCH_OFF) @@ -77,11 +82,9 @@ void SystickHandler(void) DECREMENT_AND_TRIGGER(gNOAA_Countdown, gScheduleNOAA); #endif - if (gScanState != SCAN_OFF || gCssScanMode == CSS_SCAN_MODE_SCANNING) { - if (gCurrentFunction != FUNCTION_MONITOR && gCurrentFunction != FUNCTION_TRANSMIT) { + if (gScanState != SCAN_OFF || gCssScanMode == CSS_SCAN_MODE_SCANNING) + if (gCurrentFunction != FUNCTION_MONITOR && gCurrentFunction != FUNCTION_TRANSMIT) DECREMENT_AND_TRIGGER(ScanPauseDelayIn10msec, gScheduleScanListen); - } - } DECREMENT_AND_TRIGGER(gTailNoteEliminationCountdown, gFlagTteComplete); @@ -89,13 +92,28 @@ void SystickHandler(void) DECREMENT_AND_TRIGGER(gCountdownToPlayNextVoice, gFlagPlayQueuedVoice); #endif - if (gFM_ScanState != FM_SCAN_OFF && gCurrentFunction != FUNCTION_MONITOR) { - if (gCurrentFunction != FUNCTION_TRANSMIT && gCurrentFunction != FUNCTION_RECEIVE) { + if (gFM_ScanState != FM_SCAN_OFF && gCurrentFunction != FUNCTION_MONITOR) + if (gCurrentFunction != FUNCTION_TRANSMIT && gCurrentFunction != FUNCTION_RECEIVE) DECREMENT_AND_TRIGGER(gFmPlayCountdown, gScheduleFM); - } - } - if (gVoxStopCountdown) { - gVoxStopCountdown--; - } -} + if (gVoxStopCountdown) + gVoxStopCountdown--; + + #if 0 + if (gCurrentFunction == FUNCTION_TRANSMIT || gBacklightCountdown > 0) + { + GPIO_SetBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight ON + } + else + if (gEeprom.BACKLIGHT >= 5) + { // backlight ON - half brightness + // was hoping to use this but don't like the odd flicker + if (gGlobalSysTickCounter & 1) + GPIO_SetBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight ON + else + GPIO_ClearBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight OFF + } + else + GPIO_ClearBit(&GPIOB->DATA, GPIOB_PIN_BACKLIGHT); // turn the backlight OFF + #endif +}