CodeBlocks 运行 LittleVGL 模拟器 环境设置

1. 前言

  很久之前移植的Littlevgl图形界面,这几天想构建一个简单的显示界面,但是苦于在Keil上编写界面然后下载到单片机上查看效果的速度缓慢,于是查找资料看看是否像STemWin一样有在CodeBlocks上运行的模拟器,遇到了一些问题,以此记录。

2. 资源下载

(1)CodeBlocks

  CodeBlocks 17和CodeBlocks 20这两个版本都可以正常使用,下载链接:CodeBlocks官网
安装的话,直接点下一步默认安装或者是选择自己的路径即可

(2)SDL2 依赖库

  SDL2 (Simple DirectMedia Layer 2.0)是一套开源的跨平台的多媒体库,它通过实现了对音频、键盘、鼠标、手柄的底层支持,本次模拟器的运行需要用到它,下载链接:SDL官网 官网访问有点慢。我使用的版本是这个:
在这里插入图片描述

(3)LittleVGL 模拟器库文件

   这个没的说,github官网链接:LittleVGL 使用这三个文件就好了,我用的版本是7.0以下,比较老。访问有点慢,也可以点击百度网盘的连接下载:网盘资料 (包括SDL2,LittleVGL,CB17。提取码:c4rf)
在这里插入图片描述

3.具体步骤

   首先将网盘下载的LittleVGL 模拟器库文件在任意路径解压,然后解压上述图片同名的三个文件夹。或者是新建文件夹取名lv_pc_simulator(我的命名,任意取),然后将上述图片里面的文件放进去,然后新建一个文件夹叫CodeBlocks放置CodeBlocks项目,如下:
在这里插入图片描述
   将刚才下载的SDL文件解压,找到SDL2文件将其粘贴到CodeBlocks安装路径的include目录下,如图:
在这里插入图片描述
在这里插入图片描述
   将SDL库里面的lib文件里面的几个**.a** 文件复制粘贴到CodeBlocks安装路径的lib目录下,如图:
在这里插入图片描述
   打开CodeBloks,在刚才的codeblocks目录下新建工程,如图:
在这里插入图片描述
在这里插入图片描述
   选择项目名字,由于是演示,我先前以及新建项目了,所以名字为LittleVGL1
在这里插入图片描述
在这里插入图片描述
   新建完成后就是这个样子了,把软件自带的main.c右键移除,然后将LittleVGL的库文件添加到项目中来,(选择LittleVGL右键选择add files re…,选择上一级目录lv_pc_simulator添加),继续右键选择build option,添加连接选项 -lmingw32 -lSDL2main -lSDL2 然后添加头文件搜寻路径。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
   点击在这里插入图片描述进行编译,不出意外的话,它会报第一个错,原因是项目有自动建了一个main.c,只要把LittleVGL1下的main.c删除就好了。
在这里插入图片描述
   再次编译,会报第二个错,原因是无法找到**<SDL2/SDL.h>**相对路径,将其改为绝对路径就好了
请添加图片描述
在这里插入图片描述
   再次编译,有些朋友可能会出现这个错误,原因是可能在使用CodeBlocks的时候,可能用到了其它版本的minGW,(我就是前面配置STemWin的时候修改了minGW),而我们更改的(添加.a文件和SDL文件夹是在CodeBlocks自带的minGW,所以报错)这时只要将其改为自带的minGW即可。注:在settings,compiler里面。
请添加图片描述

在这里插入图片描述
   我们还需要把宏定义 USE_FBDEV 的值改为0就可以了,USE_FBDEV宏lv_pc_simulator\lv_drv_conf.h头文件中的186行处,改成0之后,编译不会报错了。最后,若是出现以下错误,SDL2-2.0.10\i686-w64-mingw32\bin目录下的SDL2.dll文件拷贝到lv_pc_simulator\codeblocks\littleVGL1\bin\Debug目录下面即可。
请添加图片描述
   成功运行的截图:
在这里插入图片描述

4.总结

   主要是需要细心,根据软件错误提示解决问题,安装完成后,就可以使用模拟器开发界面,开发完成后在移植到单片机上去了,开发速度大大加快。本人不才,必有疏漏,望指正。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值