首页 > 其他分享 >方法|如何为开发板调试新的触摸屏

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

时间:2023-11-23 18:32:47浏览次数:36  
标签:开发板 MT 触摸屏 ABS 事件 EV 调试 define

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

1.调试新的触摸屏  

1.1 确定设备信息  

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

ls /dev/input/* -l            

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

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

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

cat /proc/bus/input/devices            

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

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

    

1.2 使用命令读取数据  

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

hexdump /dev/input/event1            

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

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

    

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-


标签:开发板,MT,触摸屏,ABS,事件,EV,调试,define
From: https://blog.51cto.com/u_16084517/8532109

相关文章

  • 第 11 节 Python程序调试和异常处理技巧
    常见的错误语法错误:例如,不正确的缩进、未定义的变量、括号不匹配等。运行时错误:例如,尝试访问不存在的文件、内存溢出等。类型错误:例如,将字符串与整数相加等。逻辑错误:例如,程序没有按照预期的流程执行、条件判断不正确等。输入错误:例如,无效的输入、输入的数据类型不正确等。常见的错......
  • Windbg调试工具命令详解
    .cls-------------------------------清屏~----------------------------------查看当前程序的所有线程~0s--------------------------------切换到我们需要调试的原托管线程中!Threads---------------------------命令可以查看进程内所有的托管线程,仅仅是托管线程!dumphea......
  • VS 调试 提示 Lc.exe已退出 代码为-1问题解决方法
    找到程序项目下Properties文件夹licenses.licx文件,然后右键选择删除就可以了,调试运行正常了 https://jingyan.baidu.com/article/b24f6c822592b686bfe5daac.html......
  • Xdebug延长调试时间
    因为我在phpstorm用xdebug调试时,没过多久就断掉然后出现500服务器错误的现象解决办法1.打开apache的配置文件,在apache\conf\httpd.conf里修改找到这一行并且把前面的注释去掉Includeconf/extra/httpd-default.conf添加这一行Includeconf/extra/httpd-fcgid.conf 2.在apac......
  • 调试代码技巧记录
    1.webpack的完整sourcemap调试代码,要映射回原始文件,devtool的sourcemap模式是不行的,会丢失loader的映射信息,导致映射结果是一个半源码半编译的文件,cheap-module-source-map可以,cheap只需要行信息,module会关联loader的sourcemap,能拿到完整的sourcemap2.添加sourcemap文件后,要清......
  • 串口调试工具和串口下载工具的区别
    参考文章:https://blog.csdn.net/m0_46170433/article/details/105883593?spm=1001.2014.3001.5502一、串口   串口即串行接口,也称串行通信接口或串行通讯接口,通常指PC端的COM接口。串口是采用串行通信方式的扩展接口。串行接口的划分标准(同步/异步)   1、同步串行接口......
  • 基于恒玄WT250芯片的蓝牙辅听耳机方案调试总结
    前记在蓝牙辅听领域卷了几年之后。各种型号的蓝牙辅听器都做过。这次,客户需要一款性价比超高的蓝牙辅听器。经过成本以及功能考量的筛选。最终定下来使用wt250来做一款低成本的蓝牙辅听器。硬件部分wt250是一个低成本的芯片。该芯片有着功耗低,资源多等特点被很多蓝牙耳机厂商采......
  • 迅为RK3568开发板学习之Linux驱动篇第十三期输入子系统
    驱动视频全新升级,并持续更新~更全,思路更科学,入门更简单。迅为基于iTOP-RK3568开发板进行讲解,本次更新内容为第十三期,主要讲解输入子系统,共计24讲。关注B站:北京迅为电子,在线观看1.总领:本期视频介绍2.什么是输入子系统?3.如何确定输入设备与节点的对应关系?4.实践:确定输入设备对应的......
  • 机械手调试注意事项
    对新安装的设备或移到其他对方的设备:1、如果想使用调好的点位,应保持机械手移动前最后的姿态,安装过程中不要通电动作机械手,否则将造成安装后点位不准的后果。2、开机后先将机械手复归到原点点位,正常情况下应该保持之前的原点点位,万一不准,可以微调到原点点位,将此点位设定为原点。......
  • S7-1200和KTP900basic 调试问题解决
    1:KTP900basic和S7-1200无法通讯?环境:型号:KTP900basic,订货号6AV2123-2JB03-OAX0 博图:V17原因,需要将KTP900basic更新最新的17.0面板镜像,一般需要在软件上额外安装SIMATIC_WinCC_Panel_Images_V17.ISO这个文件,下载连接:精智(Comfort)屏下载时提示缺少面板映像(siemens.com.cn......