SAM

GUI 设计原来可以这么简单!

0
阅读(122) 评论(0)

本文导读


i.MX RT1052具有增强型显示接口(eLCDIF),支持8/16/18/24位的数据总线模式。M1052核心板最高可支持1366x768的高清图像显示,芯片内置音频接口,搭载免费的emWin图形库可广泛应用多媒体设计。


一、emWin介绍


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


使用emWin开发界面是个细致活,设计一个界面,往往需要对控件进行多次调整才能到达理想效果,这里向大家分享两款设计emWin界面的利器:PC模拟器和GUI Builder。


二、emWin开发利器之一: 模拟器


为解决前期开发没有硬件的烦恼,Segger提供了一个基于PC的emWin模拟器,用户可在模拟器上进行GUI界面的设计,待界面设计成熟之后,再将代码移植到嵌入式开发平台,可加快整个工程的开发进度。



emWin模拟器提供了全部的源码,用户可根据实际LCD的分辨率修改模拟器的屏幕分辨率。模拟器附带的Demo源码极具参考价值,几乎涵盖了emWin中所有的控件使用,用户通过学习这些例程,并参考官方的emWin手册,可快速入门emWin的开发。更多学习交流可以加Q3472880374

三、emWin开发利器之二: GUI builder

GUIBuilder是emWin附带的一款无需使用C语言编程即可创建对话框的工具,并提供了丰富的控件,用户只需在GUIBuilder中通过拖拽控件,摆放控件的位置和调整控件的大小,还可以在上下文菜单中设置各控件的属性,将设计的界面另存为C文件,可以直接拿到emWin工程中使用,生成的C代码中还自动添加了事件处理框架,用户只需关注事件的处理上。让用户从为设计一个界面而反复修改代码,烧录,运行,再修改的痛苦中解放出来。


在GUIBuilder上经过控件的拖拽,调整,修改属性,轻松创建一个网络设置对话框界面。


将其生成的C代码移植到项目工程中,再进行一些细节修改和调整,并将控件的文本显示替换为中文显示,界面的最终效果如图4所示。


四、使用M1052核心板开发emWin


M1052核心板板载16MB SDRAM,完全满足开发emWin高清图形应用的条件。M1052配套的AWorks SDK软件包,已经为用户配置好LCD屏驱动,用户无需关心底层驱动的实现,可直接启动emWin应用程序的开发。并提供一款精简的桌面UI系统Demo程序,给用户一定的参考,使用户能够快速开发自己的桌面应用程序。Demo酷炫主界面如图5所示。



桌面一共实现9个App应用,在主界面点击对应图标即可进入APP界面。“文件浏览”可对所有被挂载的储存设备文件进行浏览,可逐级进入和退出子目录。如图6所示。


“网络设置”可对系统的IP地址、网关、子网掩码进行设置和保存。



“任务管理”可对系统中各任务的优先级,堆栈信息,CPU占用率数据进行预览。并以历史曲线记录CPU的占用率。


“系统信息”可对当前系统的版本和资源进行预览。


“外设控制”可以通过界面上按钮开启或关闭评估板上的蜂鸣器和Led灯。

 



“数据采集”对两路AD数据变化进行历史曲线显示。



“时钟”可对系统的当前日期和时间进行设置和保存。




“固件升级”可从存储设备中加载一个bin文件,对系统进行自升级。




M1052跨界核心板,既具备MPU的强劲处理性能,又兼顾MCU微控制器的简单易用与实时性优势!预装AWorks实时操作系统,面向智能硬件与工业物联网方向应用设计。