免费推广网站注册入口,wordpress sinaapp,物业企业信息管理系统,惠州抖音推广软硬件介绍#xff1a;Ubuntu 20.04 ARM 和#xff08;Cortex-A53架构#xff09;开发板 基本原理 LVGL图形库是支持使用Linux系统的Framebuffer帧缓冲设备实现的#xff0c;如果想要实现在ARM开发板上运行LVGL图形库#xff0c;那么就需要把LVGL图形库提供的关于帧缓冲设…软硬件介绍Ubuntu 20.04 ARM 和Cortex-A53架构开发板 基本原理 LVGL图形库是支持使用Linux系统的Framebuffer帧缓冲设备实现的如果想要实现在ARM开发板上运行LVGL图形库那么就需要把LVGL图形库提供的关于帧缓冲设备的案例源码进行移植。 ARM开发板搭载的Linux系统并且开发板板载了7寸的LCD屏和电容式触摸屏如下 只想了解如何使用可以不看这里的源码可以在文章最后的百度网盘找到阅读LVGL关于Linux帧缓冲设备的技术博客下载要移植的源码和了解要修改的内容 由于git采用的分支管理所以下载的案例源码中缺少lvgl和lvgl_drivers的分支源码所以需要从GitHub中下载这两个分支源码如下图 2.把两个分支源码包下载到本地之后需要对两个源码包进行解压再把解压之后的所有内容分别拷贝到工程中lvgl文件夹和lvgl_drivers文件夹中即可这样就完成了源码的整合 1根据LVGL官方的提示把两个分支源码包中的配置文件替换到主源码包根目录下如下 注意要把lvgl文件夹中的lv_conf_template.h和lv_drivers文件夹中的lv_drv_conf_template.h这两个文件拷贝到工程根目录下并且把lv_conf_template.h改名为lv_conf.h把lv_drv_conf_template.h改名为lv_drv_conf.h。 2根据LVGL官方的提示来修改主源码包的lv_conf.h配置文件中的部分参数具体如下图 3根据LVGL官方的提示来修改主源码包的lv_drv_conf.h配置文件中的部分参数如下图 4由于开发板采用ARM平台所以需要修改案例源码中Makefile脚本文件的编译工具链 注意5把整个源码工程放入Linux系统中并切换到源码工程中对源码进行编译输入: make 可以看到对工程进行编译时会提示以下错误cc: error: unrecognized command line option ‘-Wshift-negative-value’
这个错误原因是指Linux系统中使用的arm-linux-gcc交叉编译器不支持这个选项所以解决方案是更换更高版本的arm-linux-gcc编译器或者从Makefile脚本文件中把这句话删掉。 从Makefile脚本文件中删掉 “-Wshift-negative-value”之后保存脚本后对工程再次编译即可。 如果没有任何其他错误提示则说明源码编译通过此时可以把生成的可执行文件下载到ARM开发板测试。
6切换到项目源码的 build/bin目录下可以看到一个名称叫做demo的可执行文件如下 注意7把可执行文件下载到ARM开发板中修改可执行文件的权限并运行可执行文件观察 可以看到ARM开发板确实可以显示LVGL图形库提供的例程但是此时是无法通过触摸屏切换界面的原因是在main.c的循环中没有调用一个名称叫做lv_tick_inc()的函数接口。 整个 LVGL图形库的运转都是基于 LVGL图形库中定义的 ”Timer“ 定时器系统需要给 LVGL 一个 ”心跳“LVGL图形库框架才可以正常的运转起来。而lv_tick_inc()就是用于系统告知LVGL图形库时间的函数接口该函数是以毫秒为单位的。 修改main.c之后重新对工程进行编译再把生成的可执行文件下载到开发板验证即可 源码百度网盘链接通过网盘分享的文件LVGL.rar 链接: https://pan.baidu.com/s/1yfsIgFq3C9LqzFbOUDFJTg?pwdhfym 提取码: hfym --来自百度网盘超级会员v2的分享