Mculover666
CSDN博客专家,微信公众号mculover666,凭借与生俱来的热爱专注于嵌入式领域,在自己折腾的同时,以文字的方式分享所玩、所思、所想、所悟,作为一个技术人,我们一起前进~
展开
-
LVGL v9学习笔记 | 12 - 弧形控件的使用方法(arc)
arc控件的API在lvgl/src/widgets/arc/lv_arc.h 中声明,以lv_arc_xxx命名。arc控件由背景圆弧和前景圆弧组成,前景圆弧的末端有一个旋钮,前景圆弧可以被触摸调节。原创 2024-01-27 21:13:09 · 432 阅读 · 0 评论 -
LVGL v8学习笔记 |12 - 移植LVGL 8.3到ESP32C3开发板(ST7789)
因为驱动使用的是我自己编写的,所以修改lvgl依赖:components\lvgl\env_support\cmake\esp.cmake。将下载的 lvgl-8.3.6 文件夹直接复制到components路径中,并修改文件夹名称为lvgl。ESP32-IDF底层是基于freertos的,所以所以要创建一个独立的刷屏任务,在main文件夹下新建。最后在app_main任务中调用gui_task_create()即可。(2)examples/porting下的文件也进行重命名,去掉。原创 2023-04-09 11:50:33 · 1475 阅读 · 0 评论 -
LVGL v8学习笔记 | 11 - 列表控件的使用方法(list)
list控件属于扩展控件,API在lvgl/src/extra/widgets/list/lv_list.h 中声明,以lv_list_xxx命名。list控件属于扩展控件,由背景页和按钮构成,按钮包括一个可选的图标和一个label标签。在该控件中,可以将按钮或者标签作为一个列表项,区别在于按钮可以点击,标签不可点击。事件,用户可以进而通过下面的API来判断当前用户点击哪一项。当list控件项是按钮时,支持点击事件,会触发。当列表变得比较长时,列表是可以滚动的。原创 2022-10-17 23:25:25 · 2246 阅读 · 3 评论 -
LVGL v8学习笔记 | 10 - Tabview控件的使用方法
tabview控件属于扩展控件,所以tabview对象的API在 lvgl/src/extra/widgets/tabview/lv_tabview.h 中声明,以lv_tabview_xxx命名。(2)修改tabview部件内容框背景颜色(直接设置tabview控件的背景颜色即可)事件,用户可以进而通过下面的API来判断当前用户切换到哪一页。当tabview控件的标签页变动时,会触发。(1)修改标签栏背景颜色。原创 2022-10-16 15:52:26 · 2175 阅读 · 0 评论 -
LVGL v8学习笔记 | 09 - 进度条控件的使用方法(bar)
lv_bar_set_range必须放在lv_bar_set_mode前面,否则不生效。bar对象的API在lv_bar.h中声明,以lv_bar_xxx命名。此事件可以用来在进度条更新值之后更新别的控件(比如进度条旁边的文字)。可以看到,默认创建的进度条值是0到100。(3)设置进度条的范围值(最大值和最小值)(2)获取进度条的起始值。(3)获取进度条的最小值。(4)获取进度条的最大值。(1)设置进度条的当前值。(2)设置进度条的起始值。(1)获取进度条当前值。(5)获取进度条的模式。原创 2022-10-04 17:47:39 · 1048 阅读 · 1 评论 -
LVGL v8学习笔记 | 08 - 按钮控件的使用方法
这样解耦之后,操作btn控件的文本,就变为操作一个label,可以添加各种样式以及与btn控件的对齐样式,非常灵活。btn对象的API在lv_btn.h中声明,以lv_btn_xxx命名,只有这一个API。btn控件的组成部分非常简洁,只有一个LV_PART_MAIN。btn控件默认是不带有文字的,需要。eg. 创建一个默认label。(2)修改背景透明度(原创 2022-09-14 22:12:18 · 560 阅读 · 0 评论 -
LVGL v8学习笔记 | 07 - 字体的使用方法
本文使用思源黑体-Light为例:SiYuanHeiTi-Light。/*** @brief label使用思源黑体-Lightlv_label_set_text(label1 , "www.mculover666.cn 嵌入式宝藏站");}原创 2022-09-10 21:13:34 · 936 阅读 · 0 评论 -
LVGL v8学习笔记 | 06 - label控件的使用方法
label对象的API在lv_label.h中声明,以lv_label_xxx命名。eg. 创建一个默认label(1)设置label文本,文本内存会动态申请eg. 设置label文本(2)类似于printf,格式化设置label文本eg. 格式化设置文本(3)静态设置label文本(该文本不会被label保存,需要确保label存在的时候,文本处于可用状态)(4)label文本换行eg. 获取label文本4. label的大小label支持设置不同的长文本模式:模式如下:(原创 2022-09-10 12:06:59 · 1170 阅读 · 1 评论 -
i.MX6ULL应用移植 | 移植lvgl到imx6ull(基于framebuffer)
2. 下载子仓库修改子模块路径。(1)修改 .gitmodules 文件(2)修改 .git/config 文件(3)删除 .git/modules目录下已有的 submodule文件夹(4)删除工程的根目录下submodule文件夹(5)更新子仓库二、修改配置文件1. 复制配置文件2. 修改lv_driver驱动文件修改Makefile:3. 编译编译出的可执行为demo:原创 2022-09-04 16:19:53 · 1331 阅读 · 1 评论 -
LVGL v8学习笔记 | 05 - LVGL基础对象
一、lvgl对象1. 基础对象(lv_obj_t)在lvgl中,任何控件都是一个对象。这些控件都继承自lvgl基础对象类,换句话说,lvgl基础类描述了所有控件共有的属性和方法,称之为lv_obj_t。lv_obj_t类定义在文件lvgl\src\core\lv_obj.h文件中,定义如下:typedef struct _lv_obj_t { const lv_obj_class_t * class_p; struct _lv_obj_t * parent; _lv_obj_原创 2022-03-20 21:38:20 · 4092 阅读 · 2 评论 -
LVGL v8学习笔记 | 04 - 移植LVGL 8.2到STM32F429开发板(RGB屏)
一、移植前的准备1. 裸机工程STM32CubeMX | 41 - 使用LTDC驱动TFT-LCD屏幕(RGB屏)2. lvgl源码https://github.com/lvgl/lvgl下载最新发布的 8.2.0 版本:https://github.com/lvgl/lvgl/releases/tag/v8.2.0内容如下:lvgl源码在 src 目录下:二、移植lvgl1. 复制lvgl源码到工程中(需要修改)src:lvgl源码examples:lvgl示例和移植原创 2022-03-19 22:57:05 · 4528 阅读 · 7 评论 -
LVGL v8学习笔记 | 03 - 移植LVGL 8.2到小熊派开发板(SPI屏)
一、移植前的准备1. 裸机工程STM32CubeMX | 35-使用硬件FSMC驱动TFT-LCD屏幕(MCU屏,NT35510控制器)2. lvgl源码https://github.com/lvgl/lvgl下载最新发布的 8.2.0 版本:https://github.com/lvgl/lvgl/releases/tag/v8.2.0内容如下:lvgl源码在 src 目录下:二、移植lvgl1. 复制lvgl源码到工程中(需要修改)src:lvgl源码example原创 2022-03-19 09:05:11 · 1680 阅读 · 1 评论 -
LVGL v8学习笔记 | 02 - 移植LVGL 8.2到STM32F407开发板(MCU屏)
一、移植前的准备1. 裸机工程STM32CubeMX | 35-使用硬件FSMC驱动TFT-LCD屏幕(MCU屏,NT35510控制器)2. lvgl源码二、移植lvgl1. 复制lvgl源码到工程中原创 2022-02-27 21:59:34 · 3888 阅读 · 13 评论 -
LVGL v8学习笔记 | 01 - LVGL PC模拟器初体验
一、LVGLLVGL官网:https://lvgl.io/。LVGL全称Light and Versatile Graphics Library,轻量化和多功能的图形库,遵循MIT开源许可协议,具有以下特性(what LVGL can do for you)。1. 对硬件的要求CPU:16、32、64位主频:推荐16 MHzFlash/ROM空间: > 64 kB (推荐180 kB)RAM空间: 8 kB (推荐24 kB)1 Frame buffer(显存):在内部SRAM和外原创 2022-01-02 23:14:20 · 3878 阅读 · 5 评论