LVGL移植win端模拟显示流畅解决方案-使用 SquareLine 生成前端 UI 文件

2023-09-18 20:59:08

lvgl_port_win_vscode

在 win 平台对 lvgl 方便的进行模拟显示,程序文件结构清晰,lvgl with SDL2,cmake 构建,VsCode 一键运行,使用 SquareLine 生成前端 UI 文件,win 上直接跑。

相比官方的 lvgl 移植到 win 端的几种方法 Simulator on PC — LVGL documentation,本仓库带来更好的 lvgl 在 win 端的模拟显示 体验!

使用 SquareLine 生成前端 UI 文件,win 上直接跑。

仓库约 260MB 大小。

全部使用 手写的 cmake 构建,具有 学习 和 实践使用 意义。

使用说明

环境

首先,需要 pc 安装有 mingw-w64 和 cmake,以及 VsCode(带 C/C++C/C++ Extension PackCMake 等相关常用插件)。

我的一个 VsCode 跑一跑 C/C++ 程序的工程模板:见 VsCode temp Proj(github.com)VsCode temp Proj(gitee.com

使用

github 仓库 https://github.com/Staok/lvgl_port_win_vscode

gitee 仓库 https://gitee.com/staok/lvgl_port_win_vscode

三个文件夹,为三个独立工程,分别可独立 编译 & 运行;每个文件夹里面都有说明,要看。

  • 1-SDL2_lib_test_show,这是 测试运行 SDL2 库(win 端的创建窗口应用的库)的,装 SDL2 库、编译 和 运行 看 CMakeList 文件里面。

  • 2-lvgl_sim_vscode_sdl_win_show,这是在官方 VSCode with SDL driver 上的魔改,借鉴了一些网友的构建和例子,程序里均给出了参考链接。

  • lvgl_squareLine_proj_temp,作为通用的 lvgl 工程模板。这是 集合官方最新 lvgl 库、lv_drivers 库、SDL2、SquareLine 生成的前端 UI 文件 的工程,以及添加了一些功能,cmake 构建,添加了 VsCode 的 task,一键 F5 运行。SquareLine 是 可视化的 lvgl 界面设置 软件,其直接生成 lvgl 可以运行的 界面代码。

lvgl_squareLine_proj_temp 目前还只支持在 win 端运行。

lvgl_squareLine_proj_temp 作为通用的 lvgl 工程模板,目标是 一个文件夹, win 端 和 嵌入式linux 端 或 mcu 端(经过交叉编译)均可以跑,即 pc 上 模拟显示 & 反复调整,下载到 嵌入式 linux 板子 或 mcu 板子 就跑。并且 UI 的前后端分离。做到通用化的一个 lvgl 小模板、小框架。

效果

一键 F5 —— 启动!

更多推荐

lock和synchronized的区别

lock和synchronized都是在多线程环境下用于保护共享资源的机制,但它们有一些重要的区别:实现方式:synchronized是Java语言内置的关键字,可以用于方法或代码块级别的同步。Lock是一个接口,位于java.util.concurrent.locks包下,提供了更灵活的锁定机制。灵活性:Lock提供

SQL-4大板块(存储过程、函数、视图、触发器)

一、存储过程(做复杂运算)1.做复杂运算,是对变量做运算;2.可以对多个表进行update、insert、delete、select、query;3.可以在最终结果返回多个表,但是对对接环境有苛刻要求,比如:VB不支持接收返回多个表4.当一个查询语句无法实现,或者语句查询速度很慢时,想提高效率就会用到存储过程。先把需要

MongoDB——将时间戳转换为日期

在MongoDB中将时间戳转换为日期从timestamp转换为日期取决于我们保存时间戳的类型。它是对象、数字还是字符串类型?我们可以在mongoshell上使用以下命令检查字段的类型。在本教程中,我们将学习如何将时间戳转换为数字、字符串或对象类型的日期。检查字段类型://MongoDB5.0.8>typeofdb.co

滑动时间窗口的思想和实现,环形数组,golang

固定时间窗口在开发限流组件的时候,我们需要统计一个时间区间内的请求数,比如以分钟为单位。所谓固定时间窗口,就是根据时间函数得到当前请求落在哪个分钟之内,我们在统计的时候只关注当前分钟之内的数量,即[0s,60s],因为流量并不是均匀的,所以就会出现,在两个分钟之间超过阈值,1分50秒时来了150个请求,在2分10秒时来

图像语义分割概述

图像语义分割概述一、图像语义分割概念图像语义分割(ImageSemanticSegmentation)是一项计算机视觉任务,其目标是将输入的图像分割成多个区域,并为每个像素分配一个语义类别标签,以表示该像素属于图像中的哪个物体或区域。与其他图像分割任务不同,图像语义分割不仅关注于分割图像,还要理解图像中不同部分的语义含

【C++】面向对象编程示例 ( 案例需求 | Visual Studio 创建类 | 类的声明 | 类的实现 | 类的调用 )

文章目录一、案例需求二、VisualStudio创建类三、类的声明四、类的实现五、类的调用一、案例需求使用C++面向对象,抽象出一个立方体类;立方体有长/宽/高/面积/体积私有成员变量,以及访问这些成员变量的公共成员方法;还提供立方体的对比函数,对比2个立方体对象是否相等;二、VisualStudio创建类在Visua

【C++】类的声明 与 类的实现 分开 ① ( 类的声明 与 类的实现 常用用法 | Visual Studio 2019 中创建类的头文件和源文件 | 确保头文件包含一次 )

文章目录一、类的声明与类的实现分开1、类的声明与类的实现常用用法2、VisualStudio2019中创建类的头文件和源文件3、Student.h类头文件解析4、确保头文件包含一次一、类的声明与类的实现分开1、类的声明与类的实现常用用法在之前的博客中,定义的class类,定义类时同时也完成了实现;但是在C++语言实际开

“源启2.0”:从自上而下的解构,到自下而上的重构

从垂直打穿、到应用重构,中电金信赋能行业数字化转型之路既“向下走”、也“向上看”。“向上”先理解和吃透客户的企业战略,进而自上而下地将企业战略拆解为业务架构,“向下”再将业务架构拆解为应用架构和数据架构,并进一步对齐技术架构。而在此过程中,上至“应用重构”,下至“数字基础设施重构”就都已不是问题。这就是“源启2.0”的

【校招VIP】测试方案分析之压力测试

考点介绍:软件压力测试是校招面试里面经常会碰到的题型。基本思路是在计算机数量较少或系统资源匮乏的条件下运行测试。要求面试者了解压力测试的基本概念,压测的目的,压测的要求以及说出实例。测试方案分析之压力测试-相关题目及解析内容可点击文章末尾链接查看!一、考点试题1.软件质量管理(QM)应有质量保证(QA)和质量控制(QC

以神龙出行小程序为例,说一些网站技术

注册和登录功能:用户注册和登录可以使用手机号验证、第三方登录等方式来实现。这需要与后台服务器进行数据交互,并进行身份验证。数据存储和管理:用户的个人信息和常用地址需要进行存储和管理。这可以通过数据库来实现,如关系型数据库或NoSQL数据库。智能匹配和推荐:搬家、拉货和代驾服务需要智能匹配合适的车型和司机。这可以利用算法

QT 连接SQLServer数据库

1、安装SQLServer数据库后在SQLServer配置管理器中设置后,需要重新启动SQLServer服务2、重点*配置ODBC数据源由于没有配置ODBC,一直无法连接开始——ODBC数据源管理程序(64位)之后选择:使用用户输入登录ID和密码的SQLServer验证连接SQLServer以获得其他配置选项的默认设置

热文推荐