1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-26 01:35:41 +03:00

Some changes to "When" changes take effect.

This commit is contained in:
jflyper 2017-01-15 16:06:38 +09:00
parent b9430f82b7
commit b1e1c7ef7b

View file

@ -742,6 +742,25 @@ void vtxSAProcess(uint32_t now)
saGetSettings(); saGetSettings();
saSendQueue(); saSendQueue();
} }
#ifdef SMARTAUDIO_TEST_VTX_COMMON
// Testing VTX_COMMON API
{
static uint32_t lastMonitorUs = 0;
if (cmp32(now, lastMonitorUs) < 5 * 1000 * 1000)
return;
static uint8_t monBand;
static uint8_t monChan;
static uint8_t monPower;
vtxCommonGetBandChan(&monBand, &monChan);
vtxCommonGetPowerIndex(&monPower);
debug[0] = monBand;
debug[1] = monChan;
debug[2] = monPower;
}
#endif
} }
#ifdef VTX_COMMON #ifdef VTX_COMMON
@ -811,7 +830,7 @@ bool vtxSAGetPowerIndex(uint8_t *pIndex)
if (!vtxSAIsReady()) if (!vtxSAIsReady())
return false; return false;
*pIndex = (saDevice.version == 1) ? saDacToPowerIndex(saDevice.power) : saDevice.power; *pIndex = ((saDevice.version == 1) ? saDacToPowerIndex(saDevice.power) : saDevice.power) + 1;
return true; return true;
} }
@ -938,7 +957,7 @@ if (saDevice.mode & SA_MODE_GET_OUT_RANGE_PITMODE)
else else
saCmsPitFMode = 0; saCmsPitFMode = 0;
saCmsStatusString[0] = "-FP"[(saDevice.mode & SA_MODE_GET_PITMODE) ? SACMS_OPMODEL_RACE : SACMS_OPMODEL_FREE]; saCmsStatusString[0] = "-FR"[saCmsOpmodel];
saCmsStatusString[2] = "ABEFR"[saDevice.chan / 8]; saCmsStatusString[2] = "ABEFR"[saDevice.chan / 8];
saCmsStatusString[3] = '1' + (saDevice.chan % 8); saCmsStatusString[3] = '1' + (saDevice.chan % 8);
@ -978,15 +997,13 @@ static long saCmsConfigBandByGvar(displayPort_t *pDisp, const void *self)
return 0; return 0;
} }
dprintf(("saCmsConfigBand: band req %d ", saCmsBand));
if (saCmsBand == 0) { if (saCmsBand == 0) {
// Bouce back, no going back to undef state // Bouce back, no going back to undef state
saCmsBand = 1; saCmsBand = 1;
return 0; return 0;
} }
if (!(saCmsOpmodel == SACMS_OPMODEL_FREE && saDeferred)) if ((saCmsOpmodel == SACMS_OPMODEL_FREE) && !saDeferred)
saSetBandChan(saCmsBand - 1, saCmsChan - 1); saSetBandChan(saCmsBand - 1, saCmsChan - 1);
saCmsFreqRef = saFreqTable[saCmsBand - 1][saCmsChan - 1]; saCmsFreqRef = saFreqTable[saCmsBand - 1][saCmsChan - 1];
@ -1011,7 +1028,7 @@ static long saCmsConfigChanByGvar(displayPort_t *pDisp, const void *self)
return 0; return 0;
} }
if (!(saCmsOpmodel == SACMS_OPMODEL_FREE && saDeferred)) if ((saCmsOpmodel == SACMS_OPMODEL_FREE) && !saDeferred)
saSetBandChan(saCmsBand - 1, saCmsChan - 1); saSetBandChan(saCmsBand - 1, saCmsChan - 1);
saCmsFreqRef = saFreqTable[saCmsBand - 1][saCmsChan - 1]; saCmsFreqRef = saFreqTable[saCmsBand - 1][saCmsChan - 1];
@ -1036,7 +1053,8 @@ static long saCmsConfigPowerByGvar(displayPort_t *pDisp, const void *self)
return 0; return 0;
} }
saSetPowerByIndex(saCmsPower - 1); if (saCmsOpmodel == SACMS_OPMODEL_FREE)
saSetPowerByIndex(saCmsPower - 1);
return 0; return 0;
} }
@ -1172,11 +1190,21 @@ static long saCmsCommence(displayPort_t *pDisp, const void *self)
UNUSED(self); UNUSED(self);
if (saCmsOpmodel == SACMS_OPMODEL_RACE) { if (saCmsOpmodel == SACMS_OPMODEL_RACE) {
// Race model
// Setup band, freq and power.
saSetBandChan(saCmsBand - 1, saCmsChan - 1);
saSetPowerByIndex(saCmsPower - 1);
// If in pit mode, cancel it.
if (saCmsPitFMode == 0) if (saCmsPitFMode == 0)
saSetMode(SA_MODE_CLR_PITMODE|SA_MODE_SET_IN_RANGE_PITMODE); saSetMode(SA_MODE_CLR_PITMODE|SA_MODE_SET_IN_RANGE_PITMODE);
else else
saSetMode(SA_MODE_CLR_PITMODE|SA_MODE_SET_OUT_RANGE_PITMODE); saSetMode(SA_MODE_CLR_PITMODE|SA_MODE_SET_OUT_RANGE_PITMODE);
} else { } else {
// Freestyle model
// Setup band and freq / user freq
if (saCmsFselMode == 0) if (saCmsFselMode == 0)
saSetBandChan(saCmsBand - 1, saCmsChan - 1); saSetBandChan(saCmsBand - 1, saCmsChan - 1);
else else