✨ 新增功能 - 按键驱动模块:GPIO中断+软件去抖,支持BOOT和KEY2按键事件回调 - 休眠管理器:10秒无操作自动休眠,触摸/按键唤醒,UI集成开关 - 电池电量监控:GPIO3 ADC实时检测,ScreenSet界面圆弧显示 🐛 Bug修复 - 修复FreeRTOS任务栈溢出导致内存损坏(battery任务栈2048→4096) - 修复图片文件名损坏问题(改用静态缓冲区替代动态分配) - 修复触摸中断引脚配置错误(GPIO4→GPIO5,匹配V1.0硬件) - 修复开机闪烁问题(调整背光初始化时序,UI渲染后再点亮) 🎨 界面优化 - ScreenSet恢复为标准Screen切换方式(移除浮动面板架构) - 亮度调节支持0%(完全关闭)和10-100%范围 - ScreenHome界面电量显示独立(不关联实时电量) - 手势导航优化:下拉显示设置,上滑返回主界面 ⚡ 性能优化 - 启动时间优化:从650ms缩短至170ms - 内存管理优化:图片列表使用静态数组(10×32字节) - 任务栈配置调优:battery 4096, button 3072, sleep_mgr 3072 📝 其他改进 - CMakeLists.txt添加新模块编译配置 - 添加硬件版本兼容性注释(GPIO引脚说明) - 完善函数注释和错误日志输出 - sdkconfig配置更新 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
49 lines
1.3 KiB
C
49 lines
1.3 KiB
C
// This file was generated by SquareLine Studio
|
|
// SquareLine Studio version: SquareLine Studio 1.6.0
|
|
// LVGL version: 8.3.11
|
|
// Project name: Lcd_Pro
|
|
|
|
#include "ui.h"
|
|
#include "ui_helpers.h"
|
|
|
|
///////////////////// VARIABLES ////////////////////
|
|
|
|
// EVENTS
|
|
lv_obj_t *ui____initial_actions0;
|
|
|
|
// IMAGES AND IMAGE SETS
|
|
|
|
///////////////////// TEST LVGL SETTINGS ////////////////////
|
|
#if LV_COLOR_DEPTH != 16
|
|
#error "LV_COLOR_DEPTH should be 16bit to match SquareLine Studio's settings"
|
|
#endif
|
|
#if LV_COLOR_16_SWAP !=1
|
|
#error "LV_COLOR_16_SWAP should be 1 to match SquareLine Studio's settings"
|
|
#endif
|
|
|
|
///////////////////// ANIMATIONS ////////////////////
|
|
|
|
///////////////////// FUNCTIONS ////////////////////
|
|
|
|
///////////////////// SCREENS ////////////////////
|
|
|
|
void ui_init( void )
|
|
{
|
|
lv_disp_t *dispp = lv_disp_get_default();
|
|
lv_theme_t *theme = lv_theme_default_init(dispp, lv_palette_main(LV_PALETTE_BLUE), lv_palette_main(LV_PALETTE_RED), false, LV_FONT_DEFAULT);
|
|
lv_disp_set_theme(dispp, theme);
|
|
|
|
ui_ScreenHome_screen_init();
|
|
ui_ScreenImg_screen_init();
|
|
ui_ScreenSet_screen_init();
|
|
|
|
ui____initial_actions0 = lv_obj_create(NULL);
|
|
lv_disp_load_scr( ui_ScreenHome);
|
|
}
|
|
|
|
void ui_destroy( void )
|
|
{ui_ScreenHome_screen_destroy();
|
|
ui_ScreenSet_screen_destroy();
|
|
ui_ScreenImg_screen_destroy();
|
|
}
|