【01】LVGL-CodeBlock模拟器安装 | LVGL工程下载 | PC端模拟LVGL步骤

LVGL模拟器

1.LVGL模拟器介绍

LVGL模拟器:使用PC端软件模拟LVGL运行,而不需要任何嵌入式硬件。优点:便于学习、跨平台协同开发

2.Windows环境搭建CodeBlock及获取LVGL工程

安装包获取CodeBlock官网
软件版本 :codeblocks-20.03mingw-setup或以上版本,必须带mingw工具集 (由于模拟工程工程是基于C语言的代码,源代码没办法直接在Windows环境下直接运行,而mingw工具集可以将源代码生成可在Windows下执行的文件)。

安装CodeBlocks,正常安装即可,选择合适的文件目录。

工程获取途径 :LVGL官网的github仓库,网址

注意:文件夹带"@"的子文件夹需要另外下载,解压后,放至相应文件夹,我这里已经下载过了,所以IDM显示重复下载。:

3.PC端模拟LVGL

使用步骤

1.配置屏幕分辨率、修改配置文件;

2.建议建立专门存放lvgl用户代码的文件,移植和管理更加方便;

3.编写用户代码,在主函数中调用。

用CodeBlocks打开.cbp文件。

在main.c文件中修改屏幕的分辨率,长×宽。

在lv_conf.h中修改屏幕颜色深度,我这里屏幕颜色深度为16为,所以改为16.

cpp 复制代码
/*Color depth: 1 (1 byte per pixel), 8 (RGB332), 16 (RGB565), 32 (ARGB8888)*/
#define LV_COLOR_DEPTH 16

不修改其他文件直接点击运行,可以运行官方的lvgl demo。

在工程目录下创建my_gui.c和my_gui.h文件,并在CodeBlocks软件中右击"lvgl文件夹"添加这两个文件。

my_gui.h中代码:

cpp 复制代码
#ifndef __MY_GUI_H
#define __MY_GUI_H

void my_gui(void);

#endif // __MY_GUI_H

my_gui.c中代码:

cpp 复制代码
#include "my_gui.h"
#include "lvgl.h"


void my_gui(void)
{
    lv_obj_t* switch_obj = lv_switch_create(lv_scr_act());
    lv_obj_set_size(switch_obj, 120, 60);
    lv_obj_align(switch_obj, LV_ALIGN_CENTER, 0, 0);
}

这样就创建了一个按钮,需要在main.c中添加my_gui.h头文件、注释掉调用demo那行代码并调用my_gui()

4.总结

相关推荐
程序员yt29 分钟前
双非一本电子信息专业自学嵌入式,学完 Linux 后咋走?单片机 & FreeRTOS 要补吗?
linux·运维·单片机
CSDN_PBB3 小时前
[STM32 - 野火] - - - 固件库学习笔记 - - - 十五.设置FLASH的读写保护及解除
笔记·stm32·学习
楼台的春风4 小时前
【GPIO详解及实践示例】
c语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式
sinat_360704829 小时前
STM32 低功耗模式
stm32·单片机·嵌入式硬件
jmlinux11 小时前
STM32 HAL库USART串口中断编程:演示数据丢失
stm32·单片机·嵌入式硬件
星糖曙光11 小时前
开发一个音响控制板程序,需要从硬件架构设计、通信协议选择、核心功能实现三个层面进行系统化开发。以下是基于工业级开发流程的实施方案
stm32·课程设计·emacs·ai编程·设计规范
勿忘初心9112 小时前
Android车机DIY开发之软件篇(十六)编译forlinx i.mx8mplus Android
android·arm开发·经验分享·嵌入式硬件
沐欣工作室_lvyiyi14 小时前
基于物联网的智能蔬菜仓库设计(论文+源码)
人工智能·stm32·单片机·嵌入式硬件·物联网·fpga
奇偶变不变15 小时前
单片机中有FLASH为啥还需要EEROM?
单片机·嵌入式硬件
我不是加奈15 小时前
摄像头畸变矫正
python·单片机·opencv