lv_port_pc_visual_studio 上手指南:Visual Studio 里跑通 LVGL 模拟器
lv_port_pc_visual_studio 上手指南Visual Studio 里跑通 LVGL 模拟器【免费下载链接】lv_port_pc_visual_studioVisual Studio projects for LVGL embedded graphics library. Recommended on Windows. Linux support with Wayland is work in progress.项目地址: https://gitcode.com/gh_mirrors/lv/lv_port_pc_visual_studio你手上有一块带小屏幕的嵌入式开发板想在写固件前先确认 LVGL 界面的布局效果但真机调试改一行代码就要刷一次固件迭代太慢。lv_port_pc_visual_studio 是一套预配置好的 Visual Studio 工程让 LVGL 图形库的模拟器直接跑在 Windows 桌面上整个工程只依赖 Win32 API、C 运行时和 C STL不需要安装任何额外依赖也不需要 Visual Studio Code。 克隆仓库与子模块这个仓库把 LVGL 源码放在 git 子模块里普通git clone不会拉取它们缺了子模块后面无法编译。一步到位的写法是git clone --recurse-submodules https://gitcode.com/gh_mirrors/lv/lv_port_pc_visual_studio如果你已经克隆过主仓库在仓库目录里补一条命令即可git submodule update --init --recursive版本选择上注意一点master 是开发分支可能编译不过要稳定版本切换到release/前缀的分支。如果你的 Visual Studio 是 2017、2019 或 2022 的 17.13 之前的版本需要用release/v9.4/legacy-vs-solution分支。当前主线按 Visual Studio 2026 维护2022 的 17.13 及以上版本大概率可用但未做正式支持。️ 打开方案并运行模拟器用 Visual Studio 打开仓库根目录的LVGL.slnx方案文件里面有三个项目LvglWindowsSimulator模拟器、LvglWindowsDesktopApplication桌面应用和LvglWindows核心库。把LvglWindowsSimulator设为启动项目点工具栏上的本地 Windows 调试器按钮工程会先编译再启动程序从一个命令行窗口里拉起。默认运行的是lv_demo_widgets演示一个固定 800×480 的窗口会显示按钮、滑块等 LVGL 控件鼠标拖动、键盘方向键都能操作。入口代码在LvglWindowsSimulator/LvglWindowsSimulator.cpp的main()里演示程序就是一次函数调用想换演示时把它换成别的即可lv_demo_widgets(); // lv_demo_benchmark();两种模式分别适合什么模拟器模式先在电脑上验证真机 UI模拟器把 LVGL 显示分辨率始终固定不变目的是复现你在生产设备上看到的 UI 布局。Windows 的 DPI 缩放改变时它只是把画面整体拉伸LVGL 内部的坐标系不动。这个模式还集成了 FreeType 字体渲染。做界面原型、验证控件排布、跑lv_demo_benchmark看帧率用这个模式最接近真机观感。应用模式开发 Windows 桌面程序LvglWindowsDesktopApplication走桌面应用路线窗口可以随意拖拽缩放LVGL 的显示分辨率跟着窗口变DPI 设置变化时LVGL 的 DPI 值也同步更新。如果你最终交付的是一个 Windows 桌面程序而不是嵌入式界面从这个项目改起更顺。⚙️ 新手最容易改错的配置默认配置集中在LvglWindowsSimulator/lv_conf.h下面几项最常被误改LV_MEM_SIZELVGL 内部对象分配的内存池大小。64 位模拟器下如果它小于 128 KiB 就会遇到内存不足工程默认是(256 * 1024U)建议保持 256 KiB 起步跑大型演示时再往上加。LV_DEF_REFR_PERIOD刷新周期默认 10 ms即每秒 100 帧的上限。除非你在做功耗实验一般不用动。LV_USE_DEMO_* 系列宏在 DEMO USAGE 小节约 1199 行附近把想开的演示从 0 改成 1比如#define LV_USE_DEMO_MUSIC 1重新编译就能跑对应演示。lv_demo_widgets和lv_demo_benchmark默认已开其余都是关的。LV_COLOR_DEPTH默认 32 位色深与 Windows 显示保持一致不需要改动。 这些现象对应的处理办法平台下拉框里自动选中了 ARM64现象首次打开方案后编译或运行报奇怪错误。原因模拟器工程同时支持 x86、x64 和 ARM64Visual Studio 按字母顺序会默认选中 ARM64多数开发机跑不了它。处理在工具栏平台选择框里手动切到 x64 或 x86 再构建。64 位下运行时报内存不足现象跑 widgets 或 benchmark 演示时 LVGL 打印 out of memory 日志甚至闪退。原因LV_MEM_SIZE被调小了64 位环境下指针占用更大低于 128 KiB 就紧巴。处理把lv_conf.h里恢复为#define LV_MEM_SIZE (256 * 1024U)。克隆下来直接编译不过现象一堆文件找不到的编译错误。原因最常见的是没拉子模块LVGL 源码目录是空的其次是停留在 master 开发分支上该分支本身可能编译失败。处理先执行git submodule update --init --recursive补拉子模块仍不行就切到release/前缀的分支再试。 继续深入仓库自带三份说明文档可以直接读默认 lv_conf.h 配置说明列出了每个默认宏的取值和用途子模块同步指南讲手动升级 LVGL 子模块的流程ARM32 移除说明解释了为什么不再支持 ARM32 平台。想写自己的界面时直接在LvglWindowsSimulator.cpp的main()里调 LVGL 的控件 API 建对象、绑事件保存后重新运行即可看到效果。下一步可以做的三件事把演示换成lv_demo_benchmark跑一次帧率在lv_conf.h里开一个没试过的演示如LV_USE_DEMO_MUSIC然后动手改一个控件的位置验证热更新流程。【免费下载链接】lv_port_pc_visual_studioVisual Studio projects for LVGL embedded graphics library. Recommended on Windows. Linux support with Wayland is work in progress.项目地址: https://gitcode.com/gh_mirrors/lv/lv_port_pc_visual_studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Nino序列化数据如何实现向后兼容:[NinoFormerName]与[NinoMember]版本迁移完全指南

