emWin 介绍_emwin教程

emWin 介绍_emwin教程一、emWin介绍emWin是Segger公司针对嵌入式平台开发的稳定、高效的图形软件库,适合用于任何图形LCD的操作应用,并可输出高质量的无锯齿的文字和图形,通过调用emWin提供的函数接口,开发嵌入式图形界面应用变得简单而快捷。二、emwWn、ucGUI、STemWin三者之间的关系1.三者都是Segger公司的产品。2.emwWn是Segger公司图形系统的正式统称。3.uc…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、emWin介绍
emWin是Segger公司针对嵌入式平台开发的稳定、高效的图形软件库,适合用于任何图形LCD的操作应用,并可输出高质量的无锯齿的文字和图形,通过调用emWin提供的函数接口,开发嵌入式图形界面应用变得简单而快捷。

二、emwWn、ucGUI、STemWin三者之间的关系
1. 三者都是Segger 公司的产品。
2.emwWn是Segger 公司图形系统的正式统称。
3.ucGui 是Segger公司为 Micrium 公司(uCOS-II 、uCOS-III)量身定制的 emWin
4.STemWin是Segger 公司为 ST公司量身定制的emWin,适合stm32使用
(像ARM Cortex-M 系列授权于多个公司,ST公司的产品我们一般叫做stm32类似。其实都是同一个东西,授权不同厂家而已)

三、关于STemWin
STemWin 是 SEGGER 公司授权给 ST(意法半导体)的。使用 ST 芯片的用户可以免费使用STemWin。其实不光授权给了 ST,还有 NXP,Energy Micro 等。凡是使用这些芯片厂商生产的处理器都可以免费的使用 emWin。但是出于一定的保护措施,使用 STemWin 的库是不能用在其它芯片厂商的处理器上面的。因为在工程初始化 STemWin 前要使能 CRC 校验。如果没有使能,STemWin 是启动不起来的。 KEIL MDK的安装目录里面也带有 emWin 软件包,这个软件包也不是可以直接使用的,用户需要给 KEIL MDK 注册RL-ARM 才可以使用。这里 STemWin 还针对 ST 的微控制器做了专门的优化,比如在使用 ST 的 F4XX 微控制器带 FPU 的芯片时,STemWin 在需要浮点处理的地方专门做了优化,效果图。
在这里插入图片描述

四、emWin两大开发利器: 模拟器和 GUI builder
模拟器:
为解决前期开发没有硬件的烦恼,Segger提供了一个基于PC的emWin模拟器,用户可在模拟器上进行GUI界面的设计,待界面设计成熟之后,再将代码移植到嵌入式开发平台,可加快整个工程的开发进度。如图1所示为emWin模拟器运行效果。
在这里插入图片描述
emWin模拟器提供了全部的源码,用户可根据实际LCD的分辨率修改模拟器的屏幕分辨率。模拟器附带的Demo源码极具参考价值,几乎涵盖了emWin中所有的控件使用,用户通过学习这些例程,并参考官方的emWin手册,可快速入门emWin的开发。Demo源码。
在这里插入图片描述
GUIBuilder是emWin附带的一款无需使用C语言编程即可创建对话框的工具,并提供了丰富的控件,用户只需在GUIBuilder中通过拖拽控件,摆放控件的位置和调整控件的大小,还可以在上下文菜单中设置各控件的属性,将设计的界面另存为C文件,可以直接拿到emWin工程中使用,生成的C代码中还自动添加了事件处理框架,用户只需关注事件的处理上。让用户从为设计一个界面而反复修改代码,烧录,运行,再修改的痛苦中解放出来。
在GUIBuilder上经过控件的拖拽,调整,修改属性,轻松创建一个网络设置对话框界面,如图所示。
在这里插入图片描述

将其生成的C代码移植到项目工程中,再进行一些细节修改和调整,并将控件的文本显示替换为中文显示,界面的最终效果如图所示。
在这里插入图片描述
参考链接:http://www.elecfans.com/d/694350.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181975.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • maven的filters目录详解

    maven的filters目录详解maven的资源过滤maven的过滤资源需要结合maven的2个定义才能实现,分别是:profileresources下面分开来做介绍。profileprofile可以让我们定义一系列的配置信息,然后指定其激活条件。这样我们就可以定义多个profile,然后每个profile对应不同的激活条件和配置信息,从而达到不同环境使用不同配置信息的效果。需要掌握profile的定义以及激活条件。后面结合

    2022年5月22日
    42
  • 逛数学研发论坛 – Powered by Discuz! http://bbs.emath.ac.cn/forum.php发现的小游戏,宽容和信任

    逛数学研发论坛 – Powered by Discuz! http://bbs.emath.ac.cn/forum.php发现的小游戏,宽容和信任信任的进化https://www.sekai.co/trust/

    2022年9月20日
    2
  • siamfc运行_sta系统

    siamfc运行_sta系统修改siamfc文件夹下的Load.py文件importsyssys.path.append(‘/home/nanorobot/Documents/siamfc/siamfc’)sys.path.append(‘/home/nanorobot/Documents/siamfc’)fromsiamfcimportTrackerSiamFC,ops上面是把需要用到的自定义的模块路径引入进来,以防后面找不到模块,路径根据你自己的文件位置改。下面是修改主函数:if__name__==

    2022年10月1日
    3
  • 十大经典排序算法-快速排序算法详解

    十大经典排序算法-快速排序算法详解一、什么是快速排序1.概念快速排序(QuickSort)是从冒泡排序算法演变而来的,实际上是在冒泡排序基础上的递归分治法。快速排序在每一轮挑选一个基准元素,并让其他比它大的元素移动到数列一边,比它小的元素移动到数列的另一边,从而把数列拆解成了两个部分2.算法原理这是一个无序数列:4、5、8、1、7、2、6、3,我们要将它按从小到大排序。按照快速排序的思想,我们先选择一个基准元素,进行排序我们选取4为我们的基准元素,并设置基准元素的位置为index,设置两个指针left和right,分别指向最左

    2022年7月26日
    8
  • Kali Linux渗透测试技术详解_渗透测试入门

    Kali Linux渗透测试技术详解_渗透测试入门开始研究web渗透测试,本文是第一篇:KaliLinux工具安装,后面会更新实战类的一系列文章,感兴趣的童鞋可以关注我,一起学习吧!

    2022年8月12日
    8
  • PHP实现二叉树的深度优先遍历(前序、中序、后序)和广度优先遍历(层次)…

    PHP实现二叉树的深度优先遍历(前序、中序、后序)和广度优先遍历(层次)…

    2022年2月11日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号