V
主页
京东 11.11 红包
用面向对象的思维来理解代码ESP32 LVGL UI界面 ESP32-BOX组件的代码分析
发布人
用面向对象的思维来理解代码 ui 界面 lvgl接口组件 BSP组件的关系 理解 1 bsp_i2c_init(); 初始化I2C 硬件 2 /* Initialize display and LVGL */ bsp_display_start(); 2.1 const lvgl_port_cfg_t lvgl_cfg = ESP_LVGL_PORT_INIT_CONFIG(); BSP_ERROR_CHECK_RETURN_NULL(lvgl_port_init(&lvgl_cfg)); //调用下边组件的函数 LVGL_PORT组件 esp_lvgl_port.h /* LVGL init */ lv_init(); /* Tick init */ lvgl_port_timer_period_ms = cfg->timer_period_ms; ESP_RETURN_ON_ERROR(lvgl_port_tick_init(), TAG, ""); /* Create task */ 2.2 BSP_NULL_CHECK(disp = bsp_display_lcd_init(), NULL); ESP-BOX组件的函数调用 通过这个函数把底层硬件和LVGL逻辑层联系起来了。 static lv_disp_t *bsp_display_lcd_init(void) 2.2.1 硬件初始化接口函数 BSP_ERROR_CHECK_RETURN_NULL(bsp_display_new(&bsp_disp_cfg, &panel_handle, &io_handle)); 调用ESP IDF 硬件初始化函数 spi_bus_initialize esp_lcd_new_panel_io_spi esp_lcd_new_panel_st7789 2.2.2 LVGL接口函数 lvgl_port_add_disp(&disp_cfg); 调用LVGL接口组件 LVGL_PORT组件 LVGL_PORT组件 esp_lvgl_port.h disp = lv_disp_drv_register(&disp_ctx->disp_drv); LVGL组件 中的 hal lv_hal_disp.c lv_hal_indev.c lv_hal_tick.c lv_hal.h lv_disp_t * lv_disp_drv_register(lv_disp_drv_t * driver) 2.3 BSP_NULL_CHECK(disp_indev = bsp_display_indev_init(disp), NULL); ESP-BOX组件的函数调用 通过这个函数把底层硬件和LVGL逻辑层联系起来了。 BSP_ERROR_CHECK_RETURN_NULL(bsp_touch_new(NULL, &tp)); 2.3.1 硬件初始化接口函数 BSP_ERROR_CHECK_RETURN_NULL(bsp_touch_new(NULL, &tp)); 2.3.2 LVGL接口函数 LVGL_PORT组件 lvgl_port_add_touch(&touch_cfg); LVGL组件 中的 hal lv_hal_disp.c lv_hal_indev.c lv_hal_tick.c lv_hal.h lv_indev_drv_register(&touch_ctx->indev_drv); 3 ui_init(); 3.1 LVGL组件 中的 hal lv_hal_disp.c lv_hal_indev.c lv_hal_tick.c lv_hal.h lv_disp_t * dispp = lv_disp_get_default(); lv_disp_set_theme(dispp, theme); 3.2 LVGL组件 src core lv_disp.c lv_indev.c ui_Screen1_screen_init(); ui____initial_actions0 = lv_obj_create(NULL); lv_disp_load_scr(ui_Screen1);
打开封面
下载高清视频
观看高清视频
视频下载器
ESP32 最新手机UI界面设计 (esp-ui 是一个基于 LVGL 的 UI 运行框架)
esp32 代码的移植。用官网的例子移植成一个组件。
esp32s3单片机视频音频通话 低延迟 开发板2.0版本已经发布
ESP32-S3 ESP-RTC 实时音视频通信方案(修改服务器为UDP或者TCP)
ESP32 IDF项目的构建系统:编译链接解析 从简单的hello world角度看整个项目的结构(cmake cmakelist.txt)
ESP32 对话机器人。对讲机等功能(连接星火大模型对话机器人。或者对讲机功能)
ESP32 可视门铃 硬件设计 界面设计 代码设计演示
ADF从入门到精通(ESP32 远程视频通话代码分析和演示)
ESP32-S3-BOX-3功能演示01(复刻修改版已经开源)
ESP32 万能遥控器 遥控机器人 UI界面
ESP32 LVGL9.0 库的完整移植和简单使用过程介绍。
ESP32-BOX-3出厂代码factory_demo解析(2 cmakelist.txt文件)
ESP32 WHO ESP-EYE 开发板硬件开源和代码解析(按键对象)电路板已经开源验证
ESP32 RTC 3.0 万能开发板 如果用官网的例子 需要修改的地方
ADF从入门到精通(ESP32 远程网络对讲机代码分析和演示)
ESP32 芯片连接各种语言大模型。对话机器人演示
ESP32 官网chatgpt代码解析和修改(三种方式) 引申出ESP32分区表和https客户端的分析
ESP32 chatgpt机器人代码讲解 可以写方案和文章
ESP32可视化中文开发
lvgl9.0+RGB屏+UI界面软件 SquarelinePoject 的移植过程(整体结构讲解)
ESP32-BOX-3出厂代码factory_demo解析 屏幕触摸LVGL(4)
ESP32 adf 库的安装过程
ESP32 freeRTOS代码的宏观解析。(时间和空间的角度看代码。也就是四维空间)
ESP32S3 USB 摄像头 麦克风 喇叭三合一设备测试(远程视频通话的优化方案)
远程控制完整视频 ESP32不同平台的远程视频演示和代码介绍
ESP32-S3-BOX-3 ESP32 开发板修改版(已经测试通过,已经开源可以复刻)
ESP32 远程视频通话代码修改(UDP协议)对讲机代码
ESP32 USB 摄像头三合一使用和介绍
ESP32-BOX-3出厂代码factory_demo解析 储存API NVS SPIFFS(3)
ESP32-BOX-3出厂代码factory_demo解析(1)
ESP32S3 智慧猫眼完整版(门铃功能)演示和代码解析 包括人脸识别 语音识别 自动录像 远程查看功能
ESP32S3 远程视频控制代码 测试通过 即将开源 欢迎留言
ESP32 万能开发板 制作过程(植锡膏 贴片 加热过程分享)硬件软件都开源
ESP32-S3-Korvo-2开发板 ESP32-S3-EYE_V2.2开发板 ESP32-S3-BOX-3复刻成功(免费开源)
8 个出色的 ESP32 项目!2024 年版
ADF从入门到精通(ESP32 RTMP服务器推流 拉流代码分析和演示)
ADF从入门到精通(ESP32 VAD声音检测代码)
代码开源 esp32播放sd卡中的mp3
肝了两年的ESP32码表,定名《追风R300》, 3.0寸半反射屏 FIT格式轨迹记录 路书导航 多地图切换系统 可连心率踏频传感器 最高45小时续航
【优秀毕设】毫米波雷达的生命体征检测 ESP32控制系统 实现呼吸、心率检测 IWR6843AOP