LVGL Linux 部署开发手记
前言 最近一直在折腾 LICO 的硬件前端. 经历了很久的痛定思痛, 还是决定设计自己的纯硬件前端. 相对于手机 APP, 纯硬件前端可以不受 Android 系统严格的后台调度策略影响, 并且可以直接控制各种硬件, 简化控制流程. 独立的硬件并非没有缺点, 其电源管理完全比不上现代智能手机, 但我的需求是随时在线, 这种场景下使用更多的能源换来的服务是利大于弊的. 移动便携设备性能往往有限, 无法做到手机的性能, 具体地说是性能、功耗、功能不可能三角. 充分考虑了以上因素, 我决定使用 LVGL 显示 / 触摸方案. LVGL 是基于 C 的, 性能开销非常低, UI 美观丝滑, 体验非常好, 搭配树莓派 Zero 2W 这种小板非常适合便携设备. LVGL 官方也维护了一个 Linux 库, 可以很方便地在各种 Linux 设备上使用. 请参考此链接: lv_port_linux. 本文就是在这个项目的基础上, 记录在树莓派 Zero 2W 上安装编译 LVGL 的笔记, 顺便做一些针对性优化. (主要还是方便我回来查看, 这么多坑真的记不住) 我自己总结出来的流程, 大概是这样: 首先克隆仓库并安装相关依赖, 检查无误后, 修改基础设置以匹配你的显示屏. 然后使用默认配置文件编译 demo 示例, 确定基础运行条件. 验证可行性后, 可以修改默认的配置文件, 设计并编写你自己的 LVGL UI, 引入相关依赖, 使用默认字库和图标等, 取消编译默认 demo, 检测你自己的程序是否可用....