自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 LVGL | 使用DMA非阻塞刷屏

在lvgl中使用非阻塞是比较合理的,根据实际硬件选择刷屏模式,一般资源不是很强大的主控,选择第一种或者第二种就好了,第三种容易出现资源不足,这里选择第二种模式。gd32f103的DMA一次最多发送65536个数据,一次发送10行数据,大约是6400个数据,完成能一次发送完成,就不需要进行分块。设置显示区域,触发dma发送,等待dma发送完成,通知lvgl更新显示。即可实现dma非阻塞刷屏显示。

2025-12-24 22:11:45 131

原创 LVGL | Gui-Guider使用

使用gui guider生产代码并移植到lvgl项目工程中,借助这种工具能加快项目的开发效率,面对需求更改的时候也方便。添加文件到工程(gui_app里边所有的c文件都需要添加进来)删除多余代码,只需要保证lvgl能跑就行。复制一个能正常使用的lvgl项目。编译没有问题,下载显示白屏即可。显示初始胡和事件初始化。

2025-12-24 04:48:32 128

原创 LVGL | Demo移植

官方有几个demo,可以移植到开发板看看效果,过程也比较简单,这次主要是使用benchmark这个demo。把这个文件夹里边的全部.c文件添加到工程。

2025-12-23 22:45:57 174

原创 LVGL | 使用DMA刷屏

通过之前的文章可以知道,使用画点函数进行刷屏速度很慢,这篇文章就来实现使用DMA刷屏,提高刷屏速度。下载到开发板会发现颜色不对,这是因为颜色是u16的,dma配置的是u8的,这就需要修改一下配置。在移植好的LVGL工程的基础上,进行一些显示对接修改,即可实现。编译下载即可看到想要的效果。

2025-12-18 20:58:41 92

原创 LVGL | 移植LVGL(8.3.10)

lvgl已经出到了V9,但是很多配套都是V8.3,这篇主要介绍v8.3.10版本的移植,其他版本应该大差不差,根据需求实际操作。移植LVGL有很多教程,但是实际操作起来会有点繁琐,下面就进入lvgl移植教程。到这里就完整的移植llvgl,其他移植的方法和这个差不多,看个人喜欢。5.1、把Middlewares文件夹放到工程中。把裁剪后的代码全部放在lvgl文件夹中。5.8、添加lvgl相关代码。1、通过链接下载源码并解压。5.2、在MDK中创建分组。5.7、添加相关头文件。2、删除不必要的文件。

2025-12-18 20:12:49 275

原创 LVGL | 不同刷屏感受

使用三种刷屏方式来感受不同的刷屏体验,因为GD32F103的SPI速度有限,所以刷屏速度不会很快,但是可以直观对比不同速度下的刷屏。设置好显示区域,然后一次性通过硬件SPI发送数据,减少了每次都需要设置一次显示区域,速度比第一种快。使用DMA方式进行刷屏是最快的,SPI方式比较适合驱动小屏幕,大屏最好换其他接口的显示屏。最小显示屏项目模板如下,后期就在这个基础上移植LVGL。直接使用画点函数一个点一个点画,刷屏速度是最慢。在第二种的基础上调用了DMA发送,速度是最快的。

2025-12-17 16:32:10 170

原创 LVGL | SPI DMA细节

提高显示屏效果就必然会用到DMA,但是有个细节不知道各位有没留言,DMA发送完成触发中断时,SPI实际还没有完成,还需要一定的时间才会真正的发送完成。一个加入了等待SPI发送完成,一个没有加入等待SPI发送完成。

2025-12-14 18:23:20 142

原创 LVGL | 点亮屏幕(硬件SPI)

使用软件SPI刷新的速度比不上硬件SPI,只需要把模拟SPI接口改成硬件SPI接口即可。使用硬件SPI刷屏会比软件SPI刷屏快,最好还是选择硬件SPI进行刷屏!

2025-12-01 20:15:31 125

原创 LVGL | 点亮屏幕(模拟SPI)

主控使用的是gd32f103zet6,编译下载后屏幕显示蓝色。

2025-12-01 19:18:51 126

原创 ESP32 | WIFI链接

上篇介绍了扫描附近的WIFI列表,这篇就来学习一下怎么连接到指定WIFI,不通过GUI来选择输入相关信息,就通过代码来连接指定WIFI,并在串口输出相关信息。已经连接上wifi,并且输出了ip地址。在main.c编写相关代码。还是先创建一个空项目。

