LVGL模拟器使用以及安装

LVGL模拟器介绍

LVGL模拟器:使用PC端软件模拟LVGL运行,而不需要任何嵌入式硬件。

优点:便于学习、跨平台协同开发。

 我这里使用的是CodeBlocks。

环境搭建及工程获取

环境搭建

安装包获取:https://www.codeblocks.org/downloads/

软件版本:codeblocks-20.03mingw-setup

我们这里就正常安装就行,没什么好讲的。

工程获取

LVGL官网-github仓库,https://lvgl.io

进入“Simulator on PC”页面后,即可看到不同平台的 LVGL 模拟器工程,如下图所示:

接下来点击上图中的“CodeBlocks”选项,进入 CodeBlocks模拟器工程的下载页面,如下图所示: 

在这个页面中,我们可以选择压缩包或者 git 的方式下载模拟器工程。值得注意的是,该仓库中存在子仓库,如果采用压缩包的方式下载工程,还需要将子仓库的文件分别下载,并复制到主工程相应的文件夹当中,子仓库的界面如下图所示:

 

模拟运行 LVGL 例程 

在上一小节中,我们已经获取到 CodeBlocks 模拟器工程,接下来为大家介绍 LVGL 模拟器工程的使用。
打开模拟器工程

打开后工程界面如下:

  

我们编译运行一下看看:

 工程文件解析  

①屏幕分辨率设置;②示例函数的调用。
首先来看屏幕分辨率的设置,其在 main 函数中,如下图所示:
        用户可以根据实际项目中的屏幕分辨率来进行设置,这样模拟出来的效果就更加的贴合实际。 注意: LVGL 官方的例程,默认仅支持 800*480 的分辨率。

        接下来,我们看示例函数的调用,其同样在 main 函数中,如下图所示:

由上图可知,示例函数的调用非常简单,如果用户使用的是 LVGL 官方的例程,只需要将相应的示例函数取消注释即可;如果需要自行编写测试代码,可直接在此处编写(不推荐),或者另外封装函数,然后在此处调用(推荐)。

我们自己编写一个简单的例程,封装到my_gui.c里面,至于如何把c文件放进去工程下面,也是比较简单,和keil类似,读者可以自行写自己的例程试一下。我这里写了一个简单的按钮:

编译运行看一下:

 总结

我们就完成了LVGL模拟器使用以及安装,这样我们就可以现在PC上模拟LVGL的运行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/451036.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue后台管理系统从0到1搭建(4)各组件的搭建

文章目录 vue后台管理系统从0到1搭建(4)各组件的搭建Main.vue 组件的初构 vue后台管理系统从0到1搭建(4)各组件的搭建 Main.vue 组件的初构 根据我们的效果来看,分析一下,我们把左边的区域分为一个组件&am…

云计算作业一:问题解决备忘

教程地址:https://blog.csdn.net/qq_53877854/article/details/142412784 修改网络配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33在root用户下编辑 静态ip地址配置后查看ip与配置不符 注意:确保在这之前已经在VMware的编辑>虚拟网络编…

2024年9月中国电子学会青少年软件编程(Python)等级考试试卷(一级)答案 + 解析

一、单选题 1、下列选项中关于 turtle.color(red) 语句的作用描述正确的是?( ) A. 只设置画笔的颜色为红色 B. 只设置填充的颜色为红色 C. 设置画笔和填充的颜色为红色 D. 设置画笔的颜色为红色,设置画布背景的颜色为红色 正…

Java @RequestPart注解:同时实现文件上传与JSON对象传参

