1
0
Fork 0
mirror of https://github.com/opentx/opentx.git synced 2025-07-17 05:15:18 +03:00

Logical Switches import issue (Telemetry)

This commit is contained in:
Bertrand Songis 2014-02-12 15:57:53 +01:00
parent a0dbfddad0
commit 491f4e12c2
4 changed files with 24 additions and 16 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
/.project
/.settings

View file

@ -1165,7 +1165,10 @@ class LogicalSwitchField: public TransformedField {
functionsConversionTable(board, version),
sourcesConversionTable(SourcesConversionTable::getInstance(board, version, variant, (version >= 214 || (!IS_ARM(board) && version >= 213)) ? 0 : FLAG_NOSWITCHES)),
switchesConversionTable(SwitchesConversionTable::getInstance(board, version)),
andswitchesConversionTable(AndSwitchesConversionTable::getInstance(board, version))
andswitchesConversionTable(AndSwitchesConversionTable::getInstance(board, version)),
v1(0),
v2(0),
v3(0)
{
if (IS_ARM(board) && version >= 216) {
internalField.Append(new SignedField<8>(v1));
@ -1202,7 +1205,11 @@ class LogicalSwitchField: public TransformedField {
virtual void beforeExport()
{
if (csw.func == LS_FN_STAY) {
if (csw.func == LS_FN_TIMER) {
v1 = csw.val1;
v2 = csw.val2;
}
else if (csw.func == LS_FN_STAY) {
switchesConversionTable->exportValue(csw.val1, v1);
v2 = csw.val2;
v3 = csw.val3;
@ -1215,18 +1222,19 @@ class LogicalSwitchField: public TransformedField {
sourcesConversionTable->exportValue(csw.val1, v1);
sourcesConversionTable->exportValue(csw.val2, v2);
}
else {
if ((csw.func >= LS_FN_VPOS && csw.func <= LS_FN_ANEG) || (csw.func >= LS_FN_EQUAL && csw.func!=LS_FN_TIMER))
else if (csw.func != LS_FN_OFF) {
sourcesConversionTable->exportValue(csw.val1, v1);
else
v1 = csw.val1;
v2 = csw.val2;
}
}
virtual void afterImport()
{
if (csw.func == LS_FN_STAY) {
if (csw.func == LS_FN_TIMER) {
csw.val1 = v1;
csw.val2 = v2;
}
else if (csw.func == LS_FN_STAY) {
switchesConversionTable->importValue(v1, csw.val1);
csw.val2 = v2;
csw.val3 = v3;
@ -1236,14 +1244,11 @@ class LogicalSwitchField: public TransformedField {
switchesConversionTable->importValue(v2, csw.val2);
}
else if (csw.func >= LS_FN_EQUAL && csw.func <= LS_FN_ELESS) {
sourcesConversionTable->importValue(v1, csw.val1);
sourcesConversionTable->importValue(v2, csw.val2);
sourcesConversionTable->importValue((uint8_t)v1, csw.val1);
sourcesConversionTable->importValue((uint8_t)v2, csw.val2);
}
else {
if ((csw.func >= LS_FN_VPOS && csw.func <= LS_FN_ANEG) || (csw.func >= LS_FN_EQUAL && csw.func!=LS_FN_TIMER))
sourcesConversionTable->importValue(v1, csw.val1);
else
csw.val1 = v1;
else if (csw.func != LS_FN_OFF) {
sourcesConversionTable->importValue((uint8_t)v1, csw.val1);
csw.val2 = v2;
}
}

1
radio/.gitignore vendored Normal file
View file

@ -0,0 +1 @@
/gtest-1.6.0

View file

@ -1,7 +1,6 @@
/stamp-opentx.h
/opentx.elf
/simu
/eeprom.bin
/opentx.hex
/opentx.map
/simu.d
@ -9,6 +8,7 @@
/*.sh
/*.o
/*.bin
/*.bin.*
/*.lst
/SCRIPTS
/SOUNDS