- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
emWin522(uCGUI)图形用户接口移植详细实例_STM32_2013_12_30
emWin 5.22 (uCGUI) 图形用户接口移植实例——STM32
作者:Ach
日期:2013年 12月 29日
联系方式:ox000008@163.com
1. 概要
移植图形用户接口的好处是不言而喻的。本文图文并茂地介绍了一个 emWin 5.22(uCGUI)的
移植实例。文章具体分为 emWin简介,硬件平台简介,开发环境及项目简介,移植过程以及总结几
个部分。
2. emWin简介
emWin 是一种高效的而图形用户界面,是我们能够摆脱处理器和显示控制器而更专注于 GUI 的
设计。这里借用 STemWin的一幅图来说明 emWin的作用和结构。它通过 LCD及 GUI的配置来驱动
底层硬件,而应用程序又是通过调用 emWin来实现各种 GUI。5.22版的 emWin带有许多常用的显示
控制器的驱动(在参考手册 Display Driver 一章中有详细介绍),因此为我们移植带来了诸多方便。
emWin的更详细的内容可参照它的参考手册。
图 1. emWin在项目中的结构
3. 硬件平台简介
笔者使用的是一块以 STM32F103VET6为核心的 ARM开发板,没有外部的 SRAM及 Flash。显示
屏为 2.8” 320*240的彩色液晶屏,屏的驱动芯片为 ILI9341(emWin 5.22带有它的驱动)。屏与 CPU
的连接方式为该 ARM核心所特有的 FSMC_SRAM方式,访问 LCD内容时操作就如同读写 SRAM一样
方便。
如果你想使用其它硬件平台来移植 emWin,本文亦有一定的参考价值。希望本文能助你成功移
植 emWin。
图 2. 硬件平台
4. 开发环境简介
笔者所使用的开发软件为MDK-ARM 4.70。项目模板使用的是 STemWin库中的(可从 ST官方下
载)。
图 3. 项目截图
如图,项目下面有 3个文件夹,其中 Appli存放的是应用层的程序,第二个文件夹就如文件名,
存放了 emWin5.22所有部件,第三个文件夹存放了一些 STM32及其它的库。具体见附件。
5. 移植过程
有了 MDK-ARM 以及 STemWin 库,整个移植过程应该比较简单。STemWin 中有 4 个文件夹,第
一个可以不用看了,Libraries中包含所有需要的库(其中包含 emWin5.22),Project中存放工程文件,
Utilities中是一些应用文件。为了保持代码及工程结构的格式统一,我们尽量套用原有的格式。下面
开始一步步的移植工作。
5.1 项目配置
打开 Project文件夹,看到众多 STM32的开发板文件夹。如果你有相应的板子,就不用修改直接
用。我使用的是 STM32F103核心的板子,因此我选了 STM3210E-EVAL为模板,取名 TEST(自取)。
打开该文件夹,里面有 2 个文件夹,分别为 RTOS 和 Standalone,RTOS 是带操作系统的。我们打开
Standalone,其中有 6个文件夹,分别为 Config、Demo、EWARM、MDK-ARM、TrueSTUDIO及 User,
具体的不一一介绍了。打开MDK-ARM,我们要的工程文件就在其中了。
打开工程,先点击如图左边红圈处编译一下,工程应该是没有错误的。然后根据你所使用的硬
件开发环境点击右边红圈处配置一下项目。
点击 Device标签设置器件,我应该选 STM32F103VE。
点击 Output标签,勾选左边红圈处,编译后会输出 HEX文件,当然你也可以改一下右边红圈内
的名字。
点击 Debug标签,设置调试信息,选择你的调试工具即可,不详细介绍了。
点击 Utilities标签,我的设置如图。
为了可以直接在项目中向开发板烧录程序,我们点 Settings 设置一下,我的设置如下图,其中
添加了如图的片上 Flash编程算法。
点击 OK设置完毕。
5.2 程序修改
准备工作已经完成,接着要根据模板进行修改了。看一下 Appli中的 main主程序,如下。先看
“BSP_Init();”,这是开发板的初始化程序,我们先把它注释掉,然后在后面加上下面的语句,因为
需要用到 CRC模块。
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_CRC, ENABLE);
接着我们修改 LCD和 GUI配置文件。
先是 LCDConf_stm3210e_eval.c,修改显示屏大小,我的不用改了。
#define XSIZE_PHYS 240
#define YSIZE_PHYS 320
修改接口寄存器地址,我的如下。这
您可能关注的文档
- Diamond Tool Wear - Observation by SEM.pdf
- Different Boosting Methods.pdf
- Differential regulation of the Sir2 histone.pdf
- Dietary fiber, lung function, and chronic obstructive pulmonary disease.pdf
- Differential rRNA genes expression in bread wheat and its.pdf
- Differences between discontinuous and continuous soft-core attractive potentials the appear.pdf
- Differentiation of three pairs of aconite alkaloid isomers from Aconitumnagarumvarlasiandrum by EIMS.pdf
- Did_Dad_cook_lunch_张新芳.ppt
- Digestiv System.pdf
- Digestive sys.pdf
文档评论(0)