Title here
Summary here
点击软件左上角工具栏中的扳手按钮,所需的ui源文件将导出到${工程根目录}/ui/src/ui
下
打开任一工程,以 pico_dm_qd3503728_noos
为例
# 假设位于pico_dm_qd3503728_noos工程根目录, ui_project是你保存eez-studio工程所在文件夹
ln -sf ../ui_project/src/ui ./ui
CMakeLists.txt
,引入UI相关文件file(GLOB_RECURSE COMMON_SOURCES
main.c
ili9488.c
ft6236.c
porting/lv_port_disp_template.c
porting/lv_port_indev_template.c
i2c_tools.c
backlight.c
)
# 在此处定义UI相关文件
file(GLOB_RECURSE UI_SOURCES
ui/*.c
ui/*.cpp
)
# rest of your project
add_executable(${PROJECT_NAME} ${COMMON_SOURCES} ${UI_SOURCES}) # 在此处引入UI相关文件
target_link_libraries(${PROJECT_NAME}
pico_bootsel_via_double_reset
pico_stdlib hardware_pwm
hardware_i2c pio_i80
# factory_test
lvgl lvgl::demos lvgl::examples
)
target_include_directories(${PROJECT_NAME} PUBLIC .)
cmake .. -G Ninja
main.c
,修改替换 eez-studio 所需要的初始化操作4.1 文件顶部添加所需头文件
#include "ui/ui.h"
4.2 注释所有的 lv_demo,并在此处调用ui_init
// lv_demo_widgets();
// lv_demo_stress();
// lv_demo_music();
/* measure weighted fps and opa speed */
// Before : Avg.146 256 114 186
// After : Avg.177 311 125 216
// lv_demo_benchmark();
4.3 在loop中调用ui_tick
for (;;) {
// tight_loop_contents();
// sleep_ms(200);
lv_timer_handler_run_in_period(1);
ui_tick();
}
ninja && cp Pico_DM_GTM0375HI1T02.uf2 /media/${USER}/RPI-RP2
eez-studio 设计的UI已成功运行在设备上
https://github.com/embeddedboys/pico_dm_qd3503728_noos_eez_studio_demo
开发中。。。