4.6.2  触摸屏应用开发接口

在Linux系统中,所有的输入设备(键盘、鼠标、触摸屏)都使用统一的输入系统进行管理。每个/dev/input/eventX都对应着一个输入设备。这些输入设备可以通过对应的/sys/class/ input/inputX/name文件查询到对应的设备名称。在/proc/bus/input/devices中有所有设备的详细信息。

当应用程序打开/dev/input/eventX设备后,可以使用read函数实现输入事件的读取。在linux/input.h中定义了输入事件的结构体:

struct input_event {

struct timeval time;  //时间戳

__u16 type;   //事件类型

__u16 code;   //事件代码

__s32 value;   //事件的值

};

表4-14中介绍了事件类型的定义及含义,触摸屏使用的事件类型为EV_ABS。

表4-14  事件类型定义

事 件 类 型

含义

事 件 类 型

含义

EV_SYN

同步时间

EV_LED

LED

EV_KEY

按键事件

EV_SND

声音

EV_REL

相对坐标(鼠标)

EV_REP

重复

EV_ABS

绝对坐标(触摸屏)

EV_FF

力反馈

EV_MSC

其他

EV_PWR

电源键

事件代码的含义也不同,见表4-15。

表4-15  事件代码的含义

事件类型

事件代码的含义

EV_KEY

键值

EV_REL

轨迹类型(X轴方向或Y轴方向)

EV_ABS

坐标类型(X轴坐标或Y轴坐标)

事件值的含义见表4-16。

表4-16  事件值的含义

事件类型

事件值的含义

EV_KEY

1表示按键按下;0表示按键抬起

EV_REL

鼠标偏移量(X轴偏移或Y轴偏移)

EV_ABS

坐标值(X轴坐标或Y轴坐标)

在Linux的GUI系统中,会利用上述接口对所有的输入设备进行管理。应用程序可以通过在GUI中注册监听器、在消息队列中增加对应事件的处理函数,完成输入设备事件的处理。

应用程序也可以通过write函数,向设备写入input_event事件,实现对输入设备事件的模拟。

【责任编辑:book TEL:(010)68476606】

点赞 0

