Add ENABLE_FEAT_F4HWN_RX_TX_TIMER

This commit is contained in:
Armel FAUVEAU
2024-08-01 01:23:34 +02:00
parent b6334e3b91
commit c74b91629c
6 changed files with 19 additions and 5 deletions

View File

@@ -43,6 +43,7 @@ ENABLE_SCAN_RANGES ?= 1
ENABLE_FEAT_F4HWN ?= 1
ENABLE_FEAT_F4HWN_SCREENSHOT ?= 0
ENABLE_FEAT_F4HWN_SPECTRUM ?= 1
ENABLE_FEAT_F4HWN_RX_TX_TIMER ?= 1
ENABLE_FEAT_F4HWN_CHARGING_C ?= 1
ENABLE_FEAT_F4HWN_PMR ?= 0
ENABLE_FEAT_F4HWN_GMRS_FRS_MURS ?= 0
@@ -411,6 +412,9 @@ endif
ifeq ($(ENABLE_FEAT_F4HWN_SPECTRUM),1)
CFLAGS += -DENABLE_FEAT_F4HWN_SPECTRUM
endif
ifeq ($(ENABLE_FEAT_F4HWN_RX_TX_TIMER),1)
CFLAGS += -DENABLE_FEAT_F4HWN_RX_TX_TIMER
endif
ifeq ($(ENABLE_FEAT_F4HWN_CHARGING_C),1)
CFLAGS += -DENABLE_FEAT_F4HWN_CHARGING_C
endif

View File

@@ -439,7 +439,7 @@ void APP_StartListening(FUNCTION_Type_t function)
{
const unsigned int vfo = gEeprom.RX_VFO;
#ifdef ENABLE_FEAT_F4HWN
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
gRxTimerCountdown_500ms = 7200;
#endif
@@ -714,7 +714,7 @@ static void CheckRadioInterrupts(void)
if (interrupts.sqlLost) {
g_SquelchLost = true;
BK4819_ToggleGpioOut(BK4819_GPIO6_PIN2_GREEN, true);
#ifdef ENABLE_FEAT_F4HWN
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
gRxTimerCountdown_500ms = 7200;
#endif
}

4
misc.c
View File

@@ -163,7 +163,9 @@ volatile bool gTxTimeoutReached;
volatile uint16_t gTxTimerCountdownAlert_500ms;
volatile bool gTxTimeoutReachedAlert;
volatile uint16_t gTxTimeoutToneAlert = 800;
volatile uint16_t gRxTimerCountdown_500ms;
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
volatile uint16_t gRxTimerCountdown_500ms;
#endif
#endif
volatile uint16_t gTailNoteEliminationCountdown_10ms;

4
misc.h
View File

@@ -228,7 +228,9 @@ extern volatile bool gTxTimeoutReached;
extern volatile uint16_t gTxTimerCountdownAlert_500ms;
extern volatile bool gTxTimeoutReachedAlert;
extern volatile uint16_t gTxTimeoutToneAlert;
extern volatile uint16_t gRxTimerCountdown_500ms;
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
extern volatile uint16_t gRxTimerCountdown_500ms;
#endif
#endif
extern volatile uint16_t gTailNoteEliminationCountdown_10ms;

View File

@@ -58,7 +58,9 @@ void SystickHandler(void)
#ifdef ENABLE_FEAT_F4HWN
DECREMENT_AND_TRIGGER(gTxTimerCountdownAlert_500ms - ALERT_TOT * 2, gTxTimeoutReachedAlert);
DECREMENT(gRxTimerCountdown_500ms);
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
DECREMENT(gRxTimerCountdown_500ms);
#endif
#endif
DECREMENT_AND_TRIGGER(gTxTimerCountdown_500ms, gTxTimeoutReached);

View File

@@ -34,6 +34,7 @@
#include "ui/ui.h"
#include "ui/status.h"
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
static void convertTime(uint8_t *line, uint8_t type)
{
char str[8] = "";
@@ -59,6 +60,7 @@ static void convertTime(uint8_t *line, uint8_t type)
gUpdateStatus = true;
}
#endif
void UI_DisplayStatus()
{
@@ -150,6 +152,7 @@ void UI_DisplayStatus()
#endif
if(!SCANNER_IsScanning()) {
#ifdef ENABLE_FEAT_F4HWN_RX_TX_TIMER
if(gCurrentFunction == FUNCTION_TRANSMIT)
{
convertTime(line, 0);
@@ -159,6 +162,7 @@ void UI_DisplayStatus()
convertTime(line, 1);
}
else
#endif
{
uint8_t dw = (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF) + (gEeprom.CROSS_BAND_RX_TX != CROSS_BAND_OFF) * 2;
if(dw == 1 || dw == 3) { // DWR - dual watch + respond