From f1e957e466eb5c771f6f3fd6aa3d8c43098cfda0 Mon Sep 17 00:00:00 2001 From: 3djc Date: Wed, 3 Feb 2021 10:42:04 +0100 Subject: [PATCH] Improve --- radio/src/pulses/pulses.cpp | 20 ++++++++++++-------- radio/src/pulses/pulses.h | 4 ++++ radio/src/storage/storage_common.cpp | 8 ++++---- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/radio/src/pulses/pulses.cpp b/radio/src/pulses/pulses.cpp index 7f0650afa..94fb99d52 100755 --- a/radio/src/pulses/pulses.cpp +++ b/radio/src/pulses/pulses.cpp @@ -480,14 +480,16 @@ bool setupPulsesInternalModule(uint8_t protocol) } } +void stopPulsesInternalModule() +{ + intmoduleStop(); + moduleState[INTERNAL_MODULE].protocol = PROTOCOL_CHANNELS_NONE; +} + bool setupPulsesInternalModule() { uint8_t protocol = getRequiredProtocol(INTERNAL_MODULE); - if(protocol != PROTOCOL_CHANNELS_NONE) { - INTERNAL_MODULE_ON(); - } - heartbeat |= (HEART_TIMER_PULSES << INTERNAL_MODULE); if (moduleState[INTERNAL_MODULE].protocol != protocol) { @@ -502,14 +504,16 @@ bool setupPulsesInternalModule() } #endif +void stopPulsesExternalModule() +{ + extmoduleStop(); + moduleState[EXTERNAL_MODULE].protocol = PROTOCOL_CHANNELS_NONE; +} + bool setupPulsesExternalModule() { uint8_t protocol = getRequiredProtocol(EXTERNAL_MODULE); - if(protocol != PROTOCOL_CHANNELS_NONE) { - EXTERNAL_MODULE_ON(); - } - heartbeat |= (HEART_TIMER_PULSES << EXTERNAL_MODULE); if (moduleState[EXTERNAL_MODULE].protocol != protocol) { diff --git a/radio/src/pulses/pulses.h b/radio/src/pulses/pulses.h index 6f37f2a60..c08f8bb88 100644 --- a/radio/src/pulses/pulses.h +++ b/radio/src/pulses/pulses.h @@ -315,8 +315,12 @@ extern TrainerPulsesData trainerPulsesData; #if defined(HARDWARE_INTERNAL_MODULE) bool setupPulsesInternalModule(); +void stopPulsesInternalModule(); #endif +#if defined(HARDWARE_EXTERNAL_MODULE) bool setupPulsesExternalModule(); +void stopPulsesExternalModule(); +#endif void setupPulsesDSM2(); void setupPulsesCrossfire(); void setupPulsesGhost(); diff --git a/radio/src/storage/storage_common.cpp b/radio/src/storage/storage_common.cpp index 40bac6a67..857cdd1a6 100644 --- a/radio/src/storage/storage_common.cpp +++ b/radio/src/storage/storage_common.cpp @@ -53,11 +53,11 @@ void preModelLoad() } pauseMixerCalculations(); -#if defined(INTMODULE_PWR_GPIO) - INTERNAL_MODULE_OFF(); +#if defined(HARDWARE_INTERNAL_MODULE) + stopPulsesInternalModule(); #endif -#if defined(EXTMODULE_PWR_GPIO) - EXTERNAL_MODULE_OFF(); +#if defined(HARDWARE_EXTERNAL_MODULE) + stopPulsesExternalModule(); #endif stopTrainer();