阐述Linux触摸屏驱动

系统 Linux
操作系统对于经常应用电脑的用户非常的重要,一个好的操作系统,能更好的节省学习的时间。本文讲解Linux触摸屏驱动开发,在Linux触摸屏驱动中,最好的范例莫过于mc68328digi.c的实现。

操作系统对于经常应用电脑的用户非常的重要,一个好的操作系统,能更好的节省学习的时间。本文讲解Linux触摸屏驱动开发,在Linux触摸屏驱动中,最好的范例莫过于mc68328digi.c的实现。本文把其中用到的结构解析一下。

1,struct ts_pen_info

该结构是触摸屏的核心数据结构。用户程序和驱动程序的交互就是通过该数据结构完成的。结构体里面的x,y坐标和状态是gui中事件驱动的原始数据源。

2,环形队列

gui程序通过read完成对ts_pen_info的提取。而在内核中维护了一个环形队列,只要队列不为空,将立即返回数据给应用程序。

3,中断驱动机制

触摸屏是输入设备,因此使用的是中断驱动机制。只要有触摸事件发生,即向环形队列里面填充一项。

4,定时器的必要性

触摸屏的中断处理函数必然启动一个定时器。定时器的使用是为了检测出Drag操作。当按下触摸屏一直没有松开时,中断只会相应一次。这和触发方式关系不大,不是沿触发和电平触发的问题。主要是触摸屏的中断处理函数没有处理到松开是不会开放中断的。在这段时间内,就是通过定时器不停的启动,检测触摸屏的新坐标的。

5,misc驱动

触摸屏采用Misc结构的驱动。

这5点是Linux触摸屏驱动的核心,理解这些,阅读和编写自己的触摸屏驱动都会游刃有余。希望会对你有所帮助。

【编辑推荐】

  1. 教会你Linux Shell自动交互的三种方法
  2. 在Linux操作系统下配置和使用NFS
  3. 透明了解Linux内核结构
  4. 解决Linux网银更好网上购物
  5. 商业帝国的"云计算"Linux操作系统
责任编辑:小霞 来源: 互联网
相关推荐

2009-07-01 09:27:36

触摸屏驱动WinCE

2010-09-02 08:46:16

苹果触摸屏

2012-05-14 15:11:23

戴尔一体机

2013-01-11 10:08:43

PC操作系统

2012-02-28 14:07:17

Android触摸屏手势识别

2012-04-10 09:09:21

2012-07-19 09:04:29

Windows 8Office 2013

2011-10-19 15:34:13

惠普一体机

2013-11-27 15:59:21

微软Kinect触摸屏

2011-06-17 09:34:02

Qt 4.5.1 Sqlite 移植

2021-02-06 10:40:45

鸿蒙HarmonyOS应用开发

2011-11-15 11:04:14

黑莓BBX

2009-09-03 16:17:45

2011-06-17 09:19:03

Qt 4.5.1 Sqlite 移植

2011-07-12 10:10:58

2013-07-09 13:38:13

触摸屏用户体验UI设计

2011-11-01 10:11:52

后PC微软

2012-08-17 09:47:01

施耐德电气人机界面

2009-04-10 09:25:48

苹果义隆电子触摸屏

2011-06-23 09:45:59

苹果触摸屏手势
点赞
收藏

51CTO技术栈公众号