欢迎来到天天文库
浏览记录
ID:24850756
大小:50.00 KB
页数:4页
时间:2018-11-16
《嵌入式操作系统vxworks中的显控程序设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、嵌入式操作系统VxWorks中的显控程序设计
2、第1...摘要:较全面地介绍了用L2.0实现嵌入式实时操作系统VxL2.0中显示中文的办法。关键词:嵌入式实时操作系统,VxL1引言VxL(ediaLibrary)2.0来进行图形界面设计,它们都是VxL是将Zinc和硬件设备之间连接在一起的简捷高效的通用多媒体图形库。L主要提供了对芯片、输入/输出设备、音频/视频、帧缓冲器等的开放的应用程序接口(API)。因此,Zinc必须通过调用多媒体图形库L的应用程序接口来实现其图形功能。Zinc属于高端应用,Zine组件的价格也
3、较贵,而L在大多数情况下已经足可以满足应用需求了。而且,L编程也比较灵活,有更大的自由度。因此,一般是选用L来作图形界面设计。一个系统中的各个软件模块往往都要和界面产生一定的联系,有的模块需要反数据送到界面进行显示,界面程序有可能还要将数据处理后转送其它模块以实现模块间的通讯,还有可能根据数据的情况或键盘等的输入启动某些程序,例如,按键启动系统自检等。因此,在L的许多应用场合,兴驻要求L完成图形界面的显示,而且还要完成一定的控制功能。L常常被用来编写VxL的功能L本身也具有可裁剪性和可配置性,以适应不同的应用要求。
4、L可以为在VxL适用于很多种CPU,可以提供独立于硬件的代码,同时它也支持鼠标、键盘等输入设备。L的主要功能有二维图形API,事件服务,区域和窗口管理,多媒体,资源管理。其中,二维图形API是最常用的部分,包括基本画图操作(画线、矩形、椭图、多边形、点),选择字体输出文体,位图,光标管理,批量画图操作,图形上下文,色彩管理,双缓冲。事件服务程序是用来处理输入设备的输入请求的。它会把键盘、鼠标等输入的数据转化为事件并且传送给事件句柄,送到应用队列中。区域和窗口管理可以在界面上定义一个区域或多线程之间共享的窗口以供画图
5、操作。多媒体API支持NTSC,PAL,SECAM等视频制式,DSP或混频器两种设备的音频输出,也支持JPEG图形格式。资源管理是指资源的建立、控制和删除。这些资源是指常规的L资源(例如设备和事件队列),内存管理,驱动器注册等。3L的使用L的图形界面是以像素为单位的,一般采用配色表来选择颜色,先在配色表上配置好一种颜色的R、G、B值,并用其在配色表中的索引值代表这种颜色。VxL的编程中,用C和C++写的程序完全可以编译通过,但是C语言中的printf()等函数是无法在图形界面上输出字符的,必须用L提供的相应函数才行
6、。例如,uglTextDraouseg(this)">500)this.style.ouseg(this)">4中文显示L本身不支持中文,甚至在VxL支持键盘及鼠标等输入设备,下面是一个在L中识别有键按下并执行相应操作的程序:voidKeyPress(UGL-GC-IDge)500)this.style.ouseg(this)">6实时时钟在许多应用中,需要在界面上显示地钟,而L提供了符合POSIX1003.1b标准的API以提供系统时间。首先,需要定义一个如下的结构用以存储时间:500)this.style.ou
7、seg(this)">500)this.style.ouseg(this)">500)this.style.ouseg(this)">7结束语本文对用来实现VxL2.0作了比较全面的介绍。并针对L中不能显示中文的缺点给出了在实用中已经得到验证的解决办法。并且以实例说明了用L进行显控程序设计时所要用到的基本图形操作、响应键盘输入和实时时钟的编程,这些实例是我们的在骗程实践中经过反复探索得到的。
此文档下载收益归作者所有