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 界面的设计,待界面设计成熟之后,再将代码移植到嵌入式开发平台,可加快整个工程的开发进度。如图 1 所示为 emWin 模拟器运行效果:
 
图 1
 
emWin 模拟器提供了全部的源码,用户可根据实际 LCD 的分辨率修改模拟器的屏幕分辨率。模拟器附带的 Demo 源码极具参考价值,几乎涵盖了 emWin 中所有的控件使用,用户通过学习这些例程,并参考官方的 emWin 手册,可快速入门 emWin 的开发。Demo 源码如图 2 所示:
 
图 2
 
三、emWin 开发利器之二“GUI builder”
 
GUIBuilder 是 emWin 附带的一款无需使用 C 语言编程即可创建对话框的工具,并提供了丰富的控件,用户只需在 GUIBuilder 中通过拖拽控件,摆放控件的位置和调整控件的大小,还可以在上下文菜单中设置各控件的属性,将设计的界面另存为 C 文件,可以直接拿到 emWin 工程中使用,生成的 C 代码中还自动添加了事件处理框架,用户只需关注事件的处理上。让用户从为设计一个界面而反复修改代码,烧录,运行,再修改的痛苦中解放出来。    
 
在 GUIBuilder 上经过控件的拖拽,调整,修改属性,轻松创建一个网络设置对话框界面,如图 3 所示。
 
图 3
 
将其生成的 C 代码移植到项目工程中,再进行一些细节修改和调整,并将控件的文本显示替换为中文显示,界面的最终效果如图 4 所示:
 
 
图 4
 
四、使用 M1052 核心板开发 emWin
 
M1052 核心板板载 16MB SDRAM,完全满足开发 emWin 高清图形应用的条件。M1052 配套的 AWorks SDK 软件包,已经为用户配置好 LCD 屏驱动,用户无需关心底层驱动的实现,可直接启动 emWin 应用程序的开发。并提供一款精简的桌面 UI 系统 Demo 程序,给用户一定的参考,使用户能够快速开发自己的桌面应用程序。Demo 酷炫主界面如图 5 所示:
 
图 5
 
桌面一共实现 9 个 App 应用,在主界面点击对应图标即可进入 App 界面。“文件浏览”
可对所有被挂载的储存设备文件进行浏览,可逐级进入和退出子目录。如图 6 所示。
 
图 6
 
“网络设置”可对系统的 IP 地址、网关、子网掩码进行设置和保存。如图 7 所示。
 
图 7
 
“任务管理”可对系统中各任务的优先级,堆栈信息,CPU 占用率数据进行预览。并以历史曲线记录 CPU 的占用率。如图 8、图 9 所示。
 
图 8
 
图 9
 
“系统信息”可对当前系统的版本和资源进行预览。如图 10 所示。
 
图 10
 
“外设控制”可以通过界面上按钮开启或关闭评估板上的蜂鸣器和 Led 灯。如图 11 所示。
 
图 11
 
“数据采集”对两路 AD 数据变化进行历史曲线显示。如图 12 所示。
 
图 12
 
“时钟”可对系统的当前日期和时间进行设置和保存。如图 13 所示。
 
图 13
 
“固件升级”可从存储设备中加载一个 bin 文件,对系统进行自升级。如图 14 所示。
 
图 14
 
M1052 跨界核心板,既具备 MPU 的强劲处理性能,又兼顾 MCU 微控制器的简单易用与实时性优势!预装 AWorks 实时操作系统,面向智能硬件与工业物联网方向应用设计。