RequestPart注解:用于处理multipart/form-data请求的一部分,通常用于文件上传或者处理表单中的字段。 java后端举例: PostMapping("/fileTest")public AjaxResult fileTest(RequestPart("file") MultipartFile file,Req…

【从零开始的LeetCode-算法】3099. 哈沙德数

如果一个整数能够被其各个数位上的数字之和整除,则称之为 哈沙德数(Harshad number)。给你一个整数 x 。如果 x 是 哈沙德数 ,则返回 x 各个数位上的数字之和,否则,返回 -1 。 示例 1: 输入&am…

你真的了解appium吗?

背景:对于QA同学来说,appium应该都不陌生,作为市面上最流行的app自动化测试框架之一,凭借强大的扩展性、跨平台能力和活跃的社区,使得它成为了移动端自动化测试的首选。今天让我们一起重新了解下这个工具! …

关于jmeter设置为中文问题之后无法保存设置的若干问题

1、jemeter如何设置中文模式 Options--->Choose Language--->Chinese(Simplifies), 如此设置后就可显示中文模式(缺点:下次打开还是英文);如下图所示: 操作完成之后: 但是下次重启之后依旧是英文; 2、在jmeter.…

k8s jenkins 2.421动态创建slave

k8s jenkins 动态创建slave 简述使用jenkins动态slave的优势:制作jenkins-slave从节点jenkins-slave-latest:v1配置jenkins动态slave配置 Pod Template配置容器模板挂载卷 测试 简述 持续构建与发布是我们日常工作中必不可少的一个步骤,目前大多公司都采…

机器视觉基础系列四—简单了解背景建模算法

机器视觉基础系列四—简单了解背景建模算法 首先我们应该了解的是背景建模的定义是什么?又有哪些应用场景呢? 背景建模是指通过分析视频序列中的像素值变化情况,从中提取出静态背景部分,并将其用于目标检测、运动跟踪等计算机视觉…

从0开始部署优化虚拟机

一,vm workstation 安装 CentOS-7 忽略 二、查看虚拟机IP ip address 得到 192.168.196.128/24 宿主机进行Ping测试 C:\Users\Administrator>ping 192.168.196.128正在 Ping 192.168.196.128 具有 32 字节的数据: 来自 192.168.196.128 的回复: 字节32 时间…

怎么向新闻媒体发稿?携手谛道文化,轻松实现新闻媒体发稿

在纷繁复杂的信息时代,企业与个人若欲崭露头角,一套行之有效的发稿策略无疑是突破重围的利剑。企业或个人该怎么向新闻媒体发稿呢?谛道文化新闻媒体发稿机构,在软文发布、新闻发布及媒体投放等方面具有卓越策略,无疑为…

I\O进程线程(Day30)

一、学习内容 多线程基础 1> 线程是任务器调度的基本单位,是进程的一个执行单元 2> 一个进程中可以包含多个线程,但是至少要包含一个线程称为主线程 3> 一个进程中的多个线程共享进程的资源,不会为线程再 单独分配内存空间 4> 线…

如何启动hive

检查mysql是否启动 通过Navicat测试mysql是否可以连接 找打hive配置文件所在目录 检查连接mysql的账号密码是否正确,如果不正确就要修改为正确的 初始化hive元数据存储的库:schematool -dbType <database_type> -initSchema 检查mysql中是否创建hive数据库,这里看到hive数…

WebGl 使用缓冲区对象绘制多个点

缓冲区对象是WebGL系统中为一块内存区域&#xff0c;可以一次性地向缓冲区对象中填充大量的顶点数据&#xff0c;然后将这些数据保存在其中&#xff0c;供顶点着色器使用。 1.类型化数组类型 在 webgl 中&#xff0c;需要处理大量的相同类型数据&#xff0c;所以引入类型化数组…

机器学习学习笔记-20241018

继续跟着小土堆去学习机器学习 文章目录 Flatten1. Flatten 的作用2. 何时使用 Flatten3. PyTorch 中的 Flatten Sequentia优化器模型的保存与加载模型的完整训练 Flatten 在神经网络中&#xff0c;Flatten 操作是将高维的输入&#xff08;如二维图像或三维特征图&#xff09…

LabVIEW提高开发效率技巧----减少UI更新频率

在LabVIEW开发中&#xff0c;图形化用户界面&#xff08;UI&#xff09;的更新频率对程序的响应速度有着显著影响。频繁的UI更新会占用大量资源&#xff0c;导致系统性能下降。本文将详细介绍如何通过减少UI更新频率来提升LabVIEW程序的运行效率&#xff0c;从多个角度进行分析…

Jenkins入门(二):流水线方式部署多模块Springboot项目

目录 一、环境准备 1. 搭建配置Jenkins (在上一篇基础上进行) 2. 安装mysql 3. 安装redis 4. 配置docker-componse 5. 启动docker-componse 二、脚本准备 1. Jenkinsfile 2. deploy.sh 3. Dockerfile 三、Jenkins流水线配置 新增版本号参数 流水线选择代码里面的Je…

游戏逆向基础-找释放技能CALL

思路&#xff1a;通过send断点然后对send的data参数下写入断点找到游戏里面的技能或者攻击call 进入游戏先选好一个怪物&#xff08;之所以要先选好是因为选怪也会断&#xff0c;如果直接左键打怪的话就会断几次&#xff09; 断下来后对参数下硬件写入断点 硬件断点断下来后先…

Java | Leetcode Java题解之第475题供暖器

题目&#xff1a; 题解&#xff1a; class Solution {public int findRadius(int[] houses, int[] heaters) {Arrays.sort(houses);Arrays.sort(heaters);int ans 0;for (int i 0, j 0; i < houses.length; i) {int curDistance Math.abs(houses[i] - heaters[j]);whil…

【工具篇】MLU运行XInference部署手册

文章目录 前言一、平台环境准备二、代码下载三、安装部署1.正常pip 安装 四、运行结果展示1.如果界面404或没有东西请这样做2.运行效果 前言 Xorbits Inference&#xff08;Xinference&#xff09;是一个功能强大、用途广泛的库&#xff0c;旨在为语言、语音识别和多模态模型提…