gui 在嵌入式系统或实时系统中的地位
越来越多的市场需求数据显示,包括 pda、娱乐消费电子、机顶盒、dvd等影音设备、wap 手机等高端电子产品得到广泛应用,原先仅在军工、工业控制等领域中使用的gui图形系统,受到越来越多的关注。
对于轻量级 gui 的系统而言,对 gui 的要求相对较低,如传统51类型单片机这类系统一般不希望建立在庞大累赘的、非常消耗系统资源的操作系统和 gui 之上,如 windows 或 x window。目前此类系统都直接使用原有编程手段,采用比较简单的手法实现 gui。对于太过庞大和臃肿的gui系统而言,μc/gui这类可运用于此类资源较紧张的轻型 gui 的需求更加突出。
μc/gui简介及其配制
μc/gui是美国micrium公司出品的一款针对嵌入式系统的优秀图形软件。它是为任何使用lcd图形显示的应用提供高效的独立于处理器及lcd控制器而设计的图形用户接口,它适用单任务或是多任务系统环境。架构基于模块化设计,由不同的模块中的不同层组成。包括液晶驱动模块,内存设备模块,窗口系统模块,窗口控件模块,反锯齿模块和触摸屏及外围模块。其主要特性包括丰富图形库,多窗口、多任务机制,窗口管理及丰富窗口控件类(按钮、检验框、单/多行编辑框、列表框、进度条、菜单等),多字符集和多字体支持,多种常见图像文件支持,鼠标、触摸屏支持,灵活自由配制等特性。
图1 μc/gui模块及开发套件
在开发套件上,μc/gui提供众多工具辅助开发,包括位图转换器,字体转换器,μc/gui viewer和非常完善的基于pc平台的模拟器,如图1所示,其中μc/gui核心模块和lcd驱动模块是必须的,其他均是可配置可选择模块。由于μc/gui并非针对某一平台而设计,它可以运行于所有支持ansi c的平台上,所以在pc上调试成功的应用程序可以原封不动的移植到平台上,避免繁琐的片上调试过程。
μc/gui可以在任何的cpu上运行, 能够适应绝大多数的使用黑白或彩色lcd的应用,它提供非常好的允许处理灰度的颜色管理。还提供一个可扩展的2d图形库及占用极少ram的窗口管理体系。在μc/gui的 初典型配制可包括是否需要操作系统支持,是否需要内存设备支持,是否需要窗口支持,是否需要抗锯齿支持等众多选项,这对于gui的定制和gui的体积是非常重要的。小型系统需求ram100bytes,堆栈500bytes,rom10kbytes,完全满足资源非常紧张的系统之中。