前言
有读者在后台回复了LVGL,应该是想获取本公众号关于LVGL的内容。之前推送关于LVGL的内容较少,现在补上一篇。
另:本公众号由于开通得比较晚,所以不具备留言功能。所以大家想看哪些内容,可以在公众号聊天界面留言,小编会参考大家的意见输出、整理一些相关的内容。一起成长、一起进步。期待留言~
下面我们一起来看一看LVGL在STM32上的移植使用。
lvgl简介
LittlevGL是一个免费的开源图形库,提供了创建嵌入式GUI所需的一切,具有易于使用的图形元素、漂亮的视觉效果和低内存占用。
特点:
强大的构建模组 按钮、图表、列表、滑块、图像等先进的图形 动画、反锯齿、半透明、平滑滚动多样的输入设备 触摸板、鼠标、键盘、编码器等多显示器支持 支持同时使用多个TFT或单色显示器多语言支持 UTF-8格式文字编码完全自定义 图形元素硬件无关 可用于任意微控制器或显示器可裁剪 用于小内存(80 KB FLASH,12 KB RAM)操作操作系统、外部存储以及GPU 支持但非必须单帧缓存 即可实现先进的图形效果C语言编写 以最大化兼容(C++ 兼容)模拟器 无需嵌入式硬件就可以在电脑上开始GUI设计教程、示例、主题 从而快速GUI设计文档 在线及离线免费开源 基于MIT协议
运行的硬件要求:
lvgl资料
LVGL的资料很丰富,下面列出一些常用的资料链接:
1、lvgl英文官网:
https://lvgl.io/
2、lvgl中文网:
https://littlevgl.cn/ (还在建设中)
3、lvgl源码:
https://github.com/lvgl/lvgl
4、lvgl基于Visual sudio 的PC模拟器:
https://github.com/lvgl/lv_sim_visual_studio
5、正点原子lvgl教程资料:
http://www.openedv.com/docs/book-videos/zdyzshipin/4free/littleVGL.html
6、基于荔枝派Nano开发板的lvgl教程:
http://nano.lichee.pro/application/littlevgl.html
7、基于野牛开发板的 lvgl 6.0 例程:
https://gitee.com/mzy2364/LittlevGL_Demo
8、lvgl在线体验例程(可在浏览器体验):
https://lvgl.io/demos
9、lvgl官网教程:
https://docs.lvgl.io/latest/en/html/index.html
10、lvgl官方DEMO:
https://github.com/lvgl/lv_examples
lvgl移植到STM32
1、下载源码
源码链接中下载一份源码,lvgl已经更新迭代了很多个版本,这里我们选择目前最新的7.10.1版本来移植:
注意:不同版本之间可能有很大的不同,所以看本篇教程移植的的小伙伴尽量使用与本文相同的版本。
下载得到:
2、准备stm32工程
下面我基于普中的stm32f103开发板来移植,首先准备一个lcd显示的例程,并更名为lvgl_test:
3、新建GUI文件夹
在工程目录下新建一个GUI文件夹,GUI文件夹下新建两个子文件夹:<