From 6816b38371506f383eacae5d33623c549f2c3b08 Mon Sep 17 00:00:00 2001 From: rusefi Date: Sat, 18 Apr 2020 21:01:23 -0400 Subject: [PATCH] FSIO RPN progress --- firmware/controllers/core/fsio_impl.cpp | 8 ++--- firmware/integration/rusefi_config.txt | 5 ++++ .../soft/javaluator/DoubleEvaluator.java | 15 +++++++--- .../models/src/com/rusefi/InfixConverter.java | 21 ++++++++++++++ .../com/rusefi/config/generated/Fields.java | 6 +++- .../test/ReversePolishNotationParserTest.java | 18 ++++++++++-- java_console/ui/src/com/rusefi/Launcher.java | 2 +- .../src/com/rusefi/ui/widgets/AnyCommand.java | 29 +++++++++++++++++-- 8 files changed, 89 insertions(+), 15 deletions(-) diff --git a/firmware/controllers/core/fsio_impl.cpp b/firmware/controllers/core/fsio_impl.cpp index 5486e1bb3f..28724a6111 100644 --- a/firmware/controllers/core/fsio_impl.cpp +++ b/firmware/controllers/core/fsio_impl.cpp @@ -59,10 +59,10 @@ static LENameOrdinalPair leAcToggle(LE_METHOD_AC_TOGGLE, "ac_on_switch"); // @returns float number of seconds since last A/C toggle static LENameOrdinalPair leTimeSinceAcToggle(LE_METHOD_TIME_SINCE_AC_TOGGLE, "time_since_ac_on_switch"); static LENameOrdinalPair leTimeSinceBoot(LE_METHOD_TIME_SINCE_BOOT, "time_since_boot"); -static LENameOrdinalPair leFsioSetting(LE_METHOD_FSIO_SETTING, "fsio_setting"); -static LENameOrdinalPair leFsioTable(LE_METHOD_FSIO_TABLE, "fsio_table"); -static LENameOrdinalPair leFsioAnalogInput(LE_METHOD_FSIO_ANALOG_INPUT, "fsio_analog_input"); -static LENameOrdinalPair leFsioDigitalInput(LE_METHOD_FSIO_DIGITAL_INPUT, "fsio_digital_input"); +static LENameOrdinalPair leFsioSetting(LE_METHOD_FSIO_SETTING, FSIO_METHOD_FSIO_SETTING); +static LENameOrdinalPair leFsioTable(LE_METHOD_FSIO_TABLE, FSIO_METHOD_FSIO_TABLE); +static LENameOrdinalPair leFsioAnalogInput(LE_METHOD_FSIO_ANALOG_INPUT, FSIO_METHOD_FSIO_ANALOG_INPUT); +static LENameOrdinalPair leFsioDigitalInput(LE_METHOD_FSIO_DIGITAL_INPUT, FSIO_METHOD_FSIO_DIGITAL_INPUT); static LENameOrdinalPair leKnock(LE_METHOD_KNOCK, "knock"); static LENameOrdinalPair leIntakeVVT(LE_METHOD_INTAKE_VVT, "ivvt"); static LENameOrdinalPair leExhaustVVT(LE_METHOD_EXHAUST_VVT, "evvt"); diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 9e26e235c7..1d8cf26b4a 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -164,6 +164,11 @@ struct_no_prefix engine_configuration_s #define FSIO_CURVE_8 8 #define FSIO_CURVE_16 16 +#define FSIO_METHOD_FSIO_SETTING "fsio_setting" +#define FSIO_METHOD_FSIO_TABLE "fsio_table" +#define FSIO_METHOD_FSIO_ANALOG_INPUT "fsio_analog_input" +#define FSIO_METHOD_FSIO_DIGITAL_INPUT "fsio_digital_input" + #define TPS_TPS_ACCEL_TABLE 8 #define MAP_ACCEL_TAPER 8 diff --git a/java_console/models/src/com/fathzer/soft/javaluator/DoubleEvaluator.java b/java_console/models/src/com/fathzer/soft/javaluator/DoubleEvaluator.java index e52d371772..2710e08c27 100644 --- a/java_console/models/src/com/fathzer/soft/javaluator/DoubleEvaluator.java +++ b/java_console/models/src/com/fathzer/soft/javaluator/DoubleEvaluator.java @@ -6,6 +6,8 @@ import java.text.NumberFormat; import java.text.ParsePosition; import java.util.*; +import static com.rusefi.config.generated.Fields.*; + /** An evaluator that is able to evaluate arithmetic expressions on real numbers. *
Built-in operators: