专栏中心

EEPW首页 > 专栏 > 方法|如何为开发板调试新的触摸屏

方法|如何为开发板调试新的触摸屏

发布人:TQwangbin 时间:2023-11-29 来源:工程师 发布文章
图片 1.调试新的触摸屏  1.1 确定设备信息  

输入设备的设备节点名为/dev/input/eventX(也可能是/dev/eventX, X 表示 0、 1、 2 等数字)。查看设备节点, 可以执行以下命令:

ls /dev/input/* -l            

可以看到类似下面的信息:

图片

怎么知道这些设备节点对应什么硬件呢?可以在板子上执行以下命令:

cat /proc/bus/input/devices            

这条指令的含义就是获取与event对应的相关设备信息,可以看到类似以下的结果: 

图片    

1.2 使用命令读取数据  

调试触摸屏时, 执行下面的命令, 然后操作触摸屏设备即可读出数据:

hexdump /dev/input/event1            

在开发板上执行上述命令之后, 点击触摸屏, 就会打印以下信息:

图片    

type:type 用于描述发生了哪一种类型的事件(对事件的分类),Linux 系统所支持的输入事件类型如下所示:

#define EV_SYN 0x00 //同步类事件,用于同步事件            
#define EV_KEY 0x01 //按键类事件            
#define EV_REL 0x02 //相对位移类事件(譬如鼠标)            
#define EV_ABS 0x03 //绝对位移类事件(譬如触摸屏)            
#define EV_MSC 0x04 //其它杂类事件            
.....            

code:code 表示该类事件中的哪一个具体事件,触摸点的信息通过一系列的 ABS_MT 事件(有的资料也叫消息)上报给 linux 内核,只有ABS_MT 事件是用于多点触摸

#define ABS_MT_POSITION_X 0x35 /* Center X touch position */            
#define ABS_MT_POSITION_Y 0x36 /* Center Y touch position */            
......            

value:内核每次上报事件都会向应用层发送一个数据 value, 对 value 值的解释随着 code 的变化而变化。

上图中第三行的type 为3 ,对应EV_ABS ,即绝对位移类事件;code为0x39 ,对应ABS_MT_TRACKING_ID , value=0x51=81 说明给SLOT0分配的ID为81 。

上图中的第六行type为3,对应EV_ABS ,即绝对位移类事件;code为0x36,对应ABS_MT_POSITION_Y,即上报触摸点 的 Y轴 坐标信息。value=0x0145=325,说明触摸点 Y 轴坐标为 325。 

-END-


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: 嵌入式 ARM开发

相关推荐

浅谈嵌入式LINUX系统教与学

资源下载 2007-02-09

汽车存储器新突破:8nm128Mb嵌入式MRAM的研发

嵌入式系统方案设计

展会预告!米尔邀您相约德国嵌入式展 2026Embedded World

Windows CE 开发初步(第一部)

意法半导体出厂中国制造的STM32 MCU

华清远见嵌入式在线视频教程——4、基于ARM的嵌入式开发

视频 2008-07-14

华清远见嵌入式在线视频教程——1、走近嵌入式系统

视频 2008-07-08

IAR 扩展了嵌入式开发平台,提供 LTS 服务

RK3576 + ROS2 SLAM建图与导航实战

米尔亮相德国嵌入式展2026 Embedded World

嵌入式看门狗如何提升系统稳定性

陈渝大侠翻译的 uClinux2.6入门

未来倾向于UFS用于高性能嵌入式闪存

从COM到SMARC再到OSM:嵌入式计算模块的发展

第一讲:嵌入式系统概述

TI将边缘AI微控制器更深入地融入嵌入式设计

更多 培训课堂
更多 焦点
更多 视频

技术专区