【现货发售】STM32MP157移植LVGL

发表时间:2021-07-19 14:09
1
   
   简介

LVGL(Light and Versatile Embedded Graphics Library)是一个免费开源的嵌入式图形库,界面美观, 内存占用低, 支持C和Python等开发方式。早在几年前它就表现得十分惊艳,现如今被越来越多的人喜爱。笔者之前是使用6版本在单片机上面运行,如今都已经更新到7版本多了,人往高处走,终究得跟上最新版本,于是便有了关于LVGL7版本在linux上移植的这件篇笔记。


本次教程使用的开发板是万象奥科近期最新发售的HD-STM32MP157-STY开发板。该开发板使用STM32MP1家族中是目前性能强劲,资源最为丰富的一款处理器STM32MP157DAA,双核ARM Cortex-A7 @800Mhz/单核 Cortex-M4@209MHz ,板载1GB内存以及8G eMMC Flash。开发板具体信息详见文末。


LVGL官网为https://lvgl.io/,进入LVGL官网即可看到Github、Release notes、Docs、Forum链接,可按需下载。



2

   运行Demo

为了开发方便,LVGL提供了很多仿真工程,可以在Eclipse、CodeBlocks、VisualStudio等各种环境上运行。


笔者这里简单介绍下VisualStudio环境下的操作。


2.1 下载代码


运行如下命令进行代码下载:


git clone https://github.com/

lvgl/lv_sim_visual_studio.git

cd lv_sim_visual_studio

git submodule update --init --recursive


下载后得到的文件如下:



双击LVGL.Simulator.sln即可使用VisualStudio打开工程。


2.2 调试


在VisualStudio中选择x64,然后点击“本地Windows调试器”。这时,会自动对代码进行编译。



编译成功后,会自动打开界面,显示LVGL Simulator for Windows Desktop,界面如下:



3
   
    移植

3.1、下载源代码

LVGL的源码存放于github,可通过git进行下载。具体操作如下:


mkdirlvgl

cd lvgl

#Git lvgl的源码

git clone --recursive

https://github.com/littlevgl/

linux_frame_buffer.git

#若是下载速度慢也可以进LVGL官网的GIT仓库下载源码

cd linux_frame_buffer

#更新一下源码

git submodule foreach 'git checkout master; git pull'


3.2 安装必要的库


LVGL在Linux下面运行是需要依赖SDL库,首先我们需要进行如下命令安装SDL库;


sudo apt update

sudo apt install -y build-essential libsdl2-dev

3.3 交叉编译需要的库

3.3.1 交叉编译SDL库

Linux版本LVGL需要依赖SDL库,所以在交叉编译LVGL之前需要先交叉编译SDL库。具体的方法比较多,如:

  1. 纯手动交叉编译。此方法操作比较复杂,不推荐使用。

  2. 主机安装qemu来搭建arm环境,进入arm环境apt得到库(推荐)。

  3. 使用buildroot(推荐)。

本次教程介绍使用buildroot进行安装,具体步骤如下:

3.3.1.1 配置、编译


首先在buildroot源代码目录运行如下命令进行配置:


sudo make menuconfig



勾选上图所示保存并编译。


3.3.1.2 查找SDL库


配置成功后,编译会得到一个可直接用于开发板的文件系统,这个文件系统中会包含SDL依赖库。可以使用find命令找到这个库:


sudo find / -name libSDL2.a


3.3.2 交叉编译tslib库


LVGL需要用到触摸功能,触摸功能需要使用到tslib库,我们同样使用buildroot编译tslib。


sudo make menuconfig



编译后,会得到tslib相关的库。

3.4 收集得到的库

将编译好的SDL库和tslib库拷贝到LVGL的工程中。

在LVGL工程中新建lib目录,将库文件放置于其中,lib中文件有:

libSDL2.a libts.la libts.so libts.so.o libts.so.0.10.3 pkgconfig ts tslib.h


3.5 修改Makefile文件


接下来需要修改Makefile,加入LDFLAGS和CFLAGS的配置,LDFLAGS一般代表链接可执行程序时的链接选项,CFLAGS指定了头文件查找路径。


LDFLAGS += -L$(LVGL_DIR)/lib

CFLAGS += -I$(LVGL_DIR)/lib

LDFLAGS += -lts -lpthread


注释掉主机环境,添加交叉编译的CFLAGS



3.6 修改显示屏分辨率


在lv_conf.h中,有显示屏分辨率的配置,LV_HOR_RES_MAX和LV_VER_RES_MAX,笔者使用的屏幕分辨率为800480,将这里修改为800480即可。



3.7 编译


make CC=arm-none-linux-gnueabihf-gcc -j8


