前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—LVGL应用开发案例

全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—LVGL应用开发案例

原创
作者头像
创龙科技Tronlong
发布2025-06-23 15:14:10
发布2025-06-23 15:14:10
520
举报

​开发板简介

创龙科技 TL3576-EVM 是一款基于瑞芯微 RK3576J/RK3576高性能处理器设计的4核ARM Cortex-A72 +4核 ARM Cortex-A53 + ARM Cortex-M0 国产工业评估板,Cortex-A72 核心主频高达 2.2GHz,Cortex-A53 核心主频高达 2.0GHz。评估板由核心板和评估底板组成,核心板 CPU、ROM、RAM、电源、晶振、连接器等所有元器件均采用国产工业级方案,国产化率100%。同时,评估底板大部分元器件亦采用国产工业级方案,国产化率约为 99%(按元器件数量占比,数据仅供参考)。核心板经过专业的PCBLayout 和高低温测试验证,质量稳定可靠,可满足各种工业应用环境要求。

评估板硬件资源图解1
评估板硬件资源图解1
评估板硬件资源图解2
评估板硬件资源图解2

前 言

本文主要基于评估板演示LVGL应用开发案例,适用开发环境如下。

Windows开发环境:Windows 7 64bit、Windows 10 64bit

Linux开发环境:VMware16.2.5、Ubuntu22.04.5 64bit

U-Boot:U-Boot-2017.09

Kernel:Linux-6.1.115

LinuxSDK:LinuxSDK-[版本号](基于rk3576_linux6.1_release_v1.1.0)

LVGL的版本:9.1

本文默认使用USB TO UART0作为调试串口,使用Linux系统启动卡(即SD启动卡,Micro SD方式)启动系统。

我司提供的文件系统默认已支持LVGL官方案例,案例源码介绍如下。

图 1
图 1
图 2
图 2

LVGL简介

概述

LVGL(Light and Versatile Graphics Library,轻巧而多功能的图形库),是一个免费开源嵌入式图形库,主要用于在嵌入式系统上创建图形用户界面(GUI)。它是用C语言编写的,旨在高效和可定制,因此在各种微控制器平台和显示硬件上开发用户界面时备受欢迎。

特性

轻量级:LVGL旨在轻量且高效,适用于资源受限的嵌入式系统,这些系统具有有限的内存和处理能力。

高度可定制:LVGL允许开发人员根据项目要求定制GUI元素的外观和行为。

小部件库:它提供了各种预设计的图形小部件,如按钮、标签、滑块、列表等,以简化交互式用户界面的创建。

事件驱动:LVGL是事件驱动的,这意味着它会响应用户输入和其他事件以触发操作或状态更改。

硬件支持:LVGL支持各种显示和输入硬件,包括不同类型的显示器(TFT、OLED等)和输入设备(触摸屏、按钮等)。

积极的社区:LVGL有一个积极而支持性的社区,为其开发提供了资源并提供开发人员帮助。

跨平台:LVGL可以在各种微控制器平台上使用,适用于各种嵌入式系统。

更多详情请查看:LVGL — Light and Versatile Embedded Graphics Library、LVGL Forum - Q&A about LVGL。

LVGL案例演示

案例说明

案例功能:程序基于LVGL实现通过button控件控制LED灯亮灭以及label控件显示LED灯的亮灭状态。

程序原理:

基于LVGL框架。

通过创建按钮,设置点击事件,调用回调函数,控制LED1、LED2的亮灭。

使用label来显示颜色及文本表示LED1、LED2的亮灭状态。

程序流程如下图所示。

图 3
图 3

案例相关资料位于产品资料“4-软件资料\Demo\platform-demos\lvgl-demos\”目录下,具体说明如下:

案例测试

本案例使用HDMI显示屏进行演示,请使用HDMI线将HDMI显示屏与评估板HDMI OUT接口连接,同时将鼠标与评估板USB2.0 HOST(USB2)双层任一接口连接。

输入设备配置

通过设置LV_INPUT_EVENT_ID环境变量可以指定程序使用哪种输入设备,输入设备可为鼠标或触摸屏。

评估板上电启动后,请执行如下命令查看输入事件。

Target# evtest

图 4
图 4

根据打印信息可知,"/dev/input/event11"为鼠标事件。

请执行如下命令,设置LV_INPUT_EVENT环境变量,指定程序的输入设备,本次命令以指定触摸事件为例。

Target# export LV_INPUT_EVENT_ID=11

备注:LV_INPUT_EVENT_ID=11表示设置输入事件路径为"/dev/input/event11"。

图 5
图 5

显示设备配置

通过设置LV_INPUT_EVENT_ID环境变量可以指定程序使用何种显示设备。

评估板上电启动后,请执行如下命令查看显示设备的CONNECTOR_ID。

Target# modetest

图 6
图 6

根据打印信息可知,HDMI对应的CONNECTOR_ID为180。执行如下命令,设置LV_INPUT_EVENT环境变量指定程序的显示设备,本次命令以指定HDMI显示为例。

Target# export LV_DRM_CONNECTOR_ID=180

备注:LV_DRM_CONNECTOR_ID=180:表示设置CONNECTOR_ID为180。

图 7
图 7

完成输入设备、显示设备的配置后,请将案例bin目录下的可执行程序拷贝至评估板文件系统任意目录下,在可执行程序所在路径下,执行如下命令,运行程序。可观察到HDMI显示屏显示LED控制界面,可通过鼠标点击界面控制LED亮灭。

Target# LV_DRM_CONNECTOR_ID=180 LV_INPUT_EVENT_ID=11 ./lvgl_led_control

图 8
图 8
图 9
图 9
图 10
图 10

案例编译

将案例src源码目录拷贝至Ubuntu工作目录下,进入源码目录,执行如下命令,修改CMakeLists.txt文件,确保"SDK_PATH"为LinuxSDK安装路径,用户请根据实际情况修改。如下图所示。

Host# vim CMakeLists.txt

图 11
图 11

修改内容如下:

set(SDK_PATH /home/tronlong/RK3576/rk3576_linux6.1_release)

图 12
图 12

执行如下命令,加载编译环境。

Host# source /home/tronlong/RK3576/rk3576_linux6.1_release/buildroot/output/rockchip_rk3576/host/environment-setup

图 13
图 13

执行如下命令,创建编译目录并编译,编译完成将会在同一个目录下生成可执行程序。

Host# mkdir build

Host# cd build

Host# cmake ..

Host# make

图 14
图 14

由于篇幅过长等原因,部分内容均不逐一展示,如需获取完整版详细资料,请关注创龙科技微信公众号或官网,或者评论区留言,感谢您的支持!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ​开发板简介
  • 前 言
  • LVGL简介
    • 概述
    • 特性
  • LVGL案例演示
    • 案例说明
    • 案例测试
    • 案例编译
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档