From 82838c25cb8a9fe151c02221681fc96befcb3e50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andis=20Z=C4=ABle?= Date: Fri, 12 Apr 2024 17:33:13 +0300 Subject: [PATCH] Reduced magic numbers --- firmware/src/bsp/board.cpp | 1 + firmware/src/hw/devices.cpp | 26 +++++++++++++++----------- firmware/src/logic/cfg_mem.cpp | 31 +++++++++++++++++++------------ firmware/src/main.cpp | 7 +++++-- 4 files changed, 40 insertions(+), 25 deletions(-) diff --git a/firmware/src/bsp/board.cpp b/firmware/src/bsp/board.cpp index 2762cb6..83216bc 100644 --- a/firmware/src/bsp/board.cpp +++ b/firmware/src/bsp/board.cpp @@ -20,6 +20,7 @@ void board_init(void) mcu::startup(&mcu_cfg); // Board setup + // Fixed function AIN mV and mA scale dccd_i.mul = 215; dccd_i.div = 22; dccd_i.offset = 0; diff --git a/firmware/src/hw/devices.cpp b/firmware/src/hw/devices.cpp index 6c4bf62..650df83 100644 --- a/firmware/src/hw/devices.cpp +++ b/firmware/src/hw/devices.cpp @@ -4,27 +4,32 @@ /**** Private definitions ****/ /**** Private constants ****/ +static const uint16_t def_button_hold_time = 1000; +static const uint16_t def_min_current = 100; +static const uint16_t def_fuse_treshold = 6000; +static const uint16_t def_fuse_hold_cycles = 50; +static const uint16_t def_fuse_cooldown_cycles = 1000; + /**** Private variables ****/ /**** Private function declarations ****/ - /**** Public function definitions ****/ void devices_init(void) { board_init(); - btn_up.hold_time = 1000; - btn_down.hold_time = 1000; + btn_up.hold_time = def_button_hold_time; + btn_down.hold_time = def_button_hold_time; ccout.target = 0; - ccout.min_out = 100; + ccout.min_out = def_min_current; - sup_fuse.hold_current = 6000; - sup_fuse.trip_cycles = 50; - sup_fuse.cooldown_cycles = 1000; + sup_fuse.hold_current = def_fuse_treshold; + sup_fuse.trip_cycles = def_fuse_hold_cycles; + sup_fuse.cooldown_cycles = def_fuse_cooldown_cycles; - out_fuse.hold_current = 6000; - out_fuse.trip_cycles = 100; - out_fuse.cooldown_cycles = 1000; + out_fuse.hold_current = def_fuse_treshold; + out_fuse.trip_cycles = def_fuse_hold_cycles; + out_fuse.cooldown_cycles = def_fuse_cooldown_cycles; hvdin3_pull.write(bsp::DOUT_HIGH); @@ -33,7 +38,6 @@ void devices_init(void) display.write(0x00); display.set_brigthness(100); - ccout.target = 0; ccout.update(); ccout.enable(); } diff --git a/firmware/src/logic/cfg_mem.cpp b/firmware/src/logic/cfg_mem.cpp index 8196dda..6cee6a1 100644 --- a/firmware/src/logic/cfg_mem.cpp +++ b/firmware/src/logic/cfg_mem.cpp @@ -6,12 +6,19 @@ using namespace logic; /**** Private definitions ****/ /**** Private constants ****/ -const uint16_t addr_btn_force = 0x0000; -const uint16_t addr_bmode = 0x0001; -const uint16_t addr_pot_mode = 0x0002; -const uint16_t addr_dsp_brigth = 0x0003; -const uint16_t addr_dsp_dimm = 0x0004; -const uint16_t addr_lock_current = 0x0005; +static const uint16_t addr_btn_force = 0x0000; +static const uint16_t addr_bmode = 0x0001; +static const uint16_t addr_pot_mode = 0x0002; +static const uint16_t addr_dsp_brigth = 0x0003; +static const uint16_t addr_dsp_dimm = 0x0004; +static const uint16_t addr_lock_current = 0x0005; + +static const uint8_t def_btn_force = 0; +static const uint8_t def_pot_mode = 0; +static const uint8_t def_bmode = 0; +static const uint8_t def_dimm = 50; +static const uint8_t def_brigth = 100; +static const uint16_t def_lock_current = 4500; /**** Private variables ****/ /**** Private function declarations ****/ @@ -44,37 +51,37 @@ void logic::CfgMemory::init(void) if(this->mem_btn_force > 100) { - this->mem_btn_force = 0; + this->mem_btn_force = def_btn_force; mcu::eeprom_write8b(addr_btn_force, this->mem_btn_force); }; if(this->mem_bmode > 2) { - this->mem_bmode = 0; + this->mem_bmode = def_bmode; mcu::eeprom_write8b(addr_bmode, this->mem_bmode); }; if(this->mem_pot_mode > 1) { - this->mem_pot_mode = 0; + this->mem_pot_mode = def_pot_mode; mcu::eeprom_write8b(addr_pot_mode, this->mem_pot_mode); }; if(this->mem_dsp_brigth > 100) { - this->mem_dsp_brigth = 100; + this->mem_dsp_brigth = def_brigth; mcu::eeprom_write8b(addr_dsp_brigth, this->mem_dsp_brigth); }; if(this->mem_dsp_dimm > 100) { - this->mem_dsp_dimm = 50; + this->mem_dsp_dimm = def_dimm; mcu::eeprom_write8b(addr_dsp_dimm, this->mem_dsp_dimm); }; if(this->mem_lock_current > 6000) { - this->mem_lock_current = 4500; + this->mem_lock_current = def_lock_current; mcu::eeprom_write16b(addr_lock_current, this->mem_lock_current); }; diff --git a/firmware/src/main.cpp b/firmware/src/main.cpp index 13f8f0a..f3efffe 100644 --- a/firmware/src/main.cpp +++ b/firmware/src/main.cpp @@ -11,6 +11,9 @@ /**** Private definitions ****/ /**** Private constants ****/ +static const uint16_t dsp_lock_bmode = 1000; +static const uint16_t dsp_lock_force = 50; + /**** Private variables ****/ static logic::CfgMemory cfg_mem = logic::CfgMemory(); @@ -77,13 +80,13 @@ int main(void) break; } display.write(bmode_img); - dsp_lock = 1000; + dsp_lock = dsp_lock_bmode; 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; + dsp_lock = dsp_lock_force; button_force.is_new = 0; } else