mirror of
https://github.com/opentx/opentx.git
synced 2025-07-25 17:25:13 +03:00
Telemetry refactoring - Fixes #1634
This commit is contained in:
parent
7d8ca6931b
commit
88d9691d16
105 changed files with 5789 additions and 3449 deletions
|
@ -327,23 +327,39 @@ getvalue_t getValue(uint8_t i)
|
|||
else if (i<=MIXSRC_LAST_GVAR) return GVAR_VALUE(i-MIXSRC_GVAR1, getGVarFlightPhase(mixerCurrentFlightMode, i-MIXSRC_GVAR1));
|
||||
#endif
|
||||
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_TX_VOLTAGE) return g_vbat100mV;
|
||||
#if defined(CPUARM) && defined(RTCLOCK)
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_TX_TIME) return (g_rtcTime % SECS_PER_DAY) / 60; // number of minutes from midnight
|
||||
#endif
|
||||
else if (i<=MIXSRC_FIRST_TELEM-1+TELEM_TIMER_MAX) return timersStates[i-MIXSRC_FIRST_TELEM+1-TELEM_TIMER1].val;
|
||||
#if defined(FRSKY)
|
||||
#if defined(CPUARM)
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_SWR) return frskyData.swr.value;
|
||||
else if (i==MIXSRC_TX_VOLTAGE) return g_vbat100mV;
|
||||
else if (i<MIXSRC_FIRST_TIMER) // TX_TIME + SPARES
|
||||
#if defined(RTCLOCK)
|
||||
return (g_rtcTime % SECS_PER_DAY) / 60; // number of minutes from midnight
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
else if (i<=MIXSRC_LAST_TIMER) return timersStates[i-MIXSRC_FIRST_TIMER].val;
|
||||
#else
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_TX_VOLTAGE) return g_vbat100mV;
|
||||
else if (i<=MIXSRC_FIRST_TELEM-1+TELEM_TIMER2) return timersStates[i-MIXSRC_FIRST_TELEM+1-TELEM_TIMER1].val;
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
else if (i<=MIXSRC_LAST_TELEM) {
|
||||
i -= MIXSRC_FIRST_TELEM;
|
||||
div_t qr = div(i, 3);
|
||||
TelemetryItem & telemetryItem = telemetryItems[qr.quot];
|
||||
switch (qr.rem) {
|
||||
case 1:
|
||||
return telemetryItem.valueMin;
|
||||
case 2:
|
||||
return telemetryItem.valueMax;
|
||||
default:
|
||||
return telemetryItem.value;
|
||||
}
|
||||
}
|
||||
#elif defined(FRSKY)
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_RSSI_TX) return frskyData.rssi[1].value;
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_RSSI_RX) return frskyData.rssi[0].value;
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_A1) return frskyData.analog[TELEM_ANA_A1].value;
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_A2) return frskyData.analog[TELEM_ANA_A2].value;
|
||||
#if defined(CPUARM)
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_A3) return frskyData.analog[TELEM_ANA_A3].value;
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_A4) return frskyData.analog[TELEM_ANA_A4].value;
|
||||
#endif
|
||||
#if defined(FRSKY_SPORT)
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_ALT) return frskyData.hub.baroAltitude;
|
||||
#elif defined(FRSKY_HUB) || defined(WS_HOW_HIGH)
|
||||
|
@ -372,10 +388,6 @@ getvalue_t getValue(uint8_t i)
|
|||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_DTE) return frskyData.hub.dTE;
|
||||
else if (i<=MIXSRC_FIRST_TELEM-1+TELEM_MIN_A1) return frskyData.analog[TELEM_ANA_A1].min;
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_MIN_A2) return frskyData.analog[TELEM_ANA_A2].min;
|
||||
#if defined(CPUARM)
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_MIN_A3) return frskyData.analog[TELEM_ANA_A3].min;
|
||||
else if (i==MIXSRC_FIRST_TELEM-1+TELEM_MIN_A4) return frskyData.analog[TELEM_ANA_A4].min;
|
||||
#endif
|
||||
else if (i<=MIXSRC_FIRST_TELEM-1+TELEM_CSW_MAX) return *(((int16_t*)(&frskyData.hub.minAltitude))+i-(MIXSRC_FIRST_TELEM-1+TELEM_MIN_ALT));
|
||||
#endif
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue