tslib 是专门为触摸屏设备所开发的 Linux 应用层函数库,并且是开源。
tslib 为触摸屏驱动和应用层之间的适配层, 它把应用程序中读取触摸屏 struct input_event 类型数据(这是输入设备上报给应用层的原始数据)并进行解析的操作过程进行了封装,向使用者提供了封装好的 API 接口。
tslib 从触摸屏中获得原始的坐标数据, 并通过一系列的去噪、去抖、坐标变换等操作,来去除噪声并将
原始的触摸屏坐标转换为相应的屏幕坐标。
tslib 有一个配置文件 ts.conf, 该配置文件中提供了一些配置参数、用户可以对其进行修改。
tslib 可以作为 Qt 的触摸屏输入插件,为 Qt 提供触摸输入支持。
执行 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)读取触摸屏数据。