0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

LVGL Simulation工程

jf_VLMkr9q5 来源:ANSYS仿真迷 2023-05-11 09:12 次阅读

前言:

最近在玩一个开源项目,用到ESP32,玩着玩着感觉开源项目的UI太枯燥了,于是了解到了LVGL,网上很多关于ESP32跑LVGL的现有工程,不过我通过这些信息了解到了LVGL可以仿真,为什么想用仿真呢?因为我是个仿真迷啊

因为之前ESP32出现下载不了的情况,最终定位原因是flash坏了,ESP32官方模块使用的是Flash是个看不出品牌的,应该很掉渣,丝印有AG2204,flash在出货一俩个月就出问题的,我还是第一次见,力创商城购买的,官方渠道,要不是开源作者使用ESP32,打死我不会选择ESP32,目前就打算移植STM32,用大厂的芯片就是舒服很多。

既然原因是flash坏了,我就考虑减少刷写次数,仿真就是一个很好的方法,纸上谈兵多好。

不过这个仿真环境也折腾得够呛,折腾几个晚上,终于搞定了,记录一下!!!

一、所需安装的资源:

cceef774-ef67-11ed-90ce-dac502259ad0.png

1-1、必须用visual studio2019

之前一直在用visual studio code,搞了好久发现和网上的教程不一样,找不到菜单,很奇怪,有时候加班真的不是效率很高的方式,仔细阅读LVGL的说明,才知道是针对visual studio2019的,官网下载,需要找到旧版本下载,

我下载的是Visual Studio Community 2019 (version 16.11)

安装时勾选"使用C++桌面开发工具",安装详细信息,我把v142全勾上了,不差那么点时间和空间,

cd19a424-ef67-11ed-90ce-dac502259ad0.png

然后静待在线安装,同时去把其他需要的项目下载好。

1-2、下载lv_port_win_visual_studio

之前的名字是lv_sim_visual_studio,现已改名,看本文第一张图的自述。

cd309dd2-ef67-11ed-90ce-dac502259ad0.png

下载完成后,解压

cd50715c-ef67-11ed-90ce-dac502259ad0.png

LVGL.Simulator.sln在安装好visual studio2019之后就可以双击打开,在打开之前还需要进行下一步,下载必要的子项目文件,否则直接打开编译会报错很多No such file or directory的错误

1-3、下载对应的子项目文件

只需要freetype和lvgl的子项目文件,看网上的教程说还需要lv_demes和lv_drivers,应该是对应旧版本的lv_sim_visual_studio,这次使用仅需下载额外的freetype和lvgl即可,下载完成之后解压到LVGL.Simulator文件夹下,如下截图

cd6acfac-ef67-11ed-90ce-dac502259ad0.png

二、Visual Studio 2019的配置

以上该有的都完成之后就可以双击LVGL.Simulator.sln打开,在编译之前还需要设置一下

2-1、设置属性

点一下LVGL.Simulator选中,再右键属性

cd7fd762-ef67-11ed-90ce-dac502259ad0.png

跳出属性界面,设置常规和高级中的参数

根据自己电脑系统选择x64(我是Win11_64位系统),再选择平台工具集为Visual Studio 2019(v142)

cd962814-ef67-11ed-90ce-dac502259ad0.png

cdbd3846-ef67-11ed-90ce-dac502259ad0.png

2-2、NuGet 包管理设置

比较坑的是,我在网上都没有找到LVGL出这个问题的帖子,根据许多教程的帖子都是在以上设置好之后就可以成功编译了,但是我的就是不行,编译报一下错误

NuGet 包还原失败。请查看“错误列表”窗口了解详细警告和错误。

然后就一大堆错误,

解决方法:找到"工具->NuGet 包管理器->程序包管理器设置"

cdd861a2-ef67-11ed-90ce-dac502259ad0.png

去掉勾选"允许NuGet下载缺少的程序包"

ce0be522-ef67-11ed-90ce-dac502259ad0.png

之后就没有报错了。

2-3、此时就可以正常编译

当然还会遇到一些错误,那些都是程序相关的。

ce1bbaa6-ef67-11ed-90ce-dac502259ad0.png

原则上warning不影响编译的成功与否,于是我找error的报错,以下为error报错信息

ce6627d0-ef67-11ed-90ce-dac502259ad0.png

双击跳转

ce89d040-ef67-11ed-90ce-dac502259ad0.png

一看这语句无关紧要,最简单的方法就是直接注释掉。

再次编译(菜单栏"生成"),成功了!!!

======全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ======

cea3b17c-ef67-11ed-90ce-dac502259ad0.png

最后"调试"->"开始调试"

ceb9f91e-ef67-11ed-90ce-dac502259ad0.png

期待的画面终于出现!!!

以下为测试案例,可根据自己需要修改

//lv_demo_widgets();

lv_demo_benchmark(LV_DEMO_BENCHMARK_MODE_RENDER_AND_DRIVER);

//色块跳动测试案例

ced92690-ef67-11ed-90ce-dac502259ad0.png

cef49682-ef67-11ed-90ce-dac502259ad0.png






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FlaSh
    +关注

    关注

    10

    文章

    1551

    浏览量

    146652
  • STM32
    +关注

    关注

    2240

    文章

    10674

    浏览量

    348790
  • ESP32
    +关注

    关注

    13

    文章

    896

    浏览量

    15815
  • LVGL
    +关注

    关注

    0

    文章

    75

    浏览量

    2404

