首页 > 其他分享 >HMI-Board之LVGL应用

HMI-Board之LVGL应用

时间:2024-06-04 22:14:01浏览次数:24  
标签:lvgl demo lv init music HMI ui LVGL Board

移植

使用默认模板工程新建一个RT-Thread项目,BSP版本为1.1.1

image

打开RT-Thread Settings,点击右侧箭头按钮进入详细页,在硬件栏开启以下几个配置选项(LCD、触摸屏、demo)

image

此时,打开board文件夹,发现下面会有一个lvgl的目录,package目录下会有LVGL和lv-music两个目录,如果没有请检查上一步有没有漏掉的步骤

image

编译、下载程序进行发现开发板已经运行lv-music-demo程序

image

界面定制

接下来安装SquareLine Studio,定制自己的lvgl界面,我这里下载的是SquareLine_Studio_1.3.3_Setup.exe,一路默认安装就可以了

image

安装完需要登录账号才能使用,没有账户的请注册一下

image

选择Create下的NuMaker-HMI-M467项目,然后CREATE

image

这个工程自带Sreen,先随意拖几个控件到Screen1上面

image

导出ui文件到指定文件夹lvgl-demo,生成源代码文件:Export -> Export UI Files

image

生成的源代码文件如下

image

拷贝上面的文件夹到lvgl工程的目录packages\lv_music_demo-v0.3.4下面

image

把lv_demo_music函数改一下改成下面

/**
 * @file lv_demo_music.c
 *
 */

/*********************
 *      INCLUDES
 *********************/


#include "lv_demo_rtt_music.h"
#include "lvgl-demo/ui.h"

#if LV_USE_DEMO_RTT_MUSIC
void lv_demo_music(void)
{
    ui_init();
}
#endif /*LV_USE_DEMO_RTT_MUSIC*/

先清理一下工程,然后再重新构建,没有问题的话lvgl-demo的文件夹会被加到工程目录中去

image

Ctrl + F5启动调试,编译下载程序后,自定义的界面已经可以在开发板上面显示

image

源码分析

用调试器抓一下lvgl的启动过程,基本分为以下几个步骤

INIT_ENV_EXPORT :lvgl线程接口作为初始化环境被系统调用

lvgl_thread_init:lvgl线程初始化

lvgl_thread_entry:启动GUI线程,这里会设置一些跟显示屏相关的参数(分辨率、彩色位数等)

lv_init();

lv_port_disp_init();

lv_port_indev_init();

lv_user_gui_init();

lv_user_gui_init:自定义用户代码,最终会调用到ui_init

标签:lvgl,demo,lv,init,music,HMI,ui,LVGL,Board
From: https://www.cnblogs.com/hywing/p/18231870

相关文章

  • 将来自 Telegraf 的 JSON 数据扁平化,以便在 ThingsBoard 中使用
    我连接了ThingsBoard和Telegraf以可视化CPU使用率,但收到的数据是嵌套JSON格式。我尝试了不同的方法,但无法以扁平化的JSON格式获取数据。使用Telegraf1.30.0版本,数据以以下格式返回:[{"fields":{"usage_guest":0、"usage_guest_nice":0、......
  • HMI-Board上手指南
    介绍HMI-Board为RT-Thread联合瑞萨推出的高性价比图形评估套件,取代传统的HMI+主控板硬件,一套硬件即可实现HMI+IoT+控制的全套能力。依托于瑞萨高性能芯片RA6M3及RT-Thread软件生态,HMI-Board不仅硬件性能强劲,同时软件生态丰富,助力开发者快速开发出GUI智能硬件产品,这个板......
  • 西门子HMI在线控制的问题
    最近遇到博图装好了,软件装成功后无法在线操控HMI的问题。解决如下图。1.控制面板中打开PG/PC接口,更改为电脑网口。 2.博图中打开仿真按钮,“连接已建立”则说明在线控制HMI成功。 ......
  • esp32-s3-mini-1 otg board, uvc调试记录
    网上购买了一块ESP32-S3-USB-OTG开发板(非乐鑫官方开发板)。准备实现usbuvccamera+lcd显示。使用esp-idf/example/usb/host/uvc进行测试,修改了引脚,对USB供电和数据切换的引脚重新校正,出现报错:0x40056fc9:memcpyinROM0x4200b219:_uvc_process_payloadatC:/Users/yinsu......
  • Vue3实战笔记(46)—Vue 3高效开发定制化Dashboard的权威手册
    文章目录前言Dashboard开发总结前言后台管理系统中的Dashboard是一种图形化的信息显示工具,通常用于提供一个特定领域或系统的概况。它可以帮助用户监控和分析数据,快速获取重要信息。可以帮助用户监控业务状况、分析数据、获取关键信息和管理资源。通过合理的设计和......
  • Windows系统使用Docker部署Focalboard团队协作工具详细流程
    文章目录前言1.使用Docker本地部署Focalboard1.1在Windows中安装Docker1.2使用Docker部署Focalboard2.安装Cpolar内网穿透工具3.实现公网访问Focalboard4.固定Focalboard公网地址前言本篇文章将介绍如何使用Docker本地部署Focalboard项目管理工具,并且结合cp......
  • HMI设计:再谈上位机与下位机,附海量案例图
    上期回顾:HMI界面之:上位机界面设计,一文扫盲一、上位机负责控制和决策,下位机负责采集和执行上位机和下位机是两个概念,通常用于描述计算机系统中不同层次的设备或组件。上位机(HostComputer):上位机是指在计算机系统中处于更高层次的设备或主机。它通常具有更强大的计算和处理......
  • 红队攻防渗透技术实战流程:云安全之云原生安全:K8s安全etcd Dashboard Configfile漏洞
    红队云攻防实战1.云原生安全-K8s安全-Kubelet漏洞利用1.1K8s安全-Master节点漏洞利用-2379端口etcd未授权访问1.1.1K8s安全-Master节点漏洞利用-etcd未授权的几种利用方式1.1.2K8s安全-Master节点漏洞利用-etcd未授权-V2版本利用1.1.3K8s安全-Master节点漏......
  • TensorBoard相关学习
    TensorBoard是Google为TensorFlow框架开发的一个强大的可视化工具,它可以帮助用户更直观地理解、分析和调试机器学习模型的训练过程。通过TensorBoard,你可以可视化模型的结构、监控训练过程中的指标变化(如损失函数、准确率)、查看权重直方图、嵌入向量,甚至可以展示图像数据等......
  • 通过Ubuntu虚拟机+Linux移植LVGL并通过linux Frame buffer显示
    文章参考:https://gitee.com/socbis/linux-lvgllvglonlinuxFramebuffer主机环境:Ubuntu18.04lvgl8.0.1获取源码并运行demo获取源码需要3样东西来构建demo:lvgl核心控件库:从此处获取源码lvgl,选择版本Releasev8.0.1.显示和触摸接口层:关联图形库与硬件,源......