linux 触摸屏 软件开发,4.6.2 触摸屏应用开发接口相关推荐

  1. ykhmi是什么触摸屏软件_深圳市人机界面寸触摸屏厂家

    人机界面5.0寸触摸屏深圳5.0寸触摸屏报价供应触摸屏 深圳中达优控YKHMI工业人机界面触摸屏系列报价表: HMI 编程软件使用全中文编辑软件YouKong_Soft V3.0. 编辑方便简单,支持 ...

  2. 驱动程序开发:多点电容触摸屏

    驱动程序开发:多点电容触摸屏 一.编写驱动前的知识准备 1.CST340触摸屏芯片寄存器 2.CST340触摸屏的硬件原理图 3.电容触摸屏驱动是由几种linux驱动框架组成的 4.linux多点电容 ...

  3. linux 查看触摸屏信息,英创信息技术eGalax触摸屏在Linux/X11下的标定方法

    eGalax是目前工控显示器的主流触摸屏控制器之一,对外多为USB接口.本文主要介绍在英创嵌入式主板ESM6802的X11桌面文件系统中加载eGalax触摸屏功能的方法. eGlax触摸屏的USB接口 ...

  4. android 禁用触摸屏,Touch Protector-安卓禁用手机触摸屏软件

    Touch Protecto是一款安卓平台上用来临时禁用禁用手机触摸屏软件,意思就是开启App之后你即便疯狂触摸屏幕也不会产生任何交互,以防止某些特定场景的意外操作触摸屏,从此达到防误触的目的. To ...

  5. 台达PLC通讯程序,PLC采用台达,触摸屏采用中达电通触摸屏软件编辑

    台达PLC通讯程序,PLC采用台达,触摸屏采用中达电通触摸屏软件编辑. 和四路智能仪表通讯,采用自己独特设计的轮询程序通讯,轮询通讯周期可设置,读取功率,电流,以及必要相关参数. 输出独立四路报警. ...

  6. 西门子触摸屏函数翻译_西门子触摸屏软件Wincc flexible 使用总结

    西门子触摸屏软件 Wincc flexible 使用总结 Wincc Flexible 使用 : 1. 退出系统的命令是 Stopruntime . 2. 尽量不要用超级兔子或优化大师清理注册表和系统 ...

  7. 切条机切带机中达优控定长送料触摸屏一体机程序 超声切带和热切都可以通用 触摸屏软件一起发,PLC用三菱软件

    切条机切带机中达优控定长送料触摸屏一体机程序 超声切带和热切都可以通用 触摸屏软件一起发,PLC用三菱软件 送料方式可选,切长的用夹手加滚筒送料,切短的用滚筒送料,切带长度任意调整,可以设定产量,切完 ...

  8. 软件开发全套视频教程汇总(javaSE,javaEE,linux,android开发,C# ,web前端,大数据云计算,数据挖掘,web前端,php开发,UI设计,C++开发,3D视频)

    软件开发全套视频教程汇总(javaSE,javaEE,linux,android开发,C# ,web前端,大数据云计算,数据挖掘,web前端,php开发,UI设计,C++开发,3D视频) 这是我以前学 ...

  9. 触摸屏软件下载v2.4

    系统:windows7及以上 兼容各种尺寸屏幕 用于触摸屏页面制作及展示,触控交互,双屏互动,飞屏,支持中控视频播放 软件实现了触摸屏页面的自助编辑排版.您只需要会PS做图,将设计好的图片.文字.视频 ...

  10. Linux platform 设备驱动实验-基于正点原子IMX6ULL开发板

    我们以前的设备驱动都非常的简单,都是对IO进行最简单的读写操作.像I2C. SPI.LCD 这些复杂外设的驱动就不能这么去写了,Linux 系统要考虑到驱动的可重用性,因此提出了驱动的分离与分层这样的 ...

最新文章

  1. 百亿数据量下,掌握这些Redis技巧你就能Hold全场
  2. 【DBMS 数据库管理系统】数据仓库特征 ( 特征一 : 面向主题组织数据 | 特征二 : 数据集成 | 特征三 : 数据不可更新 | 特征四 : 随时间不断变化 )
  3. 视频和视频帧:FFMPEG 硬件解码API介绍
  4. Spring Boot Transaction 源码解析(二)
  5. oracle-sql优化-通过分组和缓存减少不必要的读
  6. 数字前端工程师必备技能
  7. Oracle数据库游标数总结
  8. ef mysql code first_关于ef+codefirst+mysql(入门)
  9. 《Java多线程编程核心技术》——1.5节sleep()方法
  10. 1.单进程SAPI生命周期
  11. java+se+ee+spring_【JavaEE】Springmvc+Spring整合及example
  12. linux系统上的图形化远程管理,Linux操作系统远程图形化管理的几种途径
  13. matlab傅里叶光学仿真,关于微透镜阵列的傅里叶光学分析
  14. [C++]cpp小笔记3 --- C++ String and char
  15. 腾讯的wifi硬件“全民wifi”正是亮相,有何值得期待
  16. 2022年6月语音合成(TTS)和语音识别(ASR)论文月报
  17. power bi 如何构建不同年份的月度对比_以Google Analytics为例,盘点BI产品四大要素...
  18. php怎么转mp4,php使用memcoder将视频转成mp4格式的方法
  19. 【AIoT库】“星”未来,展宏“图”—— 2022 AIoT星图品牌线上发布会圆满落幕
  20. Clickhouse 踩坑之旅 ---- MergeTree不合并分区的问题

热门文章

  1. SQL学习_常用语句参考
  2. 关于对话系统(任务式/检索式/生成式)的若干总结
  3. STM32使用PWM+DMA方式驱动WS2812灯珠
  4. Mathematica12 免费安装教程
  5. 【Python】从“历年全国出生人口”看,如何用Python来制作可视化动态图
  6. SpringCloud组件之熔断器Hystrix的理论与实操
  7. 四川大学计算机专业考研经验分析,四川大学
  8. 数据猿·金猿榜丨2017中国智能营销域最具潜力创业公司
  9. 《JavaScript语言精粹》学习笔记(函数(2))
  10. 大连确定今年道路交通管理10件实事