使用 tslib 库

news2024/9/25 15:27:20
  1. tslib 是专门为触摸屏设备所开发的 Linux 应用层函数库,并且是开源。

tslib 为触摸屏驱动和应用层之间的适配层, 它把应用程序中读取触摸屏 struct input_event 类型数据(这是输入设备上报给应用层的原始数据)并进行解析的操作过程进行了封装,向使用者提供了封装好的 API 接口。

tslib 从触摸屏中获得原始的坐标数据, 并通过一系列的去噪、去抖、坐标变换等操作,来去除噪声并将

原始的触摸屏坐标转换为相应的屏幕坐标。

tslib 有一个配置文件 ts.conf, 该配置文件中提供了一些配置参数、用户可以对其进行修改。

tslib 可以作为 Qt 的触摸屏输入插件,为 Qt 提供触摸输入支持。

  1. 执行 ts_finddev 命令查看到它的版本信息

将安装目录 bin/目录下的所有可执行文件拷贝到开发板/usr/bin 目录下;

将安装目录 etc/目录下的配置文件 ts.conf 拷贝到开发板/etc 目录下;

将安装目录 lib/目录下的所有库文件拷贝到开发板/usr/lib 目录下。

3.将安装目录下的测试工具、库文件以及配置文件拷贝到开发板之后,接着需要配置一些环境变量。

export TSLIB_CONSOLEDEVICE=none   //用于配置控制台设备文件名
export TSLIB_FBDEVICE=/dev/fb0    //指定一个显示设备的设备节点。
export TSLIB_TSDEVICE=/dev/input/event1 //用于配置触摸屏对应的设备节点
export TSLIB_CONFFILE=/etc/ts.conf  //用于配置 ts.conf 文件的所在路径
export TSLIB_PLUGINDIR=/usr/lib/ts  //用于配置插件所在路径。

4.tslib 提供的测试工具测试触摸屏,它提供了单点触摸测试工具(ts_print、 ts_test)和多点触摸测试工具(ts_print_mt、 ts_test_mt), ts_print 和 ts_print_mt 可以在终端打印触摸点信息,而 ts_test 和

ts_test_mt 则支持在 LCD 上画线。

5.使用 tslib 提供的 API 接口来编写触摸屏应用程序, 使用 tslib 库函数需要在我们的应用程序中包含 tslib 的头文件 tslib.h。

1)打开触摸屏设备;

2)配置触摸屏设备;

3)读取触摸屏数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/170671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ceres学习笔记(三)

学习了example中pose_graph_3d的部分,记录一下学习过程。 前言: 翻译一下readme里面的内容: ... 该示例还说明了如何将 Eigen 的几何模块与 Ceres 的自动微分功能结合使用。 为了表示方向,我们将使用 Eigen 的四元数&#xff…

测试开发 | Pytest 结合 Allure 生成测试报告

本文节选自霍格沃玆测试学院测试开发内部教材,进阶学习文末加群! 测试报告在项目中是至关重要的角色,一个好的测试报告: 可以体现测试人员的工作量; 开发人员可以从测试报告中了解缺陷的情况; 测试经理可…

锂电产业如何利用视觉检测系统降本增效?

导语:机器视觉检测已在锂电池生产的各个环节中,为产品产量与质量提供可靠保障。维视智造作为锂电池视觉检测系统提供商,为企业提供专业、系统、稳定的锂电行业解决方案,可保证0漏检,确保安全生产,全面提升生…

炫酷 RGB 之.NET nanoFramework 点灯大师

前面介绍了 .NET nanoFramework 入门,本文继续以微雪的 ESP32-S2-Pico 为例介绍 .NET nanoFramework 的开发:控制 ESP32 板载 RGB 灯 和 外接 RGB 灯。内容包含 状态灯的意义、WS2812 、HSV、PWM 等相关知识。 文章目录1. 背景2. 状态灯的意义3. 板载 LE…

萌新如何使用printf函数?

🐎作者的话 如果你搜索输入输出函数,那么你会看到输入输出流、Turbo标准库、标准输出端、stdout什么什么乱七八糟的,作为一个萌新,哪懂这些? 本文介绍萌新在前期的学习中,常用的输入输出函数及其功能~ 跳跃…

ROS2机器人编程简述humble-第二章-Controlling the Iterative Execution .3.1

2.3 ANALYZING THE BR2 BASICS PACKAGE 这一节内容有些多……前一篇:ROS2机器人编程简述humble-第二章-DEVELOPING THE FIRST NODE .2里面只有节点,没有任何实际功能。logger.cpp代码如下所示:#include "rclcpp/rclcpp.hpp"using n…

微信小程序分享的图片被裁切了。怎么让他不裁剪正常比例5:4显示