2025-03-12 20:29:12 226

原创 ESP32 | WIFI扫描

esp32是带有wifi功能的,这篇文章就来学习一下,使用STA模式进行扫描,获取附件的WiFi列表。创建一个空的项目,然后把下面的代码写到main.c中。中文名称会出现乱码,可能是格式的问题。打开串口助手,查看现象。

2025-03-11 00:36:03 566 2

原创 ESP32 | ESPTIMER

ESP_TIMER是ESP32的高精度定时器,一般用于需要高精度和高分辨率的时间管理,比如软件延时、时间戳或事件定时等。ESP_TIMER相对简单,使用也是比较直接的,适合用于简单的定时任务。通过esptimer定时器来周期控制LED亮灭,初步接触和学习它的基本使用。编译下载后会看到LED在周期亮灭,后续可以根据具体的项目需求进行处理。

2025-03-10 16:12:25 257

原创 ESP32 | 串口收发

ESP-IDF在启动时会自动配置默认的UART(通常是UART0)用于日志输出。如果没有特殊指定,这些默认配置往往指向了一个连接到USB的UART接口,通常用于与开发板连接的串口监视器。就是我们没有配置串口,在项目中依然能使用printf进行串口打印。串口通信是必学的外设之一,就让我们来学习一下串口的使用。使用轮询处理,进行串口收发实验。

2025-03-10 15:47:42 479

原创 ESP32 | 外部中断

微控制器的特定引脚被设计为对特定事件(如按钮按压、传感器信号变化等)作出响应,这些引脚通常称为“外部中断引脚”。一旦外部中断事件发生,当前程序执行将立即暂停,并跳转到相应的中断服务程序(ISR)进行处理。处理完毕后,程序会恢复执行,从被中断的地方继续。学过STM32的同学再学习ESP32会发现,ESP32它不像STM32那样直接使用中断函数,而是使用中断回调函数来实现中断处理。这个就是使用外部中断来控制LED的亮灭,实现的效果和上一篇的效果一样,只是实现的方式不太一样。在main.c编译代码。

2025-03-10 14:36:17 519

原创 ESP32 | 按键控制

编译下载即可看运行效果,正点原子的开发板对应的是BOOT按键,点击就可以控制LED的亮灭。按键输入也是学习一款开发板的必学技能,这篇文章主要学习通过按键控制led亮灭。为了方便入门,就先不搞文件和配置,就在main.c编写需要的代码。不知道过程的同学回看前几篇文章。

2025-03-10 14:08:28 226

原创 ESP32 | 项目文件架构

这个项目文件架构参照正点原子,各位同学根据自己实行需求,选择合适自己的项目文件架构。\components\BSP\CMakeLists.txt文件。\components\BSP\LED\led.c文件。\components\BSP\LED\led.h文件。\main\CMakeLists.txt文件。\CMakeLists.txt文件。参照前边的文章,创建一个基础项目。步骤3:继续创建目录和文件。打开后就是一个空白的项目。步骤1:创建一个目录。步骤2:继续创建目录。步骤4:继续创建文件。

2025-03-09 23:47:16 653

原创 ESP32 | 点亮LED

还是按传统流程走一边,点亮一个led开启学习旅程。各位同学根据自己的学习方法,选择合适自己的学习过程。博主使用的是正点原子的开发板,各位同学根据自己的主控板,配置合适自己的硬件代码。hello_world_main.c文件代码。步骤3:创建项目并打开。基础工程的文件架构解析。步骤1:创建新的项目。步骤2:配置相关信息。

2025-03-09 20:47:37 244

原创 ESP32 | 基于vscode搭建环境

看了一下全网相关的教程有很多,就是基于esp-idf的教程比较少,适合初学者的教程更是少之又少,希望能有更多人接触esp32,也希望能有更多教程的出现。安装过程可能会失败,如果提示失败,就把下载的内容全部删除,只保留esp-idf_v5.3和esp-idf_v5.3(只有tools目录)里边的tools空文件,检查魔法是否能正常访问,再次尝试安装开发环境,安装过程有点长,请耐心等待。博主尝试过一些不同的安装方式,成功率最高的是使用魔法的方式,建议有条件的同学尽量开启魔法再安装。步骤4:打开创建完成的项目。

2025-03-09 07:26:56 606

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除