原文标题:LVGL Simulation工程(Visual Studio 2019)

文章出处:【微信号:ANSYS仿真迷,微信公众号:ANSYS仿真迷】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    RT-Thread Studio上移植GUI-Guider-1.4开发LVGL8.2工程

    创建一个rttthread工程,选择出厂带好LVGL配置的demo,或者自己已经搭建好了LVGL环境的工程
    的头像 发表于 11-03 12:52 751次阅读
    RT-Thread Studio上移植GUI-Guider-1.4开发<b class='flag-5'>LVGL</b>8.2<b class='flag-5'>工程</b>

    LVGL工具使用

    一. 本文章目的以及系列目录1)给广大嵌入式GUI LVGL爱好者提供资料,代码下载渠道2)给广大嵌入式GUI LVGL爱好者增加一个学习文章导读整个LVGL系列有如下计划LVGL资料
    发表于 12-15 07:17

    用scons编译lvgl出错怎么办

    使用rt studio 最新版本2.2.5创建工程lvgl 8.2.0 , 使用scons编译,发现lvgl目录下生成的.o文件和c文件在同目录,而其他的.o文件都在build目录下,求解?看了下
    发表于 09-26 14:16

    请问在RT_Thread Studio创建的工程中如何移植LVGL

    请问在RT_Thread Studio创建的工程中如何移植LVGL
    发表于 11-11 14:48

    请问RT-Thread Studio中LVGL线程如何启动?

    Settings中的LVGL线程配置项:也就是说我要如何让这个线程运行起来?补充:这个工程是基于芯片的工程类型,不是基于开发板;目前的情况是需要手动调用lv_task_handler()才能实现
    发表于 02-07 10:35

    请问在RT_Thread Studio创建的工程中如何移植LVGL

    请问在RT_Thread Studio创建的工程中如何移植LVGL?求移植步骤。
    发表于 02-07 10:42

    求助,在RT_Thread Studio创建的工程中如何移植LVGL

    在RT_Thread Studio创建的工程中如何移植LVGL
    发表于 09-08 17:48

    简析LVGL基础知识之对象模块

    LVGL 中,用户界面的基本构建块是对象,也称为小部件(widget)。本文主要是介绍LVGL的对象模块。
    的头像 发表于 06-11 10:47 5989次阅读
    简析<b class='flag-5'>LVGL</b>基础知识之对象模块

    LuatOS之LVGL字体篇

    前言之前展示过Luatos在win32上运行LVGL的效果,今天带来LVGL的字体篇介绍LVGL字体支持很全,支持 UTF-8 编码的 Unicode 字符,分内部字体和外部字体,字体制作工具也很多
    发表于 11-23 17:51 13次下载
    LuatOS之<b class='flag-5'>LVGL</b>字体篇

    LVGL系列(二)之二 LVGL常见问题解答 整理自官方文档

    “本文大部分内容来自LVGL官方文档,手翻版,如有错误欢迎指正。”系列文章目录一、LVGL系列(一)一文了解LVGL的学习路线轻松了解LVGL的全部二、
    发表于 11-24 13:36 11次下载
    <b class='flag-5'>LVGL</b>系列(二)之二 <b class='flag-5'>LVGL</b>常见问题解答 整理自官方文档

    STM32F4芯片移植_LVGL7.11_UCOS移植代码工程

    STM32F4芯片移植_LVGL7.11_UCOS移植代码工程
    发表于 12-09 17:45 24次下载

    "stm32 DMA2D使用中断LVGL,提高LVGL帧率"

    刷新率 + LVGL公有条件:LTDC刷新率45MHZ 开启SDRAM 突发传输 LVGL 2个全尺寸缓冲区1 LVGL不使用DMA2D 使用寄存器DMA2D传输LVGL配置#defi
    发表于 12-02 17:06 37次下载
    "stm32 DMA2D使用中断<b class='flag-5'>LVGL</b>,提高<b class='flag-5'>LVGL</b>帧率"

    LVGL 优化帧率技巧

    目录标题前文LVGL帧率限制代码优化等级前文LVGL——PC模拟器仿真模拟+VS2017f429 discovery开发版 LVGL移植(带操作系统)首先就个人用过的几个芯片而言,可能还是要F4系列
    发表于 12-07 13:21 14次下载
    <b class='flag-5'>LVGL</b> 优化帧率技巧

    【RISC-V &amp;amp; LVGL】现象级爆红的开源显示框架——LVGL究竟蕴藏怎样的魔力

    #01LVGL简介实用自行车码表具有科技感的奖杯实现这些DIY作品的背后,都有同样一个功能强大的GUI——LVGLLVGL的作者是来自匈牙利的GaborKiss-Vamosikisvegabor
    的头像 发表于 03-15 09:50 2338次阅读
    【RISC-V &amp;amp; <b class='flag-5'>LVGL</b>】现象级爆红的开源显示框架——<b class='flag-5'>LVGL</b>究竟蕴藏怎样的魔力

    如何在MDK中部署LVGL

    LVGL的刚刚完成了对LVGL8的维护更新,发布了v8.3.5版。相对master分支上正在开发的LVGL9,该版本是一个吐血推荐的稳定版本。
    的头像 发表于 07-27 14:41 802次阅读
    如何在MDK中部署<b class='flag-5'>LVGL</b>