引入 vars.c 和 vars.h 用于管理与 UI 相关的全局变量。 新增 get_var_weigt_ui 和 set_var_weigt_ui 函数,用于访问和修改 UI 重量变量。 更新 CMakeLists.txt 以包含新的 UI 和 LVGL 依赖项。 将 main.c 转换为 main.cpp 以支持 C++ 特性,并重构了应用程序入口点。 实现了使用 FreeRTOS 定期更新 UI 的 UI 任务。 在 partitions.csv 中创建自定义分区表,用于管理闪存空间。 添加 update_sdkconfig.sh 脚本,自动更新 SDK 配置中的闪存大小和 SPIRAM 设置。 移除旧的 main.c 文件以精简项目结构。
39 lines
615 B
C
39 lines
615 B
C
#ifndef EEZ_LVGL_UI_SCREENS_H
|
|
#define EEZ_LVGL_UI_SCREENS_H
|
|
|
|
#include <lvgl.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
// Screens
|
|
|
|
enum ScreensEnum {
|
|
_SCREEN_ID_FIRST = 1,
|
|
SCREEN_ID_MAIN = 1,
|
|
_SCREEN_ID_LAST = 1
|
|
};
|
|
|
|
typedef struct _objects_t {
|
|
lv_obj_t *main;
|
|
lv_obj_t *obj0;
|
|
lv_obj_t *obj1;
|
|
lv_obj_t *obj2;
|
|
} objects_t;
|
|
|
|
extern objects_t objects;
|
|
|
|
void create_screen_main();
|
|
void tick_screen_main();
|
|
|
|
void tick_screen_by_id(enum ScreensEnum screenId);
|
|
void tick_screen(int screen_index);
|
|
|
|
void create_screens();
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /*EEZ_LVGL_UI_SCREENS_H*/ |