[all] Code refactoring
This commit is contained in:
+16
-84
@@ -98,38 +98,22 @@ void displaySlider(uint8_t x, uint8_t y, uint8_t value, uint8_t attr)
|
||||
#endif
|
||||
|
||||
enum menuGeneralSetupItems {
|
||||
#if defined(RTCLOCK)
|
||||
ITEM_SETUP_RTC,
|
||||
#endif
|
||||
IF_RTCLOCK(ITEM_SETUP_RTC)
|
||||
ITEM_SETUP_BEEPER_MODE,
|
||||
ITEM_SETUP_BEEPER_LENGTH,
|
||||
#if defined(AUDIO)
|
||||
ITEM_SETUP_SPEAKER_PITCH,
|
||||
#endif
|
||||
#if defined(VOICE)
|
||||
ITEM_SETUP_SPEAKER_VOLUME,
|
||||
#endif
|
||||
#if defined(HAPTIC)
|
||||
ITEM_SETUP_HAPTIC_MODE,
|
||||
ITEM_SETUP_HAPTIC_LENGTH,
|
||||
ITEM_SETUP_HAPTIC_STRENGTH,
|
||||
#endif
|
||||
#if defined(PCBSKY9X)
|
||||
ITEM_SETUP_BRIGHTNESS,
|
||||
#endif
|
||||
IF_AUDIO(ITEM_SETUP_SPEAKER_PITCH)
|
||||
IF_VOICE(ITEM_SETUP_SPEAKER_VOLUME)
|
||||
IF_HAPTIC(ITEM_SETUP_HAPTIC_MODE)
|
||||
IF_HAPTIC(ITEM_SETUP_HAPTIC_LENGTH)
|
||||
IF_HAPTIC(ITEM_SETUP_HAPTIC_STRENGTH)
|
||||
IF_PCBSKY9X(ITEM_SETUP_BRIGHTNESS)
|
||||
ITEM_SETUP_CONTRAST,
|
||||
ITEM_SETUP_BATTERY_WARNING,
|
||||
#if defined(PCBSKY9X)
|
||||
ITEM_SETUP_CAPACITY_WARNING,
|
||||
ITEM_SETUP_TEMPERATURE_WARNING,
|
||||
#endif
|
||||
IF_PCBSKY9X(ITEM_SETUP_CAPACITY_WARNING)
|
||||
IF_PCBSKY9X(ITEM_SETUP_TEMPERATURE_WARNING)
|
||||
ITEM_SETUP_INACTIVITY_ALARM,
|
||||
#if defined(BLUETOOTH)
|
||||
ITEM_SETUP_BT_BAUDRATE,
|
||||
#endif
|
||||
#if defined(ROTARY_ENCODERS)
|
||||
ITEM_SETUP_RE_NAVIGATION,
|
||||
#endif
|
||||
IF_BLUETOOTH(ITEM_SETUP_BT_BAUDRATE)
|
||||
IF_ROTARY_ENCODERS(ITEM_SETUP_RE_NAVIGATION)
|
||||
ITEM_SETUP_FILTER_ADC,
|
||||
ITEM_SETUP_THROTTLE_REVERSED,
|
||||
ITEM_SETUP_MINUTE_BEEP,
|
||||
@@ -137,15 +121,11 @@ enum menuGeneralSetupItems {
|
||||
ITEM_SETUP_FLASH_BEEP,
|
||||
ITEM_SETUP_BACKLIGHT_MODE,
|
||||
ITEM_SETUP_BACKLIGHT_DELAY,
|
||||
#if defined(SPLASH)
|
||||
ITEM_SETUP_DISABLE_SPLASH,
|
||||
#endif
|
||||
IF_SPLASH(ITEM_SETUP_DISABLE_SPLASH)
|
||||
ITEM_SETUP_MEMORY_WARNING,
|
||||
ITEM_SETUP_ALARM_WARNING,
|
||||
#if defined(FRSKY)
|
||||
ITEM_SETUP_TIMEZONE,
|
||||
ITEM_SETUP_GPSFORMAT,
|
||||
#endif
|
||||
IF_FRSKY(ITEM_SETUP_TIMEZONE)
|
||||
IF_FRSKY(ITEM_SETUP_GPSFORMAT)
|
||||
ITEM_SETUP_RX_CHANNEL_ORD,
|
||||
ITEM_SETUP_STICK_MODE_LABELS,
|
||||
ITEM_SETUP_STICK_MODE,
|
||||
@@ -154,53 +134,7 @@ enum menuGeneralSetupItems {
|
||||
|
||||
void menuGeneralSetup(uint8_t event)
|
||||
{
|
||||
#ifdef RTCLOCK
|
||||
#define RTC_ZEROS 5,
|
||||
#else
|
||||
#define RTC_ZEROS
|
||||
#endif
|
||||
#ifdef AUDIO
|
||||
#define AUDIO_ZEROS 0,
|
||||
#else
|
||||
#define AUDIO_ZEROS
|
||||
#endif
|
||||
#ifdef VOICE
|
||||
#define VOICE_ZEROS 0,
|
||||
#else
|
||||
#define VOICE_ZEROS
|
||||
#endif
|
||||
#ifdef HAPTIC
|
||||
#define HAPTIC_ZEROS 0, 0, 0,
|
||||
#else
|
||||
#define HAPTIC_ZEROS
|
||||
#endif
|
||||
#ifdef SPLASH
|
||||
#define SPLASH_ZEROS 0,
|
||||
#else
|
||||
#define SPLASH_ZEROS
|
||||
#endif
|
||||
#ifdef FRSKY
|
||||
#define FRSKY_ZEROS 0, 0,
|
||||
#else
|
||||
#define FRSKY_ZEROS
|
||||
#endif
|
||||
#ifdef PCBSKY9X
|
||||
#define ARM_ZEROS 0, 0, 0,
|
||||
#else
|
||||
#define ARM_ZEROS
|
||||
#endif
|
||||
#ifdef BLUETOOTH
|
||||
#define BLUETOOTH_ZEROS 0,
|
||||
#else
|
||||
#define BLUETOOTH_ZEROS
|
||||
#endif
|
||||
#ifdef ROTARY_ENCODERS
|
||||
#define ROTARY_ENCODERS_ZEROS 0,
|
||||
#else
|
||||
#define ROTARY_ENCODERS_ZEROS
|
||||
#endif
|
||||
|
||||
MENU(STR_MENURADIOSETUP, menuTabDiag, e_Setup, ITEM_SETUP_MAX+1, {0, RTC_ZEROS 0, 0, AUDIO_ZEROS VOICE_ZEROS HAPTIC_ZEROS ARM_ZEROS 0, 0, 0, BLUETOOTH_ZEROS ROTARY_ENCODERS_ZEROS 0, 0, 0, 0, 0, 0, 0, SPLASH_ZEROS 0, 0, FRSKY_ZEROS 0, (uint8_t)-1, 1});
|
||||
MENU(STR_MENURADIOSETUP, menuTabDiag, e_Setup, ITEM_SETUP_MAX+1, {0, IF_RTCLOCK(5) 0, 0, IF_AUDIO(0) IF_VOICE(0) IF_HAPTIC(0) IF_HAPTIC(0) IF_HAPTIC(0) IF_PCBSKY9X(0) 0, 0, IF_PCBSKY9X(0) IF_PCBSKY9X(0) 0, IF_BLUETOOTH(0) IF_ROTARY_ENCODERS(0) 0, 0, 0, 0, 0, 0, 0, IF_SPLASH(0) 0, 0, IF_FRSKY(0) IF_FRSKY(0) 0, (uint8_t)-1, 1});
|
||||
|
||||
uint8_t sub = m_posVert - 1;
|
||||
|
||||
@@ -431,7 +365,7 @@ void menuGeneralSetup(uint8_t event)
|
||||
if(attr) CHECK_INCDEC_GENVAR(event, g_eeGeneral.lightAutoOff, 0, 600/5);
|
||||
break;
|
||||
|
||||
#ifdef SPLASH
|
||||
#if defined(SPLASH)
|
||||
case ITEM_SETUP_DISABLE_SPLASH:
|
||||
{
|
||||
uint8_t b = 1-g_eeGeneral.disableSplashScreen;
|
||||
@@ -519,8 +453,6 @@ void menuGeneralSdManagerInfo(uint8_t event)
|
||||
lcd_putsLeft(5*FH, PSTR("Speed:"));
|
||||
lcd_outdezAtt(10*FW, 5*FH, SD_GET_SPEED()/1000, LEFT);
|
||||
lcd_puts(lcdLastPos, 5*FH, "kb/s");
|
||||
|
||||
// lcd_putsLeft(7*FH, PSTR("CSD:"));
|
||||
}
|
||||
|
||||
void menuGeneralSdManager(uint8_t event)
|
||||
|
||||
+19
-84
@@ -40,26 +40,16 @@
|
||||
enum EnumTabModel {
|
||||
e_ModelSelect,
|
||||
e_Model,
|
||||
#ifdef HELI
|
||||
e_Heli,
|
||||
#endif
|
||||
#ifdef FLIGHT_PHASES
|
||||
e_PhasesAll,
|
||||
#endif
|
||||
IF_HELI(e_Heli)
|
||||
IF_FLIGHT_PHASES(e_PhasesAll)
|
||||
e_ExposAll,
|
||||
e_MixAll,
|
||||
e_Limits,
|
||||
#ifdef CURVES
|
||||
e_CurvesAll,
|
||||
#endif
|
||||
IF_CURVES(e_CurvesAll)
|
||||
e_CustomSwitches,
|
||||
e_FunctionSwitches,
|
||||
#ifdef FRSKY
|
||||
e_Telemetry,
|
||||
#endif
|
||||
#ifdef TEMPLATES
|
||||
e_Templates
|
||||
#endif
|
||||
IF_FRSKY(e_Telemetry)
|
||||
IF_TEMPLATES(e_Templates)
|
||||
};
|
||||
|
||||
void menuModelSelect(uint8_t event);
|
||||
@@ -87,26 +77,16 @@ void menuModelExpoOne(uint8_t event);
|
||||
const MenuFuncP_PROGMEM menuTabModel[] PROGMEM = {
|
||||
menuModelSelect,
|
||||
menuModelSetup,
|
||||
#ifdef HELI
|
||||
menuModelHeli,
|
||||
#endif
|
||||
#ifdef FLIGHT_PHASES
|
||||
menuModelPhasesAll,
|
||||
#endif
|
||||
IF_HELI(menuModelHeli)
|
||||
IF_FLIGHT_PHASES(menuModelPhasesAll)
|
||||
menuModelExposAll,
|
||||
menuModelMixAll,
|
||||
menuModelLimits,
|
||||
#ifdef CURVES
|
||||
menuModelCurvesAll,
|
||||
#endif
|
||||
IF_CURVES(menuModelCurvesAll)
|
||||
menuModelCustomSwitches,
|
||||
menuModelFunctionSwitches,
|
||||
#ifdef FRSKY
|
||||
menuModelTelemetry,
|
||||
#endif
|
||||
#ifdef TEMPLATES
|
||||
menuModelTemplates
|
||||
#endif
|
||||
IF_FRSKY(menuModelTelemetry)
|
||||
IF_TEMPLATES(menuModelTemplates)
|
||||
};
|
||||
|
||||
#define COPY_MODE 1
|
||||
@@ -1459,44 +1439,22 @@ bool swapExpoMix(uint8_t expo, uint8_t &idx, uint8_t up)
|
||||
}
|
||||
|
||||
enum ExposFields {
|
||||
#ifdef PCBSKY9X
|
||||
EXPO_FIELD_NAME,
|
||||
#endif
|
||||
IF_PCBSKY9X(EXPO_FIELD_NAME)
|
||||
EXPO_FIELD_WIDTH,
|
||||
EXPO_FIELD_EXPO,
|
||||
#ifdef CURVES
|
||||
EXPO_FIELD_CURVE,
|
||||
#endif
|
||||
#ifdef FLIGHT_PHASES
|
||||
EXPO_FIELD_FLIGHT_PHASE,
|
||||
#endif
|
||||
IF_CURVES(EXPO_FIELD_CURVE)
|
||||
IF_FLIGHT_PHASES(EXPO_FIELD_FLIGHT_PHASE)
|
||||
EXPO_FIELD_SWITCH,
|
||||
EXPO_FIELD_SIDE,
|
||||
EXPO_FIELD_MAX
|
||||
};
|
||||
|
||||
#if defined(PCBSKY9X)
|
||||
#define EXPO_ONE_ARM_ROW sizeof(ed->name),
|
||||
#else
|
||||
#define EXPO_ONE_ARM_ROW
|
||||
#endif
|
||||
#if defined(CURVES)
|
||||
#define EXPO_ONE_CURVES_ROW 1,
|
||||
#else
|
||||
#define EXPO_ONE_CURVES_ROW
|
||||
#endif
|
||||
#if defined(FLIGHT_PHASES)
|
||||
#define EXPO_ONE_PHASES_ROW MAX_PHASES-1,
|
||||
#else
|
||||
#define EXPO_ONE_PHASES_ROW
|
||||
#endif
|
||||
|
||||
void menuModelExpoOne(uint8_t event)
|
||||
{
|
||||
ExpoData *ed = expoaddress(s_currIdx);
|
||||
putsChnRaw(7*FW+FW/2,0,ed->chn+1,0);
|
||||
|
||||
SUBMENU(STR_MENUDREXPO, EXPO_FIELD_MAX, {EXPO_ONE_ARM_ROW 0, 0, EXPO_ONE_CURVES_ROW EXPO_ONE_PHASES_ROW 0 /*, ...*/});
|
||||
SUBMENU(STR_MENUDREXPO, EXPO_FIELD_MAX, {IF_PCBSKY9X(sizeof(ed->name)) 0, 0, IF_CURVES(1) IF_FLIGHT_PHASES(MAX_PHASES-1) 0 /*, ...*/});
|
||||
|
||||
int8_t sub = m_posVert;
|
||||
|
||||
@@ -1577,20 +1535,14 @@ void menuModelExpoOne(uint8_t event)
|
||||
}
|
||||
|
||||
enum MixFields {
|
||||
#if defined(PCBSKY9X)
|
||||
MIX_FIELD_NAME,
|
||||
#endif
|
||||
IF_PCBSKY9X(MIX_FIELD_NAME)
|
||||
MIX_FIELD_SOURCE,
|
||||
MIX_FIELD_WEIGHT,
|
||||
MIX_FIELD_OFFSET,
|
||||
MIX_FIELD_TRIM,
|
||||
#if defined(CURVES)
|
||||
MIX_FIELD_CURVE,
|
||||
#endif
|
||||
IF_CURVES(MIX_FIELD_CURVE)
|
||||
MIX_FIELD_SWITCH,
|
||||
#if defined(FLIGHT_PHASES)
|
||||
MIX_FIELD_FLIGHT_PHASE,
|
||||
#endif
|
||||
IF_FLIGHT_PHASES(MIX_FIELD_FLIGHT_PHASE)
|
||||
MIX_FIELD_WARNING,
|
||||
MIX_FIELD_MLTPX,
|
||||
MIX_FIELD_DELAY_UP,
|
||||
@@ -1600,29 +1552,13 @@ enum MixFields {
|
||||
MIX_FIELD_COUNT
|
||||
};
|
||||
|
||||
#if defined(PCBSKY9X)
|
||||
#define MIX_ONE_ARM_ROW sizeof(md2->name),
|
||||
#else
|
||||
#define MIX_ONE_ARM_ROW
|
||||
#endif
|
||||
#if defined(CURVES)
|
||||
#define MIX_ONE_CURVES_ROW 1,
|
||||
#else
|
||||
#define MIX_ONE_CURVES_ROW
|
||||
#endif
|
||||
#if defined(FLIGHT_PHASES)
|
||||
#define MIX_ONE_PHASES_ROW MAX_PHASES-1,
|
||||
#else
|
||||
#define MIX_ONE_PHASES_ROW
|
||||
#endif
|
||||
|
||||
void menuModelMixOne(uint8_t event)
|
||||
{
|
||||
TITLEP(s_currCh ? STR_INSERTMIX : STR_EDITMIX);
|
||||
MixData *md2 = mixaddress(s_currIdx) ;
|
||||
putsChn(lcdLastPos+1*FW,0,md2->destCh+1,0);
|
||||
|
||||
SUBMENU_NOTITLE(MIX_FIELD_COUNT, {MIX_ONE_ARM_ROW 0, 0, 0, 1, MIX_ONE_CURVES_ROW 0, MIX_ONE_PHASES_ROW 0 /*, ...*/});
|
||||
SUBMENU_NOTITLE(MIX_FIELD_COUNT, {IF_PCBSKY9X(sizeof(md2->name)) 0, 0, 0, 1, IF_CURVES(1) 0, IF_FLIGHT_PHASES(MAX_PHASES-1) 0 /*, ...*/});
|
||||
|
||||
int8_t sub = m_posVert;
|
||||
|
||||
@@ -2090,7 +2026,6 @@ enum LimitsItems {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
void menuModelLimits(uint8_t event)
|
||||
{
|
||||
MENU(STR_MENULIMITS, menuTabModel, e_Limits, 1+NUM_CHNOUT+1, {0, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, 0});
|
||||
@@ -3050,7 +2985,7 @@ void menuModelTelemetry(uint8_t event)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef TEMPLATES
|
||||
#if defined(TEMPLATES)
|
||||
void menuModelTemplates(uint8_t event)
|
||||
{
|
||||
SIMPLE_MENU(STR_MENUTEMPLATES, menuTabModel, e_Templates, 1+TMPL_COUNT);
|
||||
|
||||
+78
-1
@@ -36,13 +36,90 @@
|
||||
|
||||
#define MAJ_VERS 2
|
||||
#define MIN_VERS 00
|
||||
#define EEPROM_VARIANTS (0x00)
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <string.h>
|
||||
#include <stddef.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define EEPROM_VARIANTS (0x00)
|
||||
#if defined(PCBSKY9X)
|
||||
#define IF_PCBSKY9X(x) x,
|
||||
#else
|
||||
#define IF_PCBSKY9X(x)
|
||||
#endif
|
||||
|
||||
#if defined(RTCLOCK)
|
||||
#define IF_RTCLOCK(x) x,
|
||||
#else
|
||||
#define IF_RTCLOCK(x)
|
||||
#endif
|
||||
|
||||
#if defined(AUDIO)
|
||||
#define IF_AUDIO(x) x,
|
||||
#else
|
||||
#define IF_AUDIO(x)
|
||||
#endif
|
||||
|
||||
#if defined(VOICE)
|
||||
#define IF_VOICE(x) x,
|
||||
#else
|
||||
#define IF_VOICE(x)
|
||||
#endif
|
||||
|
||||
#if defined(HAPTIC)
|
||||
#define IF_HAPTIC(x) x,
|
||||
#else
|
||||
#define IF_HAPTIC(x)
|
||||
#endif
|
||||
|
||||
#if defined(SPLASH)
|
||||
#define IF_SPLASH(x) x,
|
||||
#else
|
||||
#define IF_SPLASH(x)
|
||||
#endif
|
||||
|
||||
#if defined(FRSKY)
|
||||
#define IF_FRSKY(x) x,
|
||||
#else
|
||||
#define IF_FRSKY(x)
|
||||
#endif
|
||||
|
||||
#if defined(ROTARY_ENCODERS)
|
||||
#define IF_ROTARY_ENCODERS(x) x,
|
||||
#else
|
||||
#define IF_ROTARY_ENCODERS(x)
|
||||
#endif
|
||||
|
||||
#if defined(BLUETOOTH)
|
||||
#define IF_BLUETOOTH(x) x,
|
||||
#else
|
||||
#define IF_BLUETOOTH(x)
|
||||
#endif
|
||||
|
||||
#if defined(HELI)
|
||||
#define IF_HELI(x) x,
|
||||
#else
|
||||
#define IF_HELI(x)
|
||||
#endif
|
||||
|
||||
#if defined(TEMPLATES)
|
||||
#define IF_TEMPLATES(x) x,
|
||||
#else
|
||||
#define IF_TEMPLATES(x)
|
||||
#endif
|
||||
|
||||
#if defined(FLIGHT_PHASES)
|
||||
#define IF_FLIGHT_PHASES(x) x,
|
||||
#else
|
||||
#define IF_FLIGHT_PHASES(x)
|
||||
#endif
|
||||
|
||||
#if defined(CURVES)
|
||||
#define IF_CURVES(x) x,
|
||||
#else
|
||||
#define IF_CURVES(x)
|
||||
#endif
|
||||
|
||||
#if defined(PCBSTD)
|
||||
#define WDT_RESET_STOCK() wdt_reset()
|
||||
|
||||
Reference in New Issue
Block a user