diff --git a/LVGL.Simulator/LVGL.Simulator.vcxproj b/LVGL.Simulator/LVGL.Simulator.vcxproj index c95fd7b..8aac746 100644 --- a/LVGL.Simulator/LVGL.Simulator.vcxproj +++ b/LVGL.Simulator/LVGL.Simulator.vcxproj @@ -35,9 +35,8 @@ - + - @@ -54,12 +53,11 @@ - + - + - diff --git a/LVGL.Simulator/LVGL.Simulator.vcxproj.filters b/LVGL.Simulator/LVGL.Simulator.vcxproj.filters index 5aa0528..c29e27d 100644 --- a/LVGL.Simulator/LVGL.Simulator.vcxproj.filters +++ b/LVGL.Simulator/LVGL.Simulator.vcxproj.filters @@ -8,18 +8,15 @@ lvgl_mydemo\data - - lvgl_mydemo\data - - - lvgl_mydemo\srceen - lvgl_mydemo\srceen lvgl_mydemo\srceen + + lvgl_mydemo\data + @@ -36,22 +33,19 @@ lvgl_mydemo\data - - lvgl_mydemo\data - lvgl_mydemo\srceen - - lvgl_mydemo\srceen - lvgl_mydemo\srceen - + lvgl_mydemo\log - + + lvgl_mydemo\data + + lvgl_mydemo\log diff --git a/LVGL.Simulator/lvgl_mydemo/.vscode/settings.json b/LVGL.Simulator/lvgl_mydemo/.vscode/settings.json new file mode 100644 index 0000000..691a8f6 --- /dev/null +++ b/LVGL.Simulator/lvgl_mydemo/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "C_Cpp.errorSquiggles": "Disabled" +} \ No newline at end of file diff --git a/LVGL.Simulator/lvgl_mydemo/README.md b/LVGL.Simulator/lvgl_mydemo/README.md index 1aa8459..6205e21 100644 --- a/LVGL.Simulator/lvgl_mydemo/README.md +++ b/LVGL.Simulator/lvgl_mydemo/README.md @@ -1 +1,20 @@ -lvgl mode code +工程文件结构 + +assert: 存放字体和图片资源 + font:存放字体 + image:存放图片 + +data: 用于构建MVC模型 + dataModel.c: MVC模型中的Model,用于数据变化是更新显示器 + gui_scr_mgr.c: MVC模型中的Controller,用于控制界面的切换 + +screen:界面 + +widgets:自定义的通用组件widgtes + +event: 自定义的一些事件 + +log:日志管理 + + + diff --git a/LVGL.Simulator/lvgl_mydemo/screen/gui_scr_mgr.c b/LVGL.Simulator/lvgl_mydemo/data/gui_scr_mgr.c similarity index 95% rename from LVGL.Simulator/lvgl_mydemo/screen/gui_scr_mgr.c rename to LVGL.Simulator/lvgl_mydemo/data/gui_scr_mgr.c index cddc3b3..0c50ec8 100644 --- a/LVGL.Simulator/lvgl_mydemo/screen/gui_scr_mgr.c +++ b/LVGL.Simulator/lvgl_mydemo/data/gui_scr_mgr.c @@ -1,12 +1,13 @@ -/************************************************************************ - * FilePath : gui_scr_mgr.c +/************************************************************************ + * FilePath : scr_mgr.c * Author : GX.Duan - * Date : 2022-09-10 14:17:29 - * LastEditTime : 2022-09-10 15:43:26 + * Date : 2022-08-18 22:59:28 + * LastEditTime : 2022-09-30 22:14:31 * LastEditors : ShallowGreen123 2608653986@qq.com * Copyright (c): 2022 by GX.Duan, All Rights Reserved. * Github : https://github.com/ShallowGreen123/lvgl_mydemo ************************************************************************/ + #define __SCR_MGR_C__ /********************************************************************************* @@ -44,7 +45,8 @@ static const SCR_MGR_SCR_HANDLE_T *ScrMgrScrHandles[] = { * STATIC FUNCTION *********************************************************************************/ -static SCR_MGR_SCR_HANDLE_T *ScrMgrFindScrById(uint32_t id) { +static SCR_MGR_SCR_HANDLE_T *ScrMgrFindScrById(uint32_t id) +{ uint32_t i; for (i = 0; i < ScrMgrRegScrList->ScrCnt; i++) { @@ -55,7 +57,8 @@ static SCR_MGR_SCR_HANDLE_T *ScrMgrFindScrById(uint32_t id) { return NULL; } -static void ScrMgrStackScrActive(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { +static void ScrMgrStackScrActive(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) +{ if (stack_item->State == SCR_MGR_SCR_STATE_DESTROYED) { stack_item->ScrObj = stack_item->ScrHandle->ScrCreate(NULL); stack_item->ScrHandle->ScrEnter(); @@ -66,14 +69,16 @@ static void ScrMgrStackScrActive(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { } } -static void ScrMgrStackScrInactive(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { +static void ScrMgrStackScrInactive(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) +{ if (stack_item->State > SCR_MGR_SCR_STATE_INACTIVE) { stack_item->ScrHandle->ScrExit(); stack_item->State = SCR_MGR_SCR_STATE_INACTIVE; } } -static void ScrMgrStackScrDestroy(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { +static void ScrMgrStackScrDestroy(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) +{ if (stack_item->State > SCR_MGR_SCR_STATE_INACTIVE) { stack_item->ScrHandle->ScrExit(); stack_item->ScrHandle->ScrDestroy(); @@ -84,7 +89,8 @@ static void ScrMgrStackScrDestroy(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { } } -static void ScrMgrStackScrRemove(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { +static void ScrMgrStackScrRemove(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) +{ if (stack_item->State > SCR_MGR_SCR_STATE_INACTIVE) { stack_item->ScrHandle->ScrExit(); stack_item->ScrHandle->ScrDestroy(); @@ -99,7 +105,8 @@ static void ScrMgrStackScrRemove(SCR_MGR_SCR_STACK_HANDLE_T *stack_item) { * GLOBAL FUNCTION *********************************************************************************/ -void ScrMgrInit(void) { +void ScrMgrInit(void) +{ uint32_t cnt = sizeof(ScrMgrScrHandles) / sizeof(ScrMgrScrHandles[0]); uint32_t i; @@ -115,7 +122,8 @@ void ScrMgrInit(void) { } } -bool ScrMgrSwitchScr(uint32_t scr_id, bool anim) { +bool ScrMgrSwitchScr(uint32_t scr_id, bool anim) +{ SCR_MGR_SCR_HANDLE_T *tgt_scr = ScrMgrFindScrById(scr_id); SCR_MGR_SCR_HANDLE_T *cur_scr = NULL; lv_obj_t *cur_scr_obj = NULL; @@ -172,7 +180,8 @@ bool ScrMgrSwitchScr(uint32_t scr_id, bool anim) { return true; } -bool ScrMgrPushScr(uint32_t scr_id, bool anim) { +bool ScrMgrPushScr(uint32_t scr_id, bool anim) +{ SCR_MGR_SCR_HANDLE_T *tgt_scr = ScrMgrFindScrById(scr_id); SCR_MGR_SCR_STACK_HANDLE_T *stack_item; @@ -217,7 +226,8 @@ bool ScrMgrPushScr(uint32_t scr_id, bool anim) { return true; } -bool ScrMgrPopScr(bool anim) { +bool ScrMgrPopScr(bool anim) +{ SCR_MGR_SCR_STACK_HANDLE_T *dst_item = NULL; lv_obj_t *cur_scr_obj; lv_obj_t *dst_scr_obj; @@ -252,7 +262,8 @@ bool ScrMgrPopScr(bool anim) { return true; } -bool ScrMgrPopNScr(uint32_t cnt, bool anim) { +bool ScrMgrPopNScr(uint32_t cnt, bool anim) +{ SCR_MGR_SCR_STACK_HANDLE_T *dst_item = NULL; lv_obj_t *cur_scr_obj; lv_obj_t *dst_scr_obj; @@ -295,7 +306,8 @@ bool ScrMgrPopNScr(uint32_t cnt, bool anim) { return true; } -bool ScrMgrPopToRoot(bool anim) { +bool ScrMgrPopToRoot(bool anim) +{ SCR_MGR_SCR_STACK_HANDLE_T *dst_item = NULL; lv_obj_t *cur_scr_obj; @@ -337,7 +349,8 @@ bool ScrMgrPopToRoot(bool anim) { return true; } -void ScrMgrTrimMem(void) { +void ScrMgrTrimMem(void) +{ SCR_MGR_SCR_STACK_HANDLE_T *stack_item = ScrMgrScrStackRoot; while ((stack_item != NULL) && (stack_item != ScrMgrScrStackTop)) { diff --git a/LVGL.Simulator/lvgl_mydemo/screen/gui_scr_mgr.h b/LVGL.Simulator/lvgl_mydemo/data/gui_scr_mgr.h similarity index 88% rename from LVGL.Simulator/lvgl_mydemo/screen/gui_scr_mgr.h rename to LVGL.Simulator/lvgl_mydemo/data/gui_scr_mgr.h index da970bf..dc54730 100644 --- a/LVGL.Simulator/lvgl_mydemo/screen/gui_scr_mgr.h +++ b/LVGL.Simulator/lvgl_mydemo/data/gui_scr_mgr.h @@ -1,9 +1,13 @@ /************************************************************************ - * Date: 2022-09-10 14:17:40 - * LastEditors: ShallowGreen123 2608653986@qq.com - * LastEditTime: 2022-09-10 15:17:28 - * FilePath: \LVGL.Simulator\lvgl_mydemo\screen\gui_scr_mgr.h + * FilePath : scr_mgr.h + * Author : GX.Duan + * Date : 2022-08-18 22:59:39 + * LastEditTime : 2022-09-30 22:14:56 + * LastEditors : ShallowGreen123 2608653986@qq.com + * Copyright (c): 2022 by GX.Duan, All Rights Reserved. + * Github : https://github.com/ShallowGreen123/lvgl_mydemo ************************************************************************/ + #ifndef __SCR_MGR_H__ #define __SCR_MGR_H__ @@ -19,6 +23,7 @@ * *******************************************************************************/ #define DEF_SCR_MGR_LITTLE_MEM 0 +// ARM 结构的单片机使用 // #define SCR_MGR_REG(handle) \ // __attribute__((used, section("APP_SCREEN"))) const typeof(handle) *ScrMgrScrHandleList_##handle = &(handle) @@ -33,9 +38,9 @@ * MACROS * *******************************************************************************/ #ifdef __SCR_MGR_C__ -#define DEF_SCR_MGR_EXT +# define DEF_SCR_MGR_EXT #else -#define DEF_SCR_MGR_EXT extern +# define DEF_SCR_MGR_EXT extern #endif /********************************************************************************* @@ -74,8 +79,7 @@ extern const SCR_MGR_SCR_HANDLE_T Gui_MainScrHandle; extern const SCR_MGR_SCR_HANDLE_T Gui_Test1ScrHandle; // -DEF_SCR_MGR_EXT void -ScrMgrInit(void); +DEF_SCR_MGR_EXT void ScrMgrInit(void); /* Clear current stack and switch to new screen */ DEF_SCR_MGR_EXT bool ScrMgrSwitchScr(uint32_t scr_id, bool anim); diff --git a/LVGL.Simulator/lvgl_mydemo/data/scr_mgr.c b/LVGL.Simulator/lvgl_mydemo/data/scr_mgr.c deleted file mode 100644 index df6c9fa..0000000 --- a/LVGL.Simulator/lvgl_mydemo/data/scr_mgr.c +++ /dev/null @@ -1,35 +0,0 @@ -/************************************************************************ - * FilePath : scr_mgr.c - * Author : GX.Duan - * Date : 2022-08-18 - * LastEditTime : 2022-08-19 - * LastEditors : ShallowGreen123 2608653986@qq.com - * Copyright (c): by GX.Duan, All Rights Reserved. - * Github : https://github.com/ShallowGreen123/lvgl_mydemo - ************************************************************************/ -#define __SCR_MGR_C__ - -/********************************************************************************* - * INCLUDES - * *******************************************************************************/ -#include "scr_mgr.h" - -/********************************************************************************* - * DEFINES - * *******************************************************************************/ - -/********************************************************************************* - * MACROS - * *******************************************************************************/ - -/********************************************************************************* - * TYPEDEFS - * *******************************************************************************/ - -/********************************************************************************* - * STATIC FUNCTION - * *******************************************************************************/ - -/********************************************************************************* - * GLOBAL FUNCTION - * *******************************************************************************/ diff --git a/LVGL.Simulator/lvgl_mydemo/data/scr_mgr.h b/LVGL.Simulator/lvgl_mydemo/data/scr_mgr.h deleted file mode 100644 index f9d230b..0000000 --- a/LVGL.Simulator/lvgl_mydemo/data/scr_mgr.h +++ /dev/null @@ -1,38 +0,0 @@ -/************************************************************************ - * FilePath : scr_mgr.h - * Author : GX.Duan - * Date : 2022-08-18 - * LastEditTime : 2022-08-19 - * LastEditors : ShallowGreen123 2608653986@qq.com - * Copyright (c): by GX.Duan, All Rights Reserved. - * Github : https://github.com/ShallowGreen123/lvgl_mydemo - ************************************************************************/ -#ifndef __SCR_MGR_H__ -#define __SCR_MGR_H__ - -/********************************************************************************* - * INCLUDES - * *******************************************************************************/ - -/********************************************************************************* - * DEFINES - * *******************************************************************************/ -#ifdef __SCR_MGR_C__ -#define DEF_EXTERN -#else -#define DEF_EXTERN extern -#endif - -/********************************************************************************* - * MACROS - * *******************************************************************************/ - -/********************************************************************************* - * TYPEDEFS - * *******************************************************************************/ - -/********************************************************************************* - * GLOBAL PROTOTYPES - * *******************************************************************************/ - -#endif \ No newline at end of file diff --git a/LVGL.Simulator/lvgl_mydemo/lvgl_app.c b/LVGL.Simulator/lvgl_mydemo/lvgl_app.c index 9ef29dd..e1aa5cf 100644 --- a/LVGL.Simulator/lvgl_mydemo/lvgl_app.c +++ b/LVGL.Simulator/lvgl_mydemo/lvgl_app.c @@ -12,7 +12,7 @@ * INCLUDES * *******************************************************************************/ #include "lvgl_app.h" -#include "screen/gui_scr_mgr.h" +#include "data/gui_scr_mgr.h" /********************************************************************************* * DEFINES @@ -39,7 +39,7 @@ static void log_write_timer_cb(lv_timer_t *t) TRACE_E("Hello wrold!"); TRACE_W("Hello wrold!"); - Lib_TraceProc(); + Lib_LogProc(); } static bool log_write_to_file(LIB_TRACE_ITEM_HANDLE_T *item) @@ -53,8 +53,8 @@ static bool log_write_to_file(LIB_TRACE_ITEM_HANDLE_T *item) void lvgl_app_init(void) { - Lib_TraceInit(); - Lib_TraceRegistWriter(log_write_to_file); + Lib_LogInit(); + Lib_LogRegistWriter(log_write_to_file); DataModelInit(); diff --git a/LVGL.Simulator/lvgl_mydemo/lvgl_app.h b/LVGL.Simulator/lvgl_mydemo/lvgl_app.h index 0eb2dea..bbb9589 100644 --- a/LVGL.Simulator/lvgl_mydemo/lvgl_app.h +++ b/LVGL.Simulator/lvgl_mydemo/lvgl_app.h @@ -1,4 +1,4 @@ -/************************************************************************ +/************************************************************************ * FilePath : lvgl_app.h * Author : GX.Duan * Date : 2022-08-07 15:20:41 @@ -15,9 +15,9 @@ * *******************************************************************************/ #include "../lvgl/lvgl.h" #include -#include "log/gui_log.h" +#include "log/lib_log.h" #include "data/dataModel.h" -#include "screen/gui_scr_mgr.h" +#include "data/gui_scr_mgr.h" #ifdef __cplusplus extern "C" {