-- 作者:wangxinxin
-- 發布時間:2010-12-17 10:50:40
-- 觸摸屏測試程序問題
板子內核已經加載了觸摸屏驅動,而且板子上已經燒有QT,可以正常操作使用。說明觸摸屏硬件及驅動加載都沒有問題。 寫了一個簡單的觸摸屏測試程序,但一執行,程序一直在跑,但點擊屏幕,沒有任何結果,也無報錯。ctrl+c退出,仍然沒有任何結果。 整個操作過程是:板子上電都會自啟動linux,停留在QT界面,主機端操作板子通過NFS掛載文件,通過終端命令行執行測試程序。會不會是QT程序與測試程序的沖突?需要在QT不起動的情況下測試嗎? 測試程序如下: #include <stdio.h> #include <stdlib.h> #include <errno.h> #define DEVICENAME "/dev/touchscreen/0raw" typedef struct ts_event { unsigned short pressure; unsigned short x; unsigned short y; unsigned short pad; }ts_event; int main(void) { int ts_fd,ret; int x_raw,y_raw; ts_event *ts_evt; ts_fd=open(DEVICENAME,0); if(ts_fd<0) { perror("ts_open :"); exit(0); } ts_evt=malloc(sizeof(ts_event)); memset(ts_evt,0, sizeof(struct ts_event)); while(1) { ret=read(ts_fd,ts_evt,sizeof(*ts_evt)); if(ret>0) { printf("x: %d\\n", ts_evt->x); printf("y: %d\\n", ts_evt->y); printf("pressure: %d\\n", ts_evt->pressure); } else { perror("read the raw data :"); exit(0); } } } 小生菜鳥,不知何解,懇請各位前輩指教~萬分感謝~ |
|