LVGL 是现在非常流行的嵌入式 GUI 图形库,它一方面是纯 C 语言实现,易于移植,性能较好,同时支持的空间和内容较为丰富,得到了广泛的应用;LVGL 不但支持了显示(display),还同时支持了 input 设备,包括了触摸,键盘等;LVGL 支持的特性功能强大的构建块,例如按钮,图表,列表,滑块,图像等。带有动画,抗锯齿,不透明,平滑滚动的高级图形各种输入设备,例如触摸板,鼠标,键盘,编
2.移植准备首先需要一个可以正常使用的工程,有LCD驱动,触摸驱动。假设此工程的文件夹名为lvgldemo。本文使用的IDE为KEIL MDK。不同的版本可能会有不同的移植操作,不过基本相差不大,最重要的是要参考源码作者提供的移植例程与说明。3.移植1.新建一个文件夹命名为lvgl,解压https://github.com/littlevgl/lvgl下载的压缩包至lvgl文件夹,然后将此文件夹整
有小伙伴问:昨天原子哥发布会上烧录器的GUI是哪一款?当时下午了可能相对有点吵,原子哥语速有点快,很多人都没听清楚,那就是LittlevGL。一、LittlevGL介绍网址:https://littlevgl.comLittlevGL是一个免费的开放源代码图形库,它提供创建嵌入式GUI所需的很多内容,它具有易于使用的图形元素,精美的视觉效果和低内存占用。LittlevGL用C语言编写,以实现最
LVGL8.1 Hi3536C平台使用LVGL8.1 Hi3536C平台使用为什么使用LVGLLVGL相关网站官网Github代码使用版本下载相应的源码LVGLLV_DRIVERSLV_PORTlv_demos编译LVGL在海思Hi3536c中运行LVGL添加鼠标支持 LVGL8.1 Hi3536C平台使用为什么使用LVGL在嵌入式平台上当前还是挺多UI的库可选择,有开源的、闭源的,收费的完全免
预处理指令预处理指令简介C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源程序(这个过程称为编译预处理),之后再进行通常的编译。为了区分预处理指令和一般的C语句,所有预处理指令都以符号”#”开头,并且结尾不用分号。预处理指令可以出现在程序的任何位置,它的作用范围是从它出现的位置到文件尾。习惯上我们尽可能将预处理指令写在源程序
前言 早些年的单片机开发中,很多都是使用文字菜单界面,这种界面让人感觉非常的朴实无华,内容言简意赅,如果使用图形库进行开发,你的产品一下子就让别人觉得有点高级,更容易去接收它。对于现在来说,很多的嵌入式图形库都可以做出绚丽的界面,占用RAM小,网上资料也多,学习难度不大。下面仅介绍几款常用的图形库。1. LVGLLVGL官方链接LV
转载
2024-03-15 10:53:35
1996阅读
提高服务器响应能力的方法: scale on 在原有服务器的基础上进行升级或者直接换一台新的性能更高的服务器。
scale out 横向扩展,将多台服务器并发向外响应客户端的请求。优点:成本低,扩展架构比较简单。
集群(Cluster),通俗地讲就是按照某种组织方式将几台电脑组织起来完成某种特定任务
文章目录GoLang之GMP与GM模型1.前言2.GMP模型3.GM模型 GoLang之GMP与GM模型1.前言什么才是一个好的调度器? 能在适当的时机将合适的协程分配到合适的位置,保证公平和效率。 Go采用了GMP模型(对两级线程模型的改进实现),使它能够更加灵活地进行线程之间的调度。2.GMP模型GMP是Go运行时调度层面的实现,包含4个重要结构,分别是G、M、P、SchedG(Gorout
转载
2024-03-13 16:29:01
118阅读
一 LVGL简介最近emwin用的比较烦躁,同时被LVGL酷炫的界面吸引到了,所以准备换用LVGL试试水。LVGL(轻量级和通用图形库)是一个免费和开源的图形库,它提供了创建嵌入式GUI所需的一切,具有易于使用的图形元素,美丽的视觉效果和低内存占用。【1】主要特性丰富且强大的模块化图形组件:按钮 (buttons)、图表 (charts)、列表 (lists)、滑动条 (slider
littleVGL的介绍 littleVGL可以说是这2年才刚开始流行的一个小型开源嵌入式GUI库,具有界面精美,消耗资源小,可移植度高,响应式布局等特点,全库采用纯C语言开发。笔者打算学习他的原因可以用一个字概括:帅。 笔者曾用EMWIN图形界面做项目,由于没有太多时间耗费在GUI界面的制作上,最后的作品界面只能算是凑合,科技感较为欠缺,简言之就是B格不够。看到littleVGL的官方效果
1.volatilevolatile主要是用来在多线程中同步变量。 在一般情况下,为了提升性能,每个线程在运行时都会将主内存中的变量保存一份在自己的内存中作为变量副本,但是这样就很容易出现多个线程中保存的副本变量不一致,或与主内存的中的变量值不一致的情况。 而当一个变量被volatile修饰后,该变量就不能被缓存到线程的内存中,它会告诉编译器不要进行任何移出读取和写入操作的优化,换句话说就是不
LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。前面谈到,LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。物理卷(physical volume)物理卷就是指硬盘分区或从逻辑
LVGL的使用:运行LVGL的PC模拟器例程 LVGL的使用:运行LVGL的PC模拟器例程写在前面安装JRE(Java Runtime Environment)或JDK(Java SE Development Kit)安装MinGW安装Eclipse CDT 即eclipse for c/c++安装SDL2下载lv_sim_eclipse_sdl例程目录结构添加依赖文件添加例程到Eclipse C
文章目录前言1.1 LVGL简介1.2 LVGL移植要求1.3 LVGL源码下载与介绍 前言在实际应用中,我们时常需要制作 UI 界面来实现人机交互,简单的 UI 可以直接编写代码,但对于那些复杂的交互界面,自己编写 UI 界面可能就力不从心了。因此可使用第三方的 GUI库来设计 UI界面,例如 LVGL、emWin、QT等图形用户库,它们都可以设计漂亮的 UI界面。本章主要是认识和了解LVGL
提示:本博客作为学习笔记,有错误的地方希望指正 文章目录一、前言二、样式Pad简介2.1顶部边距 pad_top2.2底部边距 pad_bottom2.3左边距边距 pad_left2.4右边距 pad_right2.5行边距 pad_row2.6列边距 pad_column三、Style Pad API四、示例五、仿真结果 一、前言 最近开始学习LVGL,之前学习使用过的GUI有Touchgf
目录一、前言二、实现原理2.1 各个screen的定义及初始化2.2 各个screen内的内容绘制2.3 页面切换的events_handler三、代码实现3.1 PageManage库3.2 Page_mainMenu库(界面)3.3 Page_wifi库(界面)参考文献一、前言 利用lvgl
准备条件:硬件环境:STM32F429I-DISCOVERY软件环境:Keil MDK v5.26嵌入式RTOS:Keil RTX5说明:假设已经写好了裸机的LCD驱动程序且能正常显示信息。预备知识——LCD知识补充LCD常见的接口LCD的接口有多种,分类很细。主要看LCD的驱动方式和控制方式,目前手机上的彩色LCD的连接方式一般有这么几种:MCU模式,RGB模式,SPI模式,VSYNC模式,MD
一、emWin介绍 emWin是Segger公司针对嵌入式平台开发的稳定、高效的图形软件库,适合用于任何图形LCD的操作应用,并可输出高质量的无锯齿的文字和图形,通过调用emWin提供的函数接口,开发嵌入式图形界面应用变得简单而快捷。二、emwWn、ucGUI、STemWin三者之间的关系 1. 三者都是Segger 公司的产品。 2.emwWn是Segger 公司图形系统的正式统称。 3.ucG
背景介绍最近接触到了一个开源的显示框架lvgl,在跑起了demo的时刻,发现这确实是个酷酷的东西。LVGL的作者是来自匈牙利的Gabor Kiss-Vamosikisvegabor,LVGL用C语言编写,以实现最大的兼容性(与C ++兼容),模拟器可在没有嵌入式硬件的PC上启动嵌入式GUI设计,同时LVGL作为一个图形库,它自带着接近三十多种小工具可以供开发者使用。这些强大的构建块按钮搭配上带有非
1、lvgl简介lvgl是一款全部用c语言实现的ui图形库,对硬件的要求比较低,可以较为流畅的运行在单片机上。并且完全开源,对按钮,触摸,编码器旋钮等支持的非常到位。且开发的界面较为美观,符合时下主流的审美。目前最新版本已经更新到了8.3版本,官网地址为https://lvgl.io/。本次移植使用的是8.1版本。下载链接为https://github.com/lvgl/lvgl/releases