1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > tslib触摸屏测试程序源码

tslib触摸屏测试程序源码

时间:2020-04-16 06:48:51

相关推荐

tslib触摸屏测试程序源码

/*

* 触摸屏tslib测试程序

* author:xiaohe

* Time:.06.26

*/

//#include "config.h"

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include <signal.h>

#include <sys/fcntl.h>

#include <sys/ioctl.h>

#include <sys/mman.h>

#include <sys/time.h>

#include <tslib.h>

//#include <fbutils.h>

static void sig(int sig)

{

fflush(stderr);

printf("signal %d caught\n", sig);

fflush(stdout);

exit(1);

}

int main()

{

struct tsdev *ts;//位于ts_private.h

int x, y;

unsigned int i;

unsigned int mode = 0;

int quit_pressed = 0;

char *tsdevice=NULL;

signal(SIGSEGV, sig);//设置信号处理函数

signal(SIGINT, sig);

signal(SIGTERM, sig);

if( (tsdevice = getenv("TSLIB_TSDEVICE")) != NULL ) {

ts = ts_open(tsdevice,0);//打开设备,并返回ts结构体,

} else {

if (!(ts = ts_open("/dev/input/event0", 0)))

ts = ts_open("/dev/touchscreen/ucb1x00", 0);

}

if (!ts) {

perror("ts_open");

exit(1);

}

if (ts_config(ts)) {//打开配置文件并装载模块插件

perror("ts_config");

exit(1);

}

while (1) {

struct ts_sample samp;

int ret;

ret = ts_read(ts, &samp, 1);//读取触摸屏,依次按下最后以此读取pressure为0,其他时候为255

if (ret < 0) {

perror("ts_read");

exit(1);

}

if (ret != 1)

continue;

printf("%ld.%06ld: %6d %6d %6d\n", samp.tv.tv_sec, samp.tv.tv_usec,

samp.x, samp.y, samp.pressure);

}

return 0;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。