LVGL 实战架构 · 30章
🧩 嵌入式项目
30节
01
LVGL概述与环境搭建
LVGL是什么
为什么选择LVGL
嵌入式地位
环境搭建
第一个程序
02
基础架构与对象模型
软件架构
lv_obj_t
创建/删除
父子层级
屏幕
03
坐标系统与对齐
坐标基础
绝对/相对定位
lv_align_t
Flex布局
Margin/Padding
04
样式系统 (Style)
样式概念
属性详解
状态
继承与层叠
本地/全局
样式动画
05
事件系统 (Event)
事件驱动
lv_event_t
监听/回调
冒泡与捕获
自定义事件
用户数据
06
基础控件 (上)
标签
按钮
开关
复选框
进度条
07
基础控件 (下)
滑块
文本输入框
下拉列表
列表
消息框
08
容器与布局控件
容器
面板
Flex/Grid
Tab视图
窗口
09
图像与画布控件
lv_img
缓存与解码
lv_canvas
绘制图形
自定义字体/图标
10
图表与绘图控件
lv_chart
折线/柱状/散点
仪表盘
弧形
11
动画系统
lv_anim_t
参数配置
缓动函数
动画路径
回调
序列/并行
12
定时器与任务管理
Tick系统
lv_timer_t
周期性任务
后台/空闲
优先级
13
输入设备管理
lv_indev_t
触摸屏
物理按键
编码器
鼠标/触摸板
14
存储与资源管理
内存管理
动态/静态内存
图像/字体资源
文件系统
缓存策略
15
多语言与国际化
UTF-8
多语言字体
动态翻译
lv_i18n
最佳实践
16
主题系统
主题概念
内置主题
自定义主题
主题切换
样式协同
17
文件系统集成
FS抽象层
FatFS
LittleFS
SPIFFS
文件浏览器
18
LVGL与RTOS集成
FreeRTOS配置
互斥锁
多任务调用
消息队列
中断安全
19
性能优化
渲染分析
脏矩形
帧率优化
内存优化
减少重绘
硬件加速
20
项目架构设计 (上)
单页面
多页面
页面管理器
导航栈
21
项目架构设计 (下)
MVC
MVP
MVVM
状态管理
数据绑定
22
代码组织与模块化
模块化原则
头文件/源文件
接口分离
依赖注入
插件架构
23
自定义控件开发
基本流程
继承lv_obj_t
自定义属性
绘制回调
封装发布
24
传感器数据可视化
数据采集
实时更新
动态图表
仪表盘
记录回放
25
网络通信界面
WiFi配置
HTTP请求
MQTT
JSON解析
网络监控
26
音频与多媒体界面
音频播放器
音量控制
进度条同步
频谱可视化
视频控制
27
调试与日志系统
内置调试
日志输出
内存监控
帧率监控
断言/错误
28
单元测试与模拟测试
PC模拟器
Unity/Ceedling
UI自动化
回归测试
29
项目实战 (一) 智能家居面板
需求分析
UI原型
页面结构
设备控制
数据联调
30
项目实战 (二) 智能手表表盘
表盘UI
指针动画
心率/步数
低功耗
OTA升级