首页 > 其他分享 >LVGL入门了解

LVGL入门了解

时间:2024-08-07 17:05:41浏览次数:15  
标签:lvgl 入门 SRAM GUI 了解 图形 LVGL 移植

GUI简介

GUI:图形用户界面,是指采用图形方式显示计算机[泛称,指人机交互的机器]操作用户界面。

GUI库:图形用户界面库,调用GUI库的函数即可快速绘制所需的用户界面。

GUI库优势: 开发难度低(有可以设计GUI的软件,大大降低门槛)

可移植性高(只要硬件达到要求,适配也做好,就可以直接使用GUI库)

风格统一、协调

嵌入式系统中常用的GUI库:emWin

                                              LVGL(主流)

                                              TouchGFX(可以直接帮我们生成图形界面,不需要手敲代码)

                                               QT(通过图形界面生成ui,在市场的占有率非常高)

LVGL简介

LVGL(Light and Versatile Graphics Library)是一个轻量、多功能的开源图形库。

特点: 支持多种输入设备(触摸屏、键盘、鼠标、编码器)

            部件、功能丰富

            具备高级图形特征

            支持多种样式属性

            C语言编写

LVGL移植要求

V8版本的lvgl移植要求:

  16/32/64位微控制器或处理器

  主控频率:>16MHz

  Flash/ROM:>64kb,建议180kb以上

   RAM:>8kb,建议24kb以上(ram的大小和优化lvgl的效果有关。)

  图形缓冲区:>水平分辨率像素(还要看色彩是多少byte),建议大于1/10屏幕总像素

  C99或更新版本的编译器

优化lvgl运行效果的方法:

  提高芯片主频(芯片主频越高,外设频率也越高,FMCS接口的频率也会越快)

  增大SRAM容量(图形缓冲区是开在SRAM上的,SRAM的容量越大,那么图形刷新的区域越大,显示效果越流畅越好),提高读写速度

  增大图形缓冲区,使用双缓冲

  减小需要刷新的总像素

  提高图像数据的传输速度(DMA2D?)

关键点:缩短图像刷新所需时间

LVGL资料获取:

GitHub链接:https://github.com/lvgl/lvgl

可以获取源码

LVGL库文件介绍

V8.2的库文件介绍:

移植LVGL需要保留的文件:example文件夹下的porting文件夹、src文件夹、lv_conf_template.h、lvgl.h

学习LVGL之前需要掌握的知识

知识点

要求

定时器

初始化、中断

屏幕

显示、触摸、DMA2D

SRAM、内存管理

初始化、内存分配

文件系统、SD卡

初始化、读写

系统(FREERTOS)

移植、创建任务、获取心跳

C 语言

指针、结构体

 

LVGL移植

LVGL移植关键点

显示、输入设备、系统、内存(内部SRAM或者外部SRAM、内存管理[算法])

显示是必须的,其他三个功能按需选择

LVGL移植整体流程

1、  确定输入输出设备

2、  确定所需的可选功能

3、  准备LVGL库、例程

4、  添加LVGL库到mdk工程

5、  配置输入输出设备

6、  为LVGL提供时基、测试代码是否移植成功

标签:lvgl,入门,SRAM,GUI,了解,图形,LVGL,移植
From: https://www.cnblogs.com/Kim-blog/p/18347430

相关文章

  • GitHub爆赞的Web安全防护指南,网络安全零基础入门必备教程!
    web安全现在占据了企业信息安全的很大一部分比重,每个企业都有对外发布的很多业务系统,如何保障web业务安全也是一项信息安全的重要内容。然而Web安全是一个实践性很强的领域,需要通过大量的练习来建立对漏洞的直观认识,并积累解决问题的经验。Web安全与防护技术是当前安全界关......
  • 网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇就够了!
    想要成为黑客/红客,却苦于没有方向,不知道从何学起,下面这篇网络安全入门教程可以帮你实现自己的黑客梦想,如果想学,可以继续看下去,文章有点长,希望你可以耐心看到最后网络安全入门路线Web安全相关概念(2周)熟悉基本概念(SQL注入、上传、XSS、、CSRF、一句话木马等)。通过关键......
  • 今天了解剪辑
    剪辑是一种影视制作和视频创作中的重要环节。从技术层面来说,剪辑是将拍摄或录制的大量原始视频素材,通过选择、裁剪、拼接、组合等操作,按照一定的逻辑顺序、节奏和叙事结构,形成一个连贯、有意义、富有表现力的完整视频作品的过程。在艺术层面,剪辑不仅仅是简单的素材拼接,更是通......
  • R语言系列10——R语言在文本分析中的应用:从入门到实战
    目录引言1.文本数据的预处理1.1导入文本数据1.2清洗与整理1.2.1去除标点符号1.2.2去除停用词1.2.3大小写转换1.2.4去除空格1.2.5去除数字1.2.6去除特殊字符1.2.7拼写校正1.2.8词干提取和词形还原1.2.9特殊字符处理1.2.10处理多语言文本1.2.11文本标准化1.2......
  • 【NOI】C++算法设计入门之穷举
    文章目录前言一、概念1.导入2.概念二、例题讲解1.简单穷举问题:1015.鸡兔同笼问题问题:1351.买公园门票问题:1016.买小猫小狗问题:1220.买糕点问题:1396.开学大采购?2.嵌套穷举问题:1022.百钱百鸡问题问题:1024.购买文具问题:1249.搬砖问题问题:1250.马克思手稿的问题......
  • 大学新生,如何轻松入门编程成为雷布斯
    编程小白如何成为大神?大学新生的最佳入门攻略编程已成为当代大学生的必备技能,但面对众多编程语言和学习资源,新生们常常感到迷茫。如何选择适合自己的编程语言?如何制定有效的学习计划?如何避免常见的学习陷阱?让我们一起探讨大学新生入门编程的最佳路径,为你的大学生活和未来职......
  • LLM大模型实战:从零到精通——大模型应用开发极简入门
    大家好,今天给大家推荐一本大模型应用开发入门书籍《大模型应用开发极简入门》,本书对很多AI概念做了讲解和说明!朋友们如果有需要《大模型应用开发极简入门》,扫码获取~本书主要讲解了以下几个方面的大模型技术:GPT-4和ChatGPT的工作原理:书中详细介绍了这两个先进的语言......
  • Vue2 快速入门
    文章目录一、简介二、引入方式三、Vue实例四、插值表达式五、定义方法六、计算属性七、监听器八、指令九、事件修饰符一、简介官方网址:Vue2教学网站Vue是一个用于构建用户界面的渐进式JavaScript框架,在前端开发中被广泛应用,许多知名的网站和应用都采用了Vue......
  • 大数据超全面入门干货知识,看这一篇就够了!
    随着科技的飞速发展和互联网的普及,大数据已成为21世纪最炙手可热的话题之一。它像一面神秘的面纱,覆盖着现实世界,隐藏着无穷无尽的可能性。今天将带领大家一起揭开大数据这个未知世界的神秘面纱,带你了解大数据的概念、应用以及大数据相关组件。一、什么是大数据大数据是指规模巨......
  • JMeter 性能测试工具入门与实践
    简介ApacheJMeter是一款流行的开源性能测试工具,广泛用于测试Web应用和各种服务的性能。它支持多种协议和技术,如HTTP,HTTPS,SOAP,REST,JMS等。JMeter不仅可以用于性能测试,还可以用于负载测试、压力测试和功能测试。安装与配置安装JMeter访问ApacheJMeter的官方网......