标题:嵌入式Linux中基于 Qt/Embeded触摸屏驱动的设计
作者:zncggaofei
日期:2008-04-04 01:48
内容:
转载:http://www.dzkf.cn/html/qianrushixitong/2007/0307/1674.html
摘要:本文主要介绍了在嵌入式 Linux 系统下基于 Qt/Embeded 的触摸屏驱动的设计,通过对 Linux 设备 驱动和Qt/Embedded设备驱动接口的工作原理和机制介绍,并结合大量源代码进行分析,提出了基于Qt/Embeded 的触摸屏驱动的开发方案。
嵌入式 Linux 以其开源性、内核的健壮性和稳定性、可裁减性,以及有着专业的商业公司和世界顶尖 的自由软件开发者的支持和维护等各方面优势,吸引了嵌入式系统开发商的目光,成为嵌入式操作系统的新宠。触摸屏由于其友善的人机交互性、操作简单灵活、输入速度快,大大简化了嵌入式系统的输入而被 广泛运用。本文介绍了基于嵌入式 Linux 系统平台上 Qt/Embedded 的触摸屏驱动的设计。该方案已成功运 用于工程机械安全仪和电能质量监测仪项目,实现了 GUI(图形用户操作接口)界面对触摸屏的支持,并能根据触摸屏的不同进行定制。
1、 Qt/Embedded 简介
Qt/Embedded 是著名的 Trolltech 公司发布的专门面向嵌入式系统的GUI 和应用开发的开发库。它是一种全面的 C++图形界面应用开发架构,继承了Qt 的全部标准 API,提供了比 Xlib 和 XWindows 系统更加紧凑的窗口生成系统,对 FrameBuffer 直接进行操作(见图 1)。完全模块化的设计和高效的编译系统减少了内存的消耗,这些使 Qt/Embedded 成为嵌入式环境 中,功能强大而全面的GUI开发工具。由于Qt/Embedded 的强大功能,被广泛用于各种领域,从消费电子(移 动电话、掌上电脑、机顶盒)到工业控制(医疗成像 设备、 移动信息系统)。
2 、Linux 下的设备驱动基础
Linux 系统主要将设备分成 3 种类型:字符设备、 块设备和网络接口。每个模块通常实现其中一种类型, 相应的模块可分为字符模块、块模块和网络模块 3 种。 然而这种分类方式并不是非常严格,程序员可以构造一个大的模块,在其中实现不同类型的设备驱动程序。 为了实现良好的伸缩性和扩展性,通常还要为每个功能创建一个不同的模块。
字符设备是能够像字节流一样被访问的设备,由字符设备驱动程序来实现这种特性。它通常至少 需要实现 open、close、read 和 write 系统调用。字 符设备可以通过文件系统节点来访问,比如字符终 端(/dev/console)和串口(/dev/ttyS0)就是字符 设备的例子。 块设备也是通过/dev 目录下的文件系统节点被访 问的 ..
#1 [狼牙 04-06 16:37]
啊,原来有人知道该怎么弄啊
方法这么详细啊
谢谢,我马上就去试试,谢谢