- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
uC/GUI
uC/GUI(emWin)的应用与移植
当你开始使用
当你开始使用emWin进行编程时,通常遵循以下的步骤:
第1步:配置emWin
第一步通常是通过修改头文件LCDConf.h来配置emWin。LCDConf.h中的宏定义描述了LCD显示部分硬件特性;根据你的具体情况修改这些宏定义(例如显示屏的长、宽,每像素点用几位表示,LCD控制器的类型等参数)。
第2步:定义LCD的底层驱动函数
底层函数包括对LCD(控制器)的初始化函数,LCD显示缓冲区的读写函数等,完成对LCD显示硬件的直接操作。
对于映射在系统存储器上的LCD,对显示缓冲区的操作仅需要在LCDConf.h中进行定义就可以了。但对于采用I/O端口/缓冲区操作的LCD,就必须定义相应的接口函数了。
第3步:编译,链接和测试例子代码
emWin对于单任务和多任务环境下的应用都提供了例子代码。在编程之前,对这些例子代码进行编译、链接和测试,使你能够初步了解这些代码的使用。
第4步:修改例子程序
对例子代码作少量的修改。逐步添加一些额外的指令,例如显示不同大小的文字,显示多行等等,从而进一步理解代码的应用。
第5步:emWin的多任务应用,加入到你的操作系统中
如果你的系统有可能多个任务同时对显示进行操作,这时就要用到GUITask.C文件中的GUI_MAXTASK
和GUI_OS宏。
第6步:采用emWin编写你自己的应用
emWin的移植移植是指对emWin进行配置和修改,使它能够在你的目标系统上运行。参考第3.4节中的第一步和第二步,移植工作主要是针对配置头文件中的宏定义进行修改。
emWin的移植
移植是指对emWin进行配置和修改,使它能够在你的目标系统上运行。参考第3.4节中的第一步和第二步,移植工作主要是针对配置头文件中的宏定义进行修改。
这些宏包括:
1.LCD宏,定义了显示的尺寸和一些可选择的特性(例如镜像,等等)
类型玄.......缺省值解释说明
类型
玄.......
缺省值
解释说明
总体配置
s
t.CDCONTROLLER
迭择LCD控利器
N
I.CDBITSP!ERPIXEL
指定每个像表点的位数
s
LCDFIXEDPALETTE
指定是否采用固定的洞色板模式。设詈为0采用用·户设定的泗色板。此时LCDPHYSCOLORS宏必须定义。
N
I.CD:XSIZE
指定行分辨率
N
LCDYSIZE
指定列分辨率
初始化控利器
F
沁D_IN吓_CONIROLLER()
LCD控制器的初始化程序
显示方向
··················
颜色配萱
.
N
LCD虹 LOGCOLORS
256
。
。
控制器能够显示位图的最大逻辑色彩救目
当所LC采D_计FIKEDP且EJTE设詈为0时,该宏定义了用户 的调色板(色彩查找表)
在将用调户色调板色调板入被肛定亘,义使了得的程时序候在可运用行。当中可以修改词色板颜色
动态颜色反转
动态红—五替换
A
LCDPHYSCOLO邸
B
LCDPHYSCOLORS IN迦
B
LCDREVERSE
B
LCDSWAP R
LCD显示的放大
..................
简易总线接口配置
··················
表20-1与GUI移植相关的宏定义
表20-2
表20-2与GUI移植相关的宏定义(续)
实现方法与步骤实例准备关于
实现方法与步骤
实例准备关于S3C44B0X与LCD接口相关内容,以及如何连接电路,可以参考实例十一。对于实例内容和目标(1),写出符合要求的函数定义;
对于实例内容和目标(2),将编写好的主程序和光盘中提供的emWin的库文件加入工程中进行编译仿真。emWin的库文件放在光盘的source/guihelloworld/gui目录下。编写主程序main.C后,将主程序文件与ucgui.alf库文件加入同一个工程进行编译。编译成功后用并口线连接ARMSys,利用ADW下载程序,并仿真调试。观察LCD屏上的显示情况。
定义宏
LCD_INIT_CONTROLLER()函数用于对LCD显示进行初始化,同时开启显示。关于它的定义,可以参考实例十一4.2节的相关内容。
LCD_WRITE_MEM()和
LCD_WRITE_MEM()和LCD_READ_MEM()在LCDConf.h文件中定义,LCD_WRITE_MEM(Index
文档评论(0)