From 2647e1cf14c533ceeef04084a7c7c35efc05b3ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andis=20Z=C4=ABle?= Date: Fri, 12 Apr 2024 17:26:09 +0300 Subject: [PATCH] Added display user setting persist --- firmware/src/main.cpp | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/firmware/src/main.cpp b/firmware/src/main.cpp index 7d723ee..13f8f0a 100644 --- a/firmware/src/main.cpp +++ b/firmware/src/main.cpp @@ -28,6 +28,7 @@ int main(void) cfg_mem.init(); uint8_t user_force = 0; + uint16_t dsp_lock = 0; button_force.force = cfg_mem.btn_force; dccd_force.brake_mode = cfg_mem.bmode; @@ -58,7 +59,38 @@ int main(void) ccout.update(); // Set display - display.show_percent(dccd_force.force, hw::DisplayLed::LED_DSP_DOT10); + if(dccd_force.is_new_bmode) + { + uint8_t bmode_img = 0x03; + switch(dccd_force.brake_mode) + { + case 1: + bmode_img = 0x0C; + break; + + case 2: + bmode_img = 0x30; + break; + + default: + bmode_img = 0x03; + break; + } + display.write(bmode_img); + dsp_lock = 1000; + dccd_force.is_new_bmode = 0; + } + else if((button_force.is_new)&&(cfg_mem.pot_mode==0)) + { + display.show_percent(dccd_force.force, hw::DisplayLed::LED_DSP_DOT10); + dsp_lock = 500; + button_force.is_new = 0; + } + else + { + if(dsp_lock) dsp_lock--; + else display.show_percent(dccd_force.force, hw::DisplayLed::LED_DSP_DOT10); + } // Process dimm if(sw_dimm.state == hw::BUTTON_ON) display.set_brigthness(cfg_mem.dsp_dimm);