LVGL是一款嵌入式开发比较常用的开源GUI库,lvgl本身采用c以面向对象的方式开发,这种高级特性可以很好的适应高级语言,所以采用python开发也是不错的选择。现在我们就尝试下使用micropython开发lvgl应用。官方对micropython已经做了移植支持,采用pycparser工具将lvgl  c源码进行封装出一个中间c文件做为mpy模组接口。lvgl官方git            
                
         
            
            
            
            lvgl官方的教程是英文的,这个是我在做项目时顺便做出来的中文教程站点(持续更新维护),不仅仅只是照搬lvgl官方文档的翻译,同时总结了我们在实际开发中遇到的各种细节,让这个文档更加适合我们在实际开发中的需求。LVGL是什么?LVGL(轻巧而多功能的图形库)是一个免费的开放源代码图形库,它提供创建具有易于使用的图形元素,精美的视觉效果和低内存占用的嵌入式GUI所需的一切。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-04 10:44:05
                            
                                1419阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            GitHub上有一个项目叫做esp-iot-solution里面包含了常用的屏幕,按键,编码器,音频等。其中gui使用的是lvgl7。仓库使用git获取下来之后,可以直接cd切换到examples/hmi/lvgl/example中,使用idf.py menuconfig配置完成之后,更改引脚配置之后。idf.py build,然后windows上idf.py -p com4 flash烧录即可。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-07 08:54:35
                            
                                126阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            写这篇文章的目的在于系统介绍一下LVGL的大概结构和编程的大致方法,可以通过下面的介绍快速入门。本文主要作用不是具体介绍组件和函数的具体用法,只是提供一个思路,具体组件的用法请查看文档docs.lvgl.io概述:LVGL是一个轻量级的GUI框架,主要优点就是它的轻量级特点,可以很容易应用于各种系统中开发显示界面。用于嵌入式系统开发有如下优点:1.开发语言是C语言,意味着适合于大部分嵌入开发人员。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-13 12:39:46
                            
                                2702阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、emWin介绍 emWin是Segger公司针对嵌入式平台开发的稳定、高效的图形软件库,适合用于任何图形LCD的操作应用,并可输出高质量的无锯齿的文字和图形,通过调用emWin提供的函数接口,开发嵌入式图形界面应用变得简单而快捷。二、emwWn、ucGUI、STemWin三者之间的关系 1. 三者都是Segger 公司的产品。 2.emwWn是Segger 公司图形系统的正式统称。 3.ucG            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-05 06:41:14
                            
                                1000阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            准备条件:硬件环境:STM32F429I-DISCOVERY软件环境:Keil MDK v5.26嵌入式RTOS:Keil RTX5说明:假设已经写好了裸机的LCD驱动程序且能正常显示信息。预备知识——LCD知识补充LCD常见的接口LCD的接口有多种,分类很细。主要看LCD的驱动方式和控制方式,目前手机上的彩色LCD的连接方式一般有这么几种:MCU模式,RGB模式,SPI模式,VSYNC模式,MD            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-31 14:14:33
                            
                                1075阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            介绍lv_100ask_pinyin_ime 是在 lv_keyboard 的基础上编写的一个自定义部件(创建接口为: lv_100ask_pinyin_ime_create(lv_obj_t *parent)); ),它和 lv_keyboard 没有什么区别,只是增加了支持中文拼音输入法的功能。所以将其称为:支持中文拼音输入法的LVGL键盘(lv_keyboard)部件增强插件。正常来说,只要            
                
         
            
            
            
            一 LVGL简介最近emwin用的比较烦躁,同时被LVGL酷炫的界面吸引到了,所以准备换用LVGL试试水。LVGL(轻量级和通用图形库)是一个免费和开源的图形库,它提供了创建嵌入式GUI所需的一切,具有易于使用的图形元素,美丽的视觉效果和低内存占用。【1】主要特性丰富且强大的模块化图形组件:按钮 (buttons)、图表 (charts)、列表 (lists)、滑动条 (slider            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-06 15:04:45
                            
                                3006阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            6.1 创建一个图表对象6.2 设置图表的大小6.3 设置图表的对齐位置6.4 设置图表的区            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-19 13:46:44
                            
                                1524阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            ## LVGL布局:创建美观的用户界面
在嵌入式设备的开发中,用户界面是至关重要的一部分。一个好的用户界面不仅仅能提供良好的用户体验,还能提高应用程序的可用性和易用性。LVGL是一个轻量级的图形库,可以帮助开发者创建漂亮的用户界面。在本文中,我们将介绍LVGL的布局功能,以及如何使用它来创建复杂的用户界面。
### 什么是LVGL布局?
LVGL布局是一种将用户界面元素放置在屏幕上的方法。它            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-01-13 00:57:55
                            
                                289阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            文章目录1 前言2 准备3 移植LVGL3.1 工程准备3.2 修改 CMakeLists.txt文件编译 LVGL3.3 编译LVGL4 编译 ST7789 LCD驱动5 发现问题 1 前言本教程开始学习 LVGL的,开始之前要把环境配置好,首先就需要移植 lvgl,使用的是 esp32 环境,使用的 LCD驱动IC是 ST7789,没有使用到触摸屏。2 准备组件下载地址https://com            
                
         
            
            
            
            1. LVS简介1. 什么是LVS?LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。目前LVS已经被集成到Linux内核模块中.2. LVS能做什么?LVS主要用于多服务器的负载均衡它工作在网络层, 可以实现高性能, 高可用的服务器集群技术.它廉价,可把许多低            
                
         
            
            
            
            1.下载一张bmp图像图片链接2.调整图片的大小具体操作详见:图片尺寸、像素修改3.在线生成lvgl图片点阵信息链接:lvgl图片在线生成.c文件4.将生成的图片image_dog.c文件放到lvgl工程中5.配置画布的大小,及显示的图片LV_IMG_DECLARE(image_dog);#define CANVAS_WIDTH            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-19 13:46:52
                            
                                1691阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            源代码:	//14 LED控件	//14.1 创建标签	/*Create a style for the LED*/	static lv_st            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-19 13:50:25
                            
                                279阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            源代码	//15. 线控件	//15.1 设置线的点	static lv_point_t line_points[] = { { 0, 0 },{ 60,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-19 13:50:29
                            
                                169阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            //10. 图片控件	//10.1 创建一个控件对象	lv_obj_t * img1 = lv_img_create(lv_s            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-19 13:50:45
                            
                                475阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # LVGL 架构解析
LVGL(Light and Versatile Graphics Library)是一款开源的图形库,旨在支持嵌入式系统的界面开发。它具有轻量级、高效、可定制和跨平台等特点,适合用于 IoT 设备、嵌入式系统以及其他需要图形用户界面的场景。
## LVGL 的基本架构
LVGL 的设计理念是将图形界面分成多个模块,以便于开发者根据需求进行定制和扩展。其主要组成部分包            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-09-25 07:18:51
                            
                                344阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目前LVGL版本已经更新到8.3版本,FATFS也是在嵌入式领域常用的文件系统。网上许多在LVGL上移植FATFS的教程大都是基于LVGL7版本的,而且过程较为凌乱。本文旨在帮助大家了解在LVGL8上移植FATFS文件系统的过程。 两种库的适配很简单,说白了就是在一方的函数中调用另一方的函数。下面介绍如何将LVGL与FATFS的函数关联起来。 这里我认为大家已经下载了LVGL和FATFS的官方库,            
                
         
            
            
            
             TouchGFX使用教程(三)界面事件如意控件Container重载容器自定义控件图片等资源放置位置 界面事件之前和大家共享了一些基本的操作,这章会给大家共享下界面使用的一些小技巧及方法。 除去现成控件的事件外,不知道大家有没有考虑过其他一些界面的实现方式,例如,类似手机下滑菜单,或者上滑菜单,再比如一个动态背景。或者自己做的地图的量算尺子。 这些方法都涉及到界面的滑动事件或者界面的定时刷新事件            
                
         
            
            
            
            # LVGL架构简介
## 1. 什么是LVGL
LVGL(Light and Versatile Graphics Library)是一个开源的GUI库,适用于嵌入式系统和物联网设备。它提供了丰富的图形元素和交互功能,可用于开发各种用户界面应用程序。
LVGL具有轻量级、高效、易于使用和可扩展的特点,因此被广泛应用于各种设备,如智能手表、智能家居控制面板、工业控制器等。
## 2. LV            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-01-14 10:12:30
                            
                                988阅读