LVGL是一个免费的开源嵌入式图形库,它提供创建嵌入式GUI所需的功能,具有易于使用的图形元素、精美的视觉效果和低内存占用。完整的图形框架包括供您在创建GUI时所用的各种小部件,并支持更高级的功能,例如动画和抗锯齿。

一、工具:

1.PC模拟器:SDL2

SDL(Simple DirectMedia Layer)是一套开源的跨平台多媒体开发库,使用 C 语言写成。它提供了绘制图像、播放声音、获取键盘输入等相关的 API,大大降低多媒体应用开发难度的同时,也让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、Mac OS X等)的应用软件。

SDL2可以在PC上模拟UI效果,避免反复下载到MCU中验证。

2.编译工具链(MinGW + CMake)

MinGW相当于Linux的GCC,用于在Windows上编译C代码,这里我们用它来编译lvgl

3.一个IDE,SDL可以配合以下IDE使用

但是,下载这么多工具属实麻烦,NXP公司开发的GUI Guider软件,集成了SDL模拟器、工具链,并且可以通过拖拽UI,模拟验证,然后生成C代码,再移植到MCU中运行,和嵌入式Qt开发如出一辙。

二、NXP GUI Guider使用

1.创建工程

①选择v8.2.0

②选择Simulator



③选择模板,这里我们选择一个官方音乐播放器的例程
大小设置为800*480


④然后,我们就有了一个工程,中间是UI设计界面,左边是控件区,右边是控件属性


很好的是,在右上角,我们还可以把它切换成中文显示

2.生成代码

点击此按钮生成代码

遇到点问题,日志是一堆乱码,这是没有java环境的原因

【点击此处可直接下载】https://www.oracle.com/java/technologies/downloads/

【别忘记】 JAVA环境变量设置!!!

继续生成代码成功

切换到代码浏览页面,可以看到生成了Generate文件夹下的C代码

点击运行模拟器

OK

【嵌入式UI框架:LVGL】使用NXP GUI Guider 拖拽式设计LVGL相关推荐

  1. NXP GUI Guider的使用

    NXP GUI Guider是NXP官方推出的lvgl拖拽式GUI编程辅助工具 下载地址:https://www.nxp.com/design/software/development-softwar ...

  2. 使用WebGL去实现一个拖拽式UI代码生成App

    前言 ​ UI(User Interface),即用户界面,是软件和用户之间进行交互和信息交换的媒介,实现信息的内部形式与人类可接受形式间的转换.UI开发一般需要经过UI设计.UI实现两个过程.UI设 ...

  3. 新一代嵌入式UI框架 HaaS UI 使用JS在嵌入式开发炫酷前端

    HaaS UI 是一款面向AIoT 领域的渐进式JS应用开发框架,以移动开发理念有效降低开发者研发AIoT带屏应用难度. 理念 移动开发模式,全面拥抱JavaScritp开源生态,且系统服务通过统一的 ...

  4. jquery.ui.draggable中文文档jquery 自由拖拽类~study~

    为什么80%的码农都做不了架构师?>>>    JQuery UI Draggable插件用来使选中的元素可以通过鼠标拖动. Draggable的元素受影响css: ui-dragg ...

  5. Android UI进阶之旅9 Material Design之沉浸式设计

    ###沉浸式设计基本概念 官方的沉浸式Translucent定义:就是让整个APP沉浸(充斥了整个屏幕)在屏幕里面,没有显示状态栏,甚至没有显示底部导航栏. 平时大家所讨论的沉浸式:比如QQ的顶部To ...

  6. 【LVGL】学习笔记--(2)GUI Guider的使用

    基于上一篇[LVGL]学习笔记--(1)Keil中嵌入式系统移植LVGL,已经成功地移植了LVGL到我们的嵌入式板子上,并配合磁控旋钮编码器(或者诸如触摸屏.按键.键盘等其他输入设备均可),实现了简单 ...

  7. 基于Boostrap的H+ 后台主题UI框架(开源)

    目录 H+ 后台主题 UI 框架 H+的布局及几种常用UI组件 H+ 后台主题 UI 框架 H+是一款常用后台主题UI框架.首发于 2013 年,由 Zihan's Blog 开发并维护,属于国内早期 ...

  8. Materialize - 一个优秀的前端 UI 框架

    一.Materialize 的特点 基于 Material Design 设计语言,简洁美观,符合时代潮流. 包含丰富的 UI 组件和样式,包括按钮.表单.卡片.导航栏等等,可以满足大部分前端开发需要 ...

  9. 【Vue3 造轮子项目 ------ kaite-ui】基于vue3.0 + vite + TypeScript 实现一个UI框架 - kaiteUI

    基于vue3.0 + vite + TypeScript 实现一个UI框架 - kaiteUI 前言 前段时间笔者一直忙于学习Vue3方面新知识,比如如何从vue2.0版本过渡到vue3.0,如何理解 ...

最新文章

  1. 服务器自动post,jquery ajax $.post自动变GET的解决方式(for CI)
  2. 交换友链的几个技巧!
  3. 用shell脚本实现定时备份数据库
  4. 通过Nginx简单安装
  5. Js 怎么遍历json对象所有key及根据动态key获取值(根据key值获取相应的value值)...
  6. Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same(解决)
  7. python对数据进行统计分析_数据分析员用python做数据分析是怎么回事,需要用到python中的那些内容,具体是怎么操作的?...
  8. 服务器故障内存位置怎么确定,服务器故障内存位置怎么确定
  9. 联想服务器改win7系统教程,联想台式机10代cpu改win7系统详细教程
  10. js基础-点击切换div背景颜色
  11. oracle编程弹框函数,取窗口句柄的api函数
  12. 用three.js渲染上海外滩模型
  13. Linux proc目录详解
  14. 十、cocos2d-x 字体描边和制作阴影
  15. 论微信朋友圈,巨头的解决之道
  16. ABAP 金额内外部转换函数
  17. 复盘苏宁收购红孩子案例——思考VC与垂直电商的未来
  18. 推理机Jess,Racer,Jena
  19. 【杂记】Directx11 Font
  20. 如何自己开发App?如何快速生成App?

热门文章

  1. php unset()详解
  2. 猪肉价格跌至去年最低水平 区块链养猪成热点
  3. 通过日期计算今天是今年的第几天
  4. 书稿《C++释难解惑》(C++130个问题)已上传到CSDN,欢迎下载
  5. 数据分析之numpy实例
  6. 十行代码,用Python做一个迷你版的美图秀秀
  7. 针对借“冠状病毒硬币”非法ICO的区块链疫情捐款诈骗分析 -星辰安全实验室
  8. java实现将指定字符串替换为制定长度的空格
  9. cucumber+testng
  10. 手机维修培训班无门槛 深圳红警维快维 可考取手机维修工程师证书