Nino序列化数据如何实现向后兼容:[NinoFormerName]与[NinoMember]版本迁移完全指南

Nino序列化数据如何实现向后兼容:[NinoFormerName]与[NinoMember]版本迁移完全指南 【免费下载链接】Nino Ultimate high-performance binary serialization library for C#. 项目地址: https://gitcode.com/gh_mirrors/ni/Nino Nino 是 C# 生态中一款极致高…

2026/8/25 9:04:01 阅读更多 →
OpenCore Legacy Patcher 实战指南:老 Mac 接投影仪与多屏输出的完整流程

OpenCore Legacy Patcher 实战指南:老 Mac 接投影仪与多屏输出的完整流程

OpenCore Legacy Patcher 实战指南:老 Mac 接投影仪与多屏输出的完整流程 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher OpenCore Legacy Patche…

2026/8/25 9:04:01 阅读更多 →
面试预检机制优化:提升招聘效率与候选人匹配度

面试预检机制优化:提升招聘效率与候选人匹配度

1. 面试预检机制的价值与痛点去年帮一家中型互联网公司优化招聘流程时,发现个有趣现象:技术岗初面通过率仅23%,但用人部门反馈"候选人质量普遍不达标"。细究发现,75%的淘汰集中在算法实现、系统设计等基础能力项——这些…

2026/8/25 9:03:00 阅读更多 →

最新新闻

基于RNN与可微分渲染的智能矢量草图生成框架解析

基于RNN与可微分渲染的智能矢量草图生成框架解析

1. 项目概述:从像素到矢量的智能草图生成在数字艺术和设计领域,将脑海中的创意快速、精准地转化为干净的矢量线稿,一直是一个核心且富有挑战性的环节。无论是工业设计的概念草图、动画制作的角色线稿,还是建筑设计的平面图&#x…

2026/8/25 9:49:50 阅读更多 →
Maka Agent Ask User Question功能详解:AI如何与你就关键决策确认

Maka Agent Ask User Question功能详解:AI如何与你就关键决策确认

Maka Agent Ask User Question功能详解:AI如何与你就关键决策确认 【免费下载链接】maka Apache Maka (Incubating) is a local-first AI agent workspace. Model messages, tool calls, tool results, permission decisions, and termination events are recorded …

2026/8/25 9:49:50 阅读更多 →
SpreadCheetah 高级功能大全:图片、批注、合并单元格与数据验证

SpreadCheetah 高级功能大全:图片、批注、合并单元格与数据验证

SpreadCheetah 高级功能大全:图片、批注、合并单元格与数据验证 【免费下载链接】spreadcheetah SpreadCheetah is a high-performance .NET library for generating spreadsheet (Microsoft Excel XLSX) files. 项目地址: https://gitcode.com/gh_mirrors/sp/spr…

2026/8/25 9:49:50 阅读更多 →
Shallows快速上手教程:5分钟实现你的第一个Swift缓存存储

Shallows快速上手教程:5分钟实现你的第一个Swift缓存存储

Shallows快速上手教程:5分钟实现你的第一个Swift缓存存储 【免费下载链接】Shallows 🛶 Your lightweight persistence toolbox 项目地址: https://gitcode.com/gh_mirrors/sh/Shallows Shallows 是一个轻量级的 Swift 缓存与数据持久化工具箱&am…

2026/8/25 9:49:50 阅读更多 →
10 分钟在 Obsidian 中跑通 Claudian

10 分钟在 Obsidian 中跑通 Claudian

10 分钟在 Obsidian 中跑通 Claudian 【免费下载链接】claudian An Obsidian plugin that embeds Claude Code/Codex as an AI collaborator in your vault 项目地址: https://gitcode.com/GitHub_Trending/cl/claudian 让 AI 直接读改 Obsidian 里的笔记,是…

2026/8/25 9:49:50 阅读更多 →
STM32嵌入式日志系统设计:RAM+Flash双缓冲与LVGL集成

STM32嵌入式日志系统设计:RAM+Flash双缓冲与LVGL集成

1. 为什么嵌入式日志系统不是“可有可无”,而是系统健壮性的第一道防线在STM32项目里,你有没有遇到过这样的场景:设备在现场连续运行三天后突然死机,串口打印停在某一行,但复位后又一切正常;调试时加了几十…

2026/8/25 9:48:48 阅读更多 →

日新闻

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

2026/8/25 0:00:34 阅读更多 →
Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

2026/8/25 0:00:34 阅读更多 →
数学建模竞赛论文写作指南:从模型构建到学术表达的核心技能

数学建模竞赛论文写作指南:从模型构建到学术表达的核心技能

1. 项目概述:从“会做”到“会写”的竞赛核心跃迁“全国大学生数学建模竞赛”,这个名字对理工科学生来说,分量极重。每年,无数团队在三天三夜的时间里,为一个开放性问题绞尽脑汁,从建立模型、求解算法到编程…

2026/8/25 0:00:34 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/25 3:38:12 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/25 3:38:18 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 3:38:23 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/24 20:22:44 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/23 12:10:44 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/24 11:20:22 阅读更多 →