新增资源文件:添加了字体、图像和屏幕相关的头文件与源文件。 定义数据结构:创建了用于描述字体和图像的数据结构。 实现主屏逻辑:实现了主屏幕的创建函数以及周期性刷新(tick)函数。 集成 LVGL 管理:集成了 LVGL 主题初始化及屏幕管理功能。 添加 UI 初始化:新增 UI 初始化及刷新函数,用于管理界面更新。 重构主入口:重构主应用程序入口,以支持 UI 任务及 FreeRTOS 多任务调度。 更新构建配置:更新了 CMakeLists 及组件配置,以包含新的依赖项。
36 lines
555 B
C
36 lines
555 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;
|
|
} 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*/ |