现在的效果 希望的效果 最主要的是下面的这个函数。把图片转成了5:4的临时图片 cutShareImg(doctorImg:string ){let thatthis;return new Promise((resolve) > {wx.getImageInfo({src: doctorImg, // 这里填写网络图片路径 success: (res) > {var data resconsole.l…

使用 LibreOffice 将 word 转化为 pdf 并解决中文乱码问题

目录 一、安装 LibreOffice 二、解决乱码问题 2.1 查看是否安装中文字体 2.2 准备字体 2.3 导入字体 2.4 验证 项目中有一个在线上传 word 并预览 pdf 报告的需求,因为项目部署在 ubuntu 上面,所以借助libreoffice 实现 word 转 pdf,然…

详细实例说明+典型案例实现 对枚举法进行全面分析 | C++

第五章 枚举法 目录 ●第五章 枚举法 ●前言 1.简要介绍 2.代码及结果示例(简单理解) 3.生活实例 ●二、枚举法的典型案例——鸡兔同笼&质数求解 1.鸡兔同笼 2.质数求解(枚举法) ●总结 前言 简单的来说…

最新 vue-cli 构建项目

vue-cli 构建项目 当前使用最新版本构建一个vue node项目 插件 vue-clivueelement-plusroutervuex 安装vue-cli npm install -g vue-cli安装完后 vue --version 查看版本 vue --version创建一个项目 vue create demo这里要选择版本,不同版本要相组合配置的插件…

反射的基本使用

文章目录1. 一个需求引出反射2. 反射机制2.1 Java Reflection2.2 Java 反射机制可以完成2.3 反射相关的主要类2.4 反射优点和缺点2.5 反射调用优化-关闭访问检查3. Class类3.1 基本介绍3.2 Class类的常用方法3.3 获取Class类对象3.4 哪些类型有Class对象3.5 类加载3.6 类加载流…

aws imagebuilder 理解并使用imagebuilder构建pcluster自定义ami

参考资料 ec2-image-builder-workshop Troubleshoot EC2 Image Builder 理解imagebuilder imagebuilder 使用 cinc-client 进行客户端统一配置,CINC is not Chef,而是chef的免费分发版本。 https://cinc.sh/about/ imagebuilder管道的整体逻辑如下 核…

OpenHarmony如何切换横竖屏?

前言在日常开发中,大多APP可能根据实际情况直接将APP的界面方向固定,或竖屏或横屏。但在使用过程中,我们还是会遇到横竖屏切换的功能需求,可能是通过物理重力感应触发,也有可能是用户手动触发。所以本文主要带大家了解…

Git 代码版本管理工具详解 进厂必备

目录前言Git 概述什么是版本控制?为什么需要版本控制?版本控制工具集中式分布式Git 工作机制Git安装Git 常用命令(部分)初始化本地库设置用户签名初始化本地库查看本地库状态***工作区代码编写***添加暂存区撤销工作区的修改***提交本地库***工作区修改代…

选择排序算法的实现和优化

初识选择排序: 算法思想[以升序为例]: 第一趟选择排序时,从第一个记录开始,通过n-1次关键字的比较,从第n个记录中选出关键字最小的记录,并和第一个记录进行交换 第二趟选择排序时,从第二个记…

Linux学习笔记【part1】目录结构与VIM文本编辑器

Linux基础篇学习笔记 1.CentOS 7 64位安装 第一步,在软件选择中可以设置图形界面。 第二步,手动分区中设置挂载点,分别为引导分区、通用分区和交换区。 第三步,设置内核崩溃转储机制,这对服务器来说非常有用。 第四步…

传输层协议:TCP与UDP协议的区别

TCP和UDP有哪些区别? 关于TCP与UDP协议两个协议的区别,大部分人会回答,TCP是面向连接的,UDP是面向无连接的。 什么叫面向连接,什么叫无连接呢?在互通之前,面向连接的协议会先建立连接。例如&a…

网络工程师备考7章

考点分布: 注:考点不多,这个重点记住即可; 7.1 IPV4的问题与改进 7.2 IPV6的报文格式 注:版本0110表示IPV6,源地址和目的地址都是128位(bit),整个头部固定40个B(字节) 注:通信类型和流标记实际上是没有用的。负载长度是实际的报文长度,下一个头部:IPV6是可以作…

297. 二叉树的序列化与反序列化

297. 二叉树的序列化与反序列化 难度困难 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。 请设计一个…

Linux:查看服务器信息,CPU、内存、系统版本、内核版本等

还是最近工作的总结,性能验证要根据服务器的配置才能做进一步的结论论证,废话不多说 目录查看Linux内核版本查看Linux系统版本CPU查看CPU信息(型号)物理CPU个数每个物理CPU中core的个数(即核数)查看逻辑CPU的个数内存查看内存信息…