UCGUI.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
UCGUI

uC/GUI作为一个通用的嵌入式应用的图形模块,它在嵌入式系统中的作用也显得的越来越重要。 uC/GUI是一个源代码开放的图形系统,它提供了丰富的资源,包括二维绘图库、多字体及可扩充字符集、Unicode、位图显示、多级RGB及灰度调整、动画优化显示、具有Windows风格的对话框和预定义控件(按钮、编辑框、列表框等),以及对键盘、鼠标、触摸屏等输入设备和双LCD输出的支持,目前在具有图形界面的嵌入式产品中得到越来越广泛地应用。 2 通用嵌入式图形模块uC/GUI uC/GUI是一个通用的嵌入式应用的图形模块,它是美国Micrium公司开发的一种高效的、与处理器和LCD控制器独立的通用GUI,可以适用各种CPU和LCD,在单任务和多任务操作系统中,它都可以工作得很好。它具有驱动接口层和应用层,全部代码采用ANSI _C编写,提供源代码,可以方便的移植到各种平台下。 2.1 uC/GUI特点 (1) 支持任何8位、16位和32位的CPU,只要求CPU具有相应的ANSI_C编译器即可。 (2) 所有硬件接口定义都使用可配置的宏。 (3) 字符、位图可显示与LCD的任意点,并不限制与字节长度的整数倍数地址。 (4) 所有程序在长度和速度方面都进行了优化,结构清晰。 (5) 对于慢速的LCD控制器,可以使用缓冲存储器减少访问时间,提高显示速度[1]。 因为uC/GUI具有这些优点,它越来越受到更多嵌入式设计者的青睐。 2.2 uC/OS-II介绍 在嵌入式系统的开发过程中,选择操作系统与选择开发平台一样的重要。虽然不是一个完整的实时操作系统,只是一个实时内核,但与其它操作系统比起来它具有很多优点因而得到了广泛的应用。首先它是一种结构简单、源代码公开的操作系统,适合所有的开发者使用;它具有可移植性,它的绝大部分源码都是用移植性很强的 ANSI _C编写,与微处理器硬件相关的部分采用汇编语言编写,很容易被移植到各种微处理器上;它还具有可固化和可裁剪等特点,对于嵌入式设计者来讲的,只要拥有固化手段(C编译、连接、下载和固化),就可以很方便将其嵌入到产品中去。设计者还可以根据系统应用程序的需要对uC/OS-II进行相应的裁剪来减少产品中的uC/OS-II所需的存储器空间,这可以通过条件编译来实现。 2.3 uC/GUI接口 uC/GUI 是运行于操作系统之上的程序,它既需要与操作系统的协调,又需要与各种输入输出设备的协调,来实现用户层与应用程序层的联结,即通过输入设备接收用户请求、通过输出设备反映微处理器的响应。因此在这一过程中GUI至少要与3个对象打交道:输入设备、输出设备和操作系统。因此uC/GUI接口主要包括2 个,与操作系统的接口和与输入输出设备的接口,这也正是在移植uC/GUI的过程中所要解决的关键问题。 对于操作系统,GUI作为操作系统的一个显示任务接受操作系统的调度,uC/GUI提供了与操作系统的接口支持。与操作系统的接口主要解决系统实时性的要求。对于用户输入,uC/GUI提供了键盘、鼠标以及触摸屏等支持,对于输出设备GUI反映微处理器的响应给用户是通过LCD输出图像来完成的,对于不同型号和显示原理的LCD要编制相应的驱动程序。 关于 ucgui 的 lcd 驱动   ucgui 是一个分层结构的gui系统,大概可以分为以下几个层次 ?????? ?1、设备驱动层(LCD,键盘触摸屏等设备驱动) ?????? ?2、基本显示层   3、在基本显示层上搭建的api层,字体等的显示   4、窗口管理和控件层   5、ap层   这里主要记录显示驱动层的相关事项. ??? ucgui的显示驱动层是显示的最下层,用户基本不用直接调用该层的接口,只有在移植和优化时要考虑修改和配置该层。ucgui的lcd 驱动层是支持多lcd显示的,GUI_NUM_LAYERS 宏来配置,GUI_NUM_LAYERS 最大为 5. 一、lcd驱动层的主要配置参数 #define LCD_XSIZE????? (640)?? /* lcd 的 X 方向的像素点数 */ #define LCD_YSIZE????? (480)?? /* lcd 的 Y 方向的像素点数 */ #define LCD_BITSPERPIXEL (8)?? /* lcd 上每个像素点占的位数 */ #define LCD_CONTROLLER 1375?? /* lcd 控制器id号 */ #define GUI_NUM_LAYERS?????? /* lcd 的分层数目 */ ? GUI_NUM_LAYERS? 这个参数是分层显示的层数,ucgui中层可以是虚拟的显示层,也可以是实际的lcd屏。这取决于各个层的接口函

文档评论(0)

me54545 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档