第1章S T e m W i n介绍
本期教程开始带领大家了解一下STemWin的基本知识,其实确切的讲应该叫emWin基础知识,由于教程使用的开发板是ST的微控制器,所以就把名字统一命名成STemWin(为什么叫STemWin,在下面会有详细的讲解)。
1.1 STemWin,emWin,μCGUI之间的关系
1.2 SEGGER公司介绍
1.3 STemWin介绍
1.4 STM32F103和407跑STemWin性能测试
1.5 STemWin论坛
1.6 总结
1.1S T e m W i n,e m W i n,μC G U I之间的关系
这个放在最开头进行说明,因为很多的初学者比较的迷惑。
对于一些刚学GUI的用户来说,知道μCGUI的比较多,而不知道所谓的emWin或者STemWin。这个并不奇怪,主要是因为大部分人只知道SEGGER公司的做的JLINK,而不知道他们还有RTOS和相关的中间件(中间件的意思就是基于RTOS的文件系统,GUI,USB主机和设备协议栈等)。
1.1.1μCGUI在国内比较火的原因
μCGUI在国内前几年比较火的原因有三点:
●一个是μCOS-II在国内的推广,自从Micrum公司出的那本《嵌入式实时操作系统μCOS-II》发布之后,
国内关于μCOS-II的资料就是普天盖起,再加上各种培训机构和开发板的推广,μCOS-II就在国内火起来了。μCOS-II火的同时,它配套的中间件,特别是μCGUI就跟着在国内火了起来。
●前几年国内有一个μCGUI的论坛,这个论坛在国内的μCGUI方面应该算是做得最好的,特别是那个站
长在μCGUI方面的研究,这位站长对于μCGUI在国内的发展功不可没。
●还有一个原因就是μCGUI是带有源码的,很多时候可以通过修改部分的源码实现一些特殊的功能,现
在网上流传的μCGUI的源码已经不知道经过多少人的手被修改过,最原始的的代码已经在上面不到了。
1.1.2emWin和μCGUI的关系
首先要明白,这两个GUI是一个东西。最初这个GUI就是SEGGER公司的,然后以什么的方式授权给μCGUI就不清楚了。现在SEGGER公司是这个GUI的主要推动者,已经将其授权给了多个芯片生产厂家。
1.1.3STemWin和emWin的关系
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在需要浮点处理的地方专门做了优化。
1.版本和以前版本的不同
emWin发展到5.0版本以后已经产生了很大的更新,特别是底层驱动方面。版本向下完全的兼容低版本,当然包括μ以下的版本,也就说如果用户有在μ以下版本建立的工程,完全可以用在高版本上面(条件是没有修改过源码)。这里不建议初学者修改源代码,修改过后会破坏现有的机制。在以后的使用中会养成不好的习惯,只要某些功能无法实现就去修改源码,随着修改的增多会严重的破坏现有的机制。
<以后的版本只有库,没有源码。对于一些想研究源码的,可以看早期的版本,了解一下通讯机制。不过对于大多数从应用角度出发的,完全没有必要学习源码,源码内容太多。对于一些无法实现的功能,在上面得到了很大的改善,基本不需要修改源码。如果通过各种方法实在无法实现,完全可以使用emWin支持的用户控件设计方法做一个符合要求的。
公司介绍源码1.2S E G G E R公司介绍
SEGGER公司应该算是一家老牌的调试工具以及RTOS及中间件的生产商。SEGGER公司成立于1997年,到现在的2014年,有差不多17年的历史了,这家公司主要有两个office,一个是在德国的Hilden,另个在美国的Massachusetts。还有一个他们工作地方的照片,看着很不错,我这里也把这个照片贴上。
SEGGER公司的产品主要有三个方向,分别如下:
1.2.1RTOS及其中间件
SEGGER公司的RTOS是embOS,在国内知道的人可能比较少。SEGGER做的embOS和中间件都是以库的形式供用户下载的,除非购买了使用权。产品主要如下:
●embOS (Real Time Operating System)
●embOS/IP (TCP/IP Stack)
●emWin (Graphic Software & GUI)
●emFile (File System)
●emUSB Device (USB Device Stack)
●emUSB Host (USB Host Stack)
●emModbus(Modbus Stack)
emModbus是今年(2014年)刚刚发布的。
1.2.2J-Link 调试工具
J-Link应该大家都不陌生,它是有SEGGER公司设计的。具体的J-Link产品有好几款,具体如下: ●J - Link PRO
●J - Link ULTRA+
●J - Link PLUS
●J - Link
●J - Trace Cortex-M3
●J - Trace ARM
1.2.3Production Programmers
这个工具在国内用的比较少,主要如下几款产品:
●Flasher ARM
●Flasher RX
●Flasher STM8
●Flasher ST7
●Flasher 5
●Flasher 5 PRO
上面说的这三项应该算是SEGGER公司的主营产品,更详细的可以上面他们的www.segger 进行了解。
1.3S T e m W i n介绍
<版本设计出来的界面还是非常漂亮的,先贴几个相关的设计图片,让大家有一些感官的认识。
1.3.1STemWin设计界面
●第一幅是官方设计的图片
整体来说,这些图片还是非常漂亮的,不过这些界面不是用专门的控件显示出来的,使用的2D绘图配合内存设备管理实现的。
下面的是在STM32-V5开发板上面实现的界面
总的来说这些界面还是非常漂亮的,关于STM32-V5开发板更详细的资料可以看如下两个地址: bbs.armfly/read.php?tid=1285
bbs.armfly/read.php?tid=1139
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论