Moved can into task manager
This commit is contained in:
@ -130,11 +130,6 @@ struct StatsUpdateRateAccessor : public RefAccessorSaveSettings<int16_t> { int16
|
||||
struct DisplayUpdateRateAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.boardcomputerHardware.timersSettings.displayUpdateRate; } };
|
||||
struct DisplayRedrawRateAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.boardcomputerHardware.timersSettings.displayRedrawRate; } };
|
||||
|
||||
// CAN
|
||||
#ifdef FEATURE_CAN
|
||||
struct CanReceiveRateAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.boardcomputerHardware.timersSettings.canReceiveRate; } };
|
||||
#endif
|
||||
|
||||
// Cloud
|
||||
#ifdef FEATURE_CLOUD
|
||||
struct CloudCollectRateAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.boardcomputerHardware.timersSettings.cloudCollectRate; } };
|
||||
|
@ -42,16 +42,6 @@ using DisplayRedrawRateChangeDisplay = makeComponent<
|
||||
BackActionInterface<SwitchScreenAction<TimersMenu>>,
|
||||
SwitchScreenAction<TimersMenu>
|
||||
>;
|
||||
|
||||
#ifdef FEATURE_CAN
|
||||
using CanReceiveRateChangeDisplay = makeComponent<
|
||||
ChangeValueDisplay<int16_t>,
|
||||
StaticText<TEXT_CANRECEIVERATE>,
|
||||
CanReceiveRateAccessor,
|
||||
BackActionInterface<SwitchScreenAction<TimersMenu>>,
|
||||
SwitchScreenAction<TimersMenu>
|
||||
>;
|
||||
#endif
|
||||
}
|
||||
|
||||
TimersMenu::TimersMenu()
|
||||
@ -60,9 +50,6 @@ TimersMenu::TimersMenu()
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_STATSUPDATERATE>, SwitchScreenAction<StatsUpdateRateChangeDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_DISPLAYUPDATERATE>, SwitchScreenAction<DisplayUpdateRateChangeDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_DISPLAYREDRAWRATE>, SwitchScreenAction<DisplayRedrawRateChangeDisplay>>>();
|
||||
#ifdef FEATURE_CAN
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CANRECEIVERATE>, SwitchScreenAction<CanReceiveRateChangeDisplay>>>();
|
||||
#endif
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<BoardcomputerHardwareSettingsMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
|
@ -38,9 +38,6 @@ using namespace std::chrono_literals;
|
||||
#ifdef FEATURE_WEBSERVER
|
||||
#include "webserver.h"
|
||||
#endif
|
||||
#ifdef FEATURE_CAN
|
||||
#include "can.h"
|
||||
#endif
|
||||
#ifdef FEATURE_CLOUD
|
||||
#include "cloud.h"
|
||||
#include "udpcloud.h"
|
||||
@ -68,9 +65,6 @@ std::optional<espchrono::millis_clock::time_point> lastModeUpdate;
|
||||
std::optional<espchrono::millis_clock::time_point> lastStatsUpdate;
|
||||
std::optional<espchrono::millis_clock::time_point> lastDisplayUpdate;
|
||||
std::optional<espchrono::millis_clock::time_point> lastDisplayRedraw;
|
||||
#ifdef FEATURE_CAN
|
||||
std::optional<espchrono::millis_clock::time_point> lastCanParse;
|
||||
#endif
|
||||
#ifdef FEATURE_BLE
|
||||
std::optional<espchrono::millis_clock::time_point> lastBleUpdate;
|
||||
#endif
|
||||
@ -133,11 +127,6 @@ extern "C" void app_main()
|
||||
task.setup();
|
||||
}
|
||||
|
||||
#ifdef FEATURE_CAN
|
||||
bootLabel.redraw("can");
|
||||
can::initCan();
|
||||
#endif
|
||||
|
||||
#ifdef FEATURE_SERIAL
|
||||
bootLabel.redraw("front Serial begin");
|
||||
controllers.front.serial.get().begin(38400, SERIAL_8N1, PINS_RX1, PINS_TX1);
|
||||
@ -266,16 +255,6 @@ extern "C" void app_main()
|
||||
performance.lastTime = now;
|
||||
}
|
||||
|
||||
#ifdef FEATURE_CAN
|
||||
if (!lastCanParse || now - *lastCanParse >= 1000ms/settings.boardcomputerHardware.timersSettings.canReceiveRate)
|
||||
{
|
||||
//can::tryParseCanInput();
|
||||
can::parseCanInput();
|
||||
|
||||
lastCanParse = now;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef FEATURE_SERIAL
|
||||
for (Controller &controller : controllers)
|
||||
controller.parser.update();
|
||||
|
@ -6,7 +6,6 @@
|
||||
|
||||
// local includes
|
||||
#include "globals.h"
|
||||
|
||||
#ifdef FEATURE_CAN
|
||||
#include "can.h"
|
||||
#endif
|
||||
|
@ -140,9 +140,6 @@ constexpr Settings::BoardcomputerHardware::TimersSettings defaultTimersSettings
|
||||
.statsUpdateRate = 50,
|
||||
.displayUpdateRate = 50,
|
||||
.displayRedrawRate = 50,
|
||||
#ifdef FEATURE_CAN
|
||||
.canReceiveRate = 100,
|
||||
#endif
|
||||
#ifdef FEATURE_CLOUD
|
||||
.cloudCollectRate = 100,
|
||||
.cloudSendRate = 1,
|
||||
|
@ -107,9 +107,6 @@ struct Settings
|
||||
int16_t statsUpdateRate;
|
||||
int16_t displayUpdateRate;
|
||||
int16_t displayRedrawRate;
|
||||
#ifdef FEATURE_CAN
|
||||
int16_t canReceiveRate;
|
||||
#endif
|
||||
#ifdef FEATURE_CLOUD
|
||||
int16_t cloudCollectRate;
|
||||
int16_t cloudSendRate;
|
||||
@ -303,9 +300,6 @@ void Settings::executeForEveryCommonSetting(T &&callable)
|
||||
callable("statsUpdateRate", boardcomputerHardware.timersSettings.statsUpdateRate);
|
||||
callable("displayUpdateRa", boardcomputerHardware.timersSettings.displayUpdateRate);
|
||||
callable("displayRedrawRa", boardcomputerHardware.timersSettings.displayRedrawRate);
|
||||
#ifdef FEATURE_CAN
|
||||
callable("canReceiveRate", boardcomputerHardware.timersSettings.canReceiveRate);
|
||||
#endif
|
||||
#ifdef FEATURE_CLOUD
|
||||
callable("cloudCollectRat", boardcomputerHardware.timersSettings.cloudCollectRate);
|
||||
callable("cloudSendRate", boardcomputerHardware.timersSettings.cloudSendRate);
|
||||
|
@ -41,6 +41,9 @@
|
||||
#ifdef FEATURE_BLUETOOTH
|
||||
#include "bluetooth_bobby.h"
|
||||
#endif
|
||||
#ifdef FEATURE_CAN
|
||||
#include "can.h"
|
||||
#endif
|
||||
|
||||
using namespace std::chrono_literals;
|
||||
|
||||
@ -49,36 +52,39 @@ constexpr const char * const TAG = "TASKS";
|
||||
|
||||
espcpputils::SchedulerTask schedulerTasksArr[] {
|
||||
espcpputils::SchedulerTask { "wifi", wifi_begin, wifi_update, 100ms },
|
||||
espcpputils::SchedulerTask { "input", InputDispatcher::init, InputDispatcher::update, {} },
|
||||
espcpputils::SchedulerTask { "input", InputDispatcher::init, InputDispatcher::update, 20ms },
|
||||
#ifdef FEATURE_DPAD
|
||||
espcpputils::SchedulerTask { "dpad", dpad::init, dpad::update, {} },
|
||||
espcpputils::SchedulerTask { "dpad", dpad::init, dpad::update, 20ms },
|
||||
#endif
|
||||
#ifdef FEATURE_DPAD_3WIRESW
|
||||
espcpputils::SchedulerTask { "dpad3wire", dpad3wire::init, dpad3wire::update, {} },
|
||||
espcpputils::SchedulerTask { "dpad3wire", dpad3wire::init, dpad3wire::update, 20ms },
|
||||
#endif
|
||||
#ifdef FEATURE_DPAD_5WIRESW
|
||||
espcpputils::SchedulerTask { "dpad5wire", dpad5wire::init, dpad5wire::update, {} },
|
||||
espcpputils::SchedulerTask { "dpad5wire", dpad5wire::init, dpad5wire::update, 20ms },
|
||||
#endif
|
||||
#ifdef FEATURE_DPAD_5WIRESW_2OUT
|
||||
espcpputils::SchedulerTask { "dpad5wire_2out", dpad5wire_2out::init, dpad5wire_2out::update, {} },
|
||||
espcpputils::SchedulerTask { "dpad5wire_2out", dpad5wire_2out::init, dpad5wire_2out::update, 20ms },
|
||||
#endif
|
||||
#ifdef FEATURE_DPAD_6WIRESW
|
||||
espcpputils::SchedulerTask { "dpad6wire", dpad6wire::init, dpad6wire::update, {} },
|
||||
espcpputils::SchedulerTask { "dpad6wire", dpad6wire::init, dpad6wire::update, 20ms },
|
||||
#endif
|
||||
#ifdef FEATURE_ROTARY
|
||||
espcpputils::SchedulerTask { "rotary", initRotary, updateRotary, {} },
|
||||
espcpputils::SchedulerTask { "rotary", initRotary, updateRotary, 20ms },
|
||||
#endif
|
||||
#ifdef FEATURE_MOSFETS
|
||||
espcpputils::SchedulerTask { "mosfets", init_mosfets, update_mosfets, {} },
|
||||
espcpputils::SchedulerTask { "mosfets", init_mosfets, update_mosfets, 100ms },
|
||||
#endif
|
||||
espcpputils::SchedulerTask { "wifi", wifi_begin, wifi_update, 100ms },
|
||||
#ifdef FEATURE_NTP
|
||||
espcpputils::SchedulerTask { "time", initTime, updateTime, 100ms },
|
||||
#endif
|
||||
espcpputils::SchedulerTask { "potis", initPotis, readPotis, 20ms },
|
||||
espcpputils::SchedulerTask { "potis", initPotis, readPotis, 20ms },
|
||||
#ifdef FEATURE_BLUETOOTH
|
||||
espcpputils::SchedulerTask { "bluetooth", bluetooth_init, bluetooth_update, 100ms },
|
||||
#endif
|
||||
#ifdef FEATURE_CAN
|
||||
espcpputils::SchedulerTask { "can", can::initCan, can::parseCanInput, 50ms },
|
||||
#endif
|
||||
};
|
||||
} // namespace
|
||||
|
||||
|
@ -428,9 +428,6 @@ char TEXT_MODEUPDATERATE[] = "Mode update rate";
|
||||
char TEXT_STATSUPDATERATE[] = "Stats update rate";
|
||||
char TEXT_DISPLAYUPDATERATE[] = "Display update rate";
|
||||
char TEXT_DISPLAYREDRAWRATE[] = "Display redraw rate";
|
||||
#ifdef FEATURE_CAN
|
||||
char TEXT_CANRECEIVERATE[] = "CAN receive rate";
|
||||
#endif
|
||||
//char TEXT_BACK[] = "Back";
|
||||
|
||||
//TimeSettingsMenu
|
||||
|
@ -428,9 +428,6 @@ extern char TEXT_MODEUPDATERATE[];
|
||||
extern char TEXT_STATSUPDATERATE[];
|
||||
extern char TEXT_DISPLAYUPDATERATE[];
|
||||
extern char TEXT_DISPLAYREDRAWRATE[];
|
||||
#ifdef FEATURE_CAN
|
||||
extern char TEXT_CANRECEIVERATE[];
|
||||
#endif
|
||||
//extern char TEXT_BACK[];
|
||||
|
||||
//TimeSettingsMenu
|
||||
|
Reference in New Issue
Block a user