第9章 嵌入式gui

第9章 嵌入式gui

ID:24875770

大小:368.00 KB

页数:33页

时间:2018-11-16

第9章 嵌入式gui_第1页
第9章 嵌入式gui_第2页
第9章 嵌入式gui_第3页
第9章 嵌入式gui_第4页
第9章 嵌入式gui_第5页
资源描述:

《第9章 嵌入式gui》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式GUI陈文智浙江大学计算机学院2012年11月浙江大学1提纲1.嵌入式GUI简介2.XWindows3.Tiny-X体系结构4.Tiny-X应用程序编写实验一:用Glade编写一个简单的应用程序实验二:Tiny-X下的Key/Led应用实验三:GT/E移植21.嵌入式GUI简介嵌入式GUI设计一般来说包括以下3个方面:硬件设计,通过LCD控制器把LCD显示器和开发系统连接起来。驱动程序设计,为输出输入设备如LCD设计驱动程序,使硬件能驱动起来用户界面程序设计,使用嵌入式系统提供的函数库进行图形化

2、程序设计3目前在嵌入式系统比较流行的图形用户界面GUI:Qt/EmbeddedMicroWindowsOpenGUIMiniGUITiny-X42.XWindows架构采用客户端/服务器的设计概念XWindows由3部分组成:客户端、服务器和X协议XWindows是事件驱动,大部分时间处于一种等待事件发生的状态5XWindows的基本的API函数库:63.Tiny-X系统框架TinyX是标准X-windows系统的简化版,设计目标是为了在小容量内存的环境下运行,非常适合用作嵌入式linux的GUI系统

3、采用标准的Client/Server体系结构在嵌入式系统中使用Tiny-X图形用户界面开发产品,上层的应用程序的编写很方便7Tiny-X系统架构:8FrameBuffer――帧缓冲器TinyX(Xfbdev)――TinyX为Xwindows的微缩版,有经过精简的Xlib类库Glib――包括一些基础数据类型和典型的C程序需要的功能GDK――是建立在Xlib上的针对图形图像类封装的底层图形库Tiny-X结构说明(1)9Tiny-X结构说明(2)GTK――是建立在Xlib和GDK上的高级面向对象的类库窗口管

4、理器(QVWM):一种类似于window95风格的窗口管理器Glade:GTK的集成开发环境10Tiny-X库的调用关系:114.Tiny-X应用程序开发想在Xscale平台上编写基于Tiny-X的图形用户程序需要了解GTK+GTK+依赖于Glib并建立在GDK(GIMPDrawingKit)的上层,基本上是将Xlib功能包装起来,它是对底层的XWindows系统库Xlib的简化124.1GTK+的基本概念信号、事件和对象构件容器消息及回调函数的概念13GTK+编程应用实例初始化GTK+:写GTK+程

5、序需要调用gtk_init函数对Gtk+库进行初始化构件的使用,一般进行如下操作步骤:包含所调用构件的头文件声明构件构件指针的初始化安排构件的位置与层次关系编写事件处理函数GTK+事件循环144.2图形界面生成器GladeGlade由主窗口、构件箱窗口、属性编辑器窗口、构件树窗口和剪贴板窗口组成Glade是传统界面设计工具GTK/GDK的扩展,能满足基于GTK+库的图形用户界面可视化开发的基本需求15Glade帮助开发者生成界面代码,基本过程如下:让Glade设计出界面元素,设置界面元素属性,为构件的

6、信号设置回调函数将其存为XML格式,观察并修改不符合要求的部分编写应用其它部分代码,并在应用中载入Glade文件,编译C代码生成执行文件16实验-:用Glade编写一个简单的GUI应用程序实验目的熟悉GTK+编程熟悉Glade的使用学会如何交叉编译一个GUI程序171.在redhat9.0下安装Glade,选择系统/添加或删除软件包选择管理工具中的”细节”,添加Glade182.通过Glade创建GUI程序创建新的Project,并保存为guitest创建一个按钮,选择option配置193.设置参数

7、生成ARM平台代码在src目录下生成了ARM平台的目标程序guitest,下载到目标板,并修改其属性为可执行属性#exportCC=arm-linux-gcc#./configure--host=arm--build=i686--target=arm--with-gtk-exec-prefix=/usr/local/XSBase-arm-linux-R1.1#make#cdsrc20选择编译,生成代码程序在主机平台上运行#/autogen.sh#make#cd/src#/guitest21实验二:T

8、iny-X下的KeyPad/LED控制实验实验目的复习设备驱动的编写进一步熟悉Glade的使用通过GUI界面的控件事件来控制系统底层的硬件在这个实验中分别使用Glade的8个buttuon控件来控制8个LED灯221.建一个Glade图形用户界面工程2.建立相应的GUI界面结构233.增加Button的事件处理244.打开设备文件,在main.c中增如下代码,同时增加opendev.c以及opendev.h文件#include"interface.h"#

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。