mirror of
https://github.com/No-Chicken/Power-Pico.git
synced 2026-04-03 13:02:36 +08:00
更新硬件设置
This commit is contained in:
@@ -57,19 +57,23 @@ void ui_set_page_key_handler(uint8_t key_id)
|
||||
slider_value += 10;
|
||||
if(slider_value > 100) slider_value = 100;
|
||||
lv_slider_set_value(ui_SliderBL, slider_value, LV_ANIM_ON);
|
||||
Sys_Set_BacklightLevel(slider_value);
|
||||
} else if (key_id == KEYN_NUM) {
|
||||
int16_t slider_value = lv_slider_get_value(ui_SliderBL);
|
||||
slider_value -= 10;
|
||||
if(slider_value < 0) slider_value = 10;
|
||||
if(slider_value < 10) slider_value = 10;
|
||||
lv_slider_set_value(ui_SliderBL, slider_value, LV_ANIM_ON);
|
||||
Sys_Set_BacklightLevel(slider_value);
|
||||
}
|
||||
break;
|
||||
// key sound
|
||||
case 1:
|
||||
if (key_id == KEYY_NUM) {
|
||||
lv_obj_add_state(ui_SwitchKS, LV_STATE_CHECKED);
|
||||
Sys_Set_KeySoundEnable(1);
|
||||
} else if(key_id == KEYN_NUM) {
|
||||
lv_obj_clear_state(ui_SwitchKS, LV_STATE_CHECKED);
|
||||
Sys_Set_KeySoundEnable(0);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -80,26 +84,23 @@ void ui_set_page_key_handler(uint8_t key_id)
|
||||
|
||||
// chose rotation
|
||||
case 3:
|
||||
uint16_t rotation = Sys_Get_Rotation();
|
||||
if (key_id == KEYY_NUM) {
|
||||
sys_settings.rotation = (sys_settings.rotation + 360 + 90) % 360;
|
||||
lv_display_rotation_t rotation = sys_settings.rotation / 90;
|
||||
lv_display_set_rotation(lv_display_get_default(), rotation);
|
||||
ui_full_screen_refresh(ui_SetPage);
|
||||
rotation = (rotation + 360 + 90) % 360;
|
||||
} else if(key_id == KEYN_NUM) {
|
||||
sys_settings.rotation = (sys_settings.rotation + 360 - 90) % 360;
|
||||
lv_display_rotation_t rotation = sys_settings.rotation / 90;
|
||||
lv_display_set_rotation(lv_display_get_default(), rotation);
|
||||
ui_full_screen_refresh(ui_SetPage);
|
||||
rotation = (rotation + 360 - 90) % 360;
|
||||
}
|
||||
if (sys_settings.rotation == 0) {
|
||||
if (rotation == 0) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 0 >");
|
||||
} else if (sys_settings.rotation == 90) {
|
||||
} else if (rotation == 90) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 90 >");
|
||||
} else if (sys_settings.rotation == 180) {
|
||||
} else if (rotation == 180) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 180 >");
|
||||
} else if (sys_settings.rotation == 270) {
|
||||
} else if (rotation == 270) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 270 >");
|
||||
}
|
||||
Sys_Set_Rotation(rotation);
|
||||
ui_full_screen_refresh(ui_SetPage);
|
||||
break;
|
||||
|
||||
// about
|
||||
@@ -108,6 +109,32 @@ void ui_set_page_key_handler(uint8_t key_id)
|
||||
break;
|
||||
|
||||
}
|
||||
// save settings to eeprom
|
||||
EEPROM_SysSetting_Save();
|
||||
}
|
||||
}
|
||||
|
||||
static void _setting_init(void) {
|
||||
|
||||
// backlight
|
||||
lv_slider_set_value(ui_SliderBL, Sys_Get_BacklightLevel(), LV_ANIM_OFF);
|
||||
|
||||
// key sound
|
||||
if(Sys_Get_KeySoundEnable())
|
||||
lv_obj_add_state(ui_SwitchKS, LV_STATE_CHECKED);
|
||||
else
|
||||
lv_obj_clear_state(ui_SwitchKS, LV_STATE_CHECKED);
|
||||
|
||||
// lcd rotation
|
||||
uint16_t rotation = Sys_Get_Rotation();
|
||||
if (rotation == 0) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 0 >");
|
||||
} else if (rotation == 90) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 90 >");
|
||||
} else if (rotation == 180) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 180 >");
|
||||
} else if (rotation == 270) {
|
||||
lv_label_set_text(ui_LabelRotNum, "< 270 >");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -235,6 +262,9 @@ void ui_SetPage_screen_init(void)
|
||||
lv_label_set_text(ui_LabelAbout, "About\nPower-Pico\nA uA current meter\nV 1.0.0");
|
||||
lv_obj_set_style_text_font(ui_LabelAbout, &lv_font_montserrat_16, LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||
|
||||
// init setting values
|
||||
_setting_init();
|
||||
|
||||
// store panels in array
|
||||
panels[0] = ui_PanelBL;
|
||||
panels[1] = ui_PanelKS;
|
||||
|
||||
@@ -36,15 +36,21 @@ void ui_main_page_key_handler(uint8_t key_id)
|
||||
} else if (key_id == KEYL_NUM) {
|
||||
// rotation - 90 degrees
|
||||
// rotation – LV_DISPLAY_ROTATION_0/90/180/270
|
||||
sys_settings.rotation = (sys_settings.rotation + 360 - 90) % 360;
|
||||
lv_display_rotation_t rotation = sys_settings.rotation / 90;
|
||||
lv_display_set_rotation(lv_display_get_default(), rotation);
|
||||
uint16_t rotation = Sys_Get_Rotation();
|
||||
rotation = (rotation + 360 - 90) % 360;
|
||||
// set rotation value
|
||||
Sys_Set_Rotation(rotation);
|
||||
// save settings to eeprom
|
||||
EEPROM_SysSetting_Save();
|
||||
ui_full_screen_refresh(ui_HomeScreen);
|
||||
} else if (key_id == KEYR_NUM) {
|
||||
// rotation + 90 degrees
|
||||
sys_settings.rotation = (sys_settings.rotation + 360 + 90) % 360;
|
||||
lv_display_rotation_t rotation = sys_settings.rotation / 90;
|
||||
lv_display_set_rotation(lv_display_get_default(), rotation);
|
||||
uint16_t rotation = Sys_Get_Rotation();
|
||||
rotation = (rotation + 360 + 90) % 360;
|
||||
// set rotation value
|
||||
Sys_Set_Rotation(rotation);
|
||||
// save settings to eeprom
|
||||
EEPROM_SysSetting_Save();
|
||||
ui_full_screen_refresh(ui_HomeScreen);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@ void ui_init(void)
|
||||
PageManager_register(&pages[i]);
|
||||
}
|
||||
PageManager_load_init_screen();
|
||||
lv_display_set_rotation(dispp, sys_settings.rotation / 90);
|
||||
lv_display_set_rotation(dispp, Sys_Get_Rotation() / 90);
|
||||
|
||||
//timer
|
||||
// lv_timer_t * ui_MainTimer = lv_timer_create(main_timer, 1000, NULL);
|
||||
|
||||
Reference in New Issue
Block a user