修改好代码后,使用make进行编译,编译完成会得到一个可执行文件。执行效果如下:





STM32MP1产品靓照

STM32MP1购买方法

手机淘宝分享码:

复制本行文字打开手淘4.0 http:// $mOD8Xab1YpP₵回tb

淘宝店购买链接

https://item.taobao.com/item.htm?ft=t&id=640356150598【复制到浏览器打开】


文章列表
RK3506 AMP简介及万象奥科AMP方案介绍RK3506是瑞芯微公司推出的一款高性能处理器,该芯片采用三核Cortex-A7与单核Cortex-M0的异构设计,A7核主频可达1.5GHz,M0核可达200MHz,支持在物理隔离的核心上部署不同操作系统:A7可运行Linux系统处理复杂应用,M0核则运行RT-Thread实时系统或MCU-HAL层驱动,实现计算资源与实时性的最优配置。这种混...
样品信息产品名称:HD-RK3506G-IOT评估板(基于RK3506核心板)产品厂商:武汉万象奥科电子有限公司1. 概述1.1     试验仪器试验项目型号规格设备名称厂商校准有效期EFTEFT61004TA-2216脉冲群发生器Prima2025-10-14ESDESD61002TA静电放电发生器Prima2025-10-14EATGT-TH-S-225Z恒温恒湿试验箱高天2025-10...
RK3506,运行Linux系统,上电开机到显示界面启动完成到底有多快?基于万象奥科HD-RK3506-IoT评估板,一起看一下实测数据!测试准备:HD-RK3506-IoT评估板一套RGB接口5寸显示屏一套电源(带开关)一套上电准备,设置好录像与计时。上电开机,启动观察。启动完成!不到2秒完成界面启动!武汉万象基于瑞芯微RK3506G处理器的核心板(35mm*35mm)震撼上市,首件特价2...
工业网关(Industrial Gateway)是工业物联网(IIoT)的核心枢纽,负责连接现场设备(如PLC、传感器、仪器仪表)与云端管理系统,实现数据采集、协议转换、边缘计算等功能。瑞芯微推出的RK3506处理器,凭借多核异构架构、工业级可靠性、丰富外设接口,成为新一代工业网关的理想计算平台。本文将解析RK3506如何解决工业网关的关键需求,并探讨其典型应用场景。  一、工业网关的核心挑...
在工业自动化领域,HMI+PLC一体机正成为越来越多设备制造商的选择。这种将人机界面(HMI)和可编程逻辑控制器(PLC)集成在一起的设备,不仅节省了空间,还简化了系统架构。而要实现这样的集成设计,处理器的选择尤为关键。一、HMI+PLC一体机的核心需求现代工业设备对HMI+PLC一体机提出了更高要求:1. 实时控制能力:PLC部分需要确保控制周期在1ms以内2. 流畅的人机交互:HMI界面...
在电力自动化领域,DTU(配电终端单元)和FTU(馈线终端单元)是配电网智能化升级的核心设备。它们负责实时监测电力运行状态、快速隔离故障、优化电能分配,是保障电网稳定运行的“神经末梢”。  然而,随着智能电网的发展,传统单片机方案已难以满足多任务并行处理、高精度数据采集、低延迟通信等需求。此时,瑞芯微RK3506凭借多核异构架构、工业级可靠性、丰富外设接口,成为新一代DTU/FTU的理想计算...
这款“单片机”有些特殊!硬件资源集成了:ü   1.5GHz超高主频ü   1Gb内存、2Gb Flashü   支持2路百兆网口ü   6路串口、2路CAN FDü   MIPI与LCDü   USB、SPI、IIC、PWM、SAI、IO…软件资源支持:ü   RT-Threadü   Linuxü   RT-Thread + Linux混合部署还有一大特点:ü   支持在Windows下...
1、RK3506 CAN总线测试概述使用USBCANFD-200U测试HD-RK3506-EG1200网关的CAN接口性能与稳定性。HD-RK3506-EG1200 的CAN接口同时支持CAN2.0和CANFD模式。所以分别进行测试。2、RK3506 CAN总线测试步骤HD-RK3506-EG1200网关的CAN接口支持CAN2.0和CANFD硬件传输协议,分开测试两种硬件接口协议的收发功能...
武汉万象奥科电子有限公司
服务热线:027-59218026
销售邮箱:sales@vanxoak.com
主营产品:ARM核心板、ARM工控板
工业网关、软硬件定制设计
地址:武汉东湖新技术开发区大学园路长城园路8号海容基孵化园B5

扫描二维码
关注公众号
产品及方案咨询
专业专注   合作共赢
移动电话:181 2058 0511 (湖北)
移动电话:175 7010 9551 (华南、华中)
移动电话:133 0386 9667 (华东、华北)