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

mc68328digi.c下载地址在Linux公社的1号FTP服务器里:

在 2011年LinuxIDC.com\6月\关于Linux触摸屏驱动

1,struct ts_pen_info

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

2,环形队列

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

3,中断驱动机制

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

4,定时器的必要性

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

5,misc驱动

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

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

触摸屏linux系统时间,关于Linux触摸屏驱动相关推荐

  1. linux系统时间代表,Linux上有两种时间,一种是硬件时间,一种是系统时间

    date 系统时间 clock/hwclock  硬件时钟 cal  日历 date 打印或设置系统日期或时间,以给定格式显示或设置系统时间 +%a显示周 +%A          完整显示周 +%b ...

  2. cmd怎么进入linux系统时间,在LINUX的命令提示符及CMD命令提示符中显示时间

    用途之一是可以查看某个命令或程序的执行时间. 一.CMD中显示时间设置 参数说明: $P:当前路径 $G:>(大于号) $T:当前时间,精确到0.01s 实验如下: C:\Users\g4-10 ...

  3. 进入路由器linux系统时间长,linux 路由器限速实现方法教程

    作为不同网络之间互相连接的枢纽,路由器系统构成了基于TCP/IP 的国际互联网络Internet 的主体脉络,也可以说,路由器构成了Internet的骨架.这篇文章主要介绍了linux 路由器限速实现 ...

  4. linux系统时间函数,Linux时间时区详解与常用时间函数

    时间与时区 整个地球分为二十四时区,每个时区都有自己的本地时间. UTC时间 与 GMT时间 我们可以认为格林威治时间就是时间协调时间(GMT = UTC),格林威治时间和UTC时间都用秒数来计算的. ...

  5. 修改Linux系统时间和时区

    服务时间显示不正确,可能有3个原因造成(数据库服务于后台服务分开时,属于俩个虚拟机): 1.数据库服务所在虚拟机的时间和时区显示正确 2.Oracle服务的的时间和时区显示正确 3.后台服务所在虚拟机 ...

  6. linux系统怎么看时间,查看和修改linux系统时间

    一.查看和修改Linux的时区1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区方法 A 命令 : "tzselect" 方法 ...

  7. 遇到一个Linux系统时间突变问题

    最近遇到一个Linux系统时间无法更改小于某个固定时间的问题. 有关部门反馈,一旦将设备的时间设置小于2012年11月3号4点34分,复位设备后,系统时间就会变成2012年11月3号4点后的时间.此问 ...

  8. Linux系统时间、系统时区和时钟同步的部分理解

    1.写在前面 因为最近一段时间以来,本人在项目遇到的因为Linux系统时间所引发的问题比较多,所以在此进行总结. 2.Linux系统时间与BIOS硬件时间之间的关系 2.1.RTC芯片.i2c总线和B ...

  9. linux系统添加打印机失败,怎么在Linux 系统下安装打印机的驱动 - 驱动管家

    关于Linux 系统相信经常使用电脑的朋友一定不陌生,它作为免费使用和自由传播的类Unix操作系统,同时也是一个性能稳定的多用户网络操作系统.关于这个免费的系统,它的版本也是非常得多.所以这个操作系统 ...

最新文章

  1. 《自适应软件开发》—从奴隶主到领袖 4 领导—协作
  2. 从 2018 年 Nacos 开源说起
  3. 明晚直播 | 做持有专利的程序员很难吗?专家教你如何申请!
  4. 虎牙直播在AI实时剪辑技术上的创新实践
  5. 数据库:SQL 语法速成手册,建议新手收藏!
  6. Linux下main函数启动过程【程序员自我修养笔记】【自用】
  7. php去掉关联数组,大家都应该掌握的PHP关联数组使用技巧
  8. 【渝粤教育】国家开放大学2018年春季 3722-21T燃气输配工程 参考试题
  9. python中的translate_Python3 translate()方法
  10. 严加监管是否能解决超载问题
  11. 阿拉伯数字 - 书法 - 详解
  12. 3dmax导出3ds具有过多要导出的面超过64k解决方法
  13. 外网远程访问群晖NAS,内网穿透
  14. 证券行业大数据安全简述
  15. 怎样使用GetAsyncKeyState()
  16. CPU计算机性能的操作方法,cpu怎么设置才能达到最佳性能
  17. 软考高项信息系统项目管理师范文——论信息系统项目的质量管理
  18. leetcode题解之相交链表
  19. 计算机组策略没有权限,gpedit.msc组策略无权限运行
  20. 弹性模量、刚度、强度、硬度_51CAE_新浪博客

热门文章

  1. 《灵飞经》②东岛门人 第三章 遇难呈祥
  2. linux字体技术原理
  3. Android 11 适配更新APK安装
  4. win7旗舰版怎么降级到专业版
  5. 【AI2 THOR】环境使用说明
  6. 【深入kotlin】 - 初识 Flow
  7. map_server
  8. SAP OOALV分割屏幕 cl_gui_docking_containercl_gui_splitter_container <转载>
  9. python日期加减一年_Python日期的加减等操作
  10. 玻色量子与中国医科院药物研究所达成战略合作