[問題] input driver

看板LinuxDev作者 (非常念舊)時間8年前 (2016/08/07 20:47), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
版友們好 工作需要,移植前人的 code ,順利在板子上生出 /dev/input/event1 前人的 code 可以傳送 event ,並在 android 端的 hal 層,讀取到event,由於內容 不太對,所以我想自己寫了兩個小程式來做測試,一個是 write_event.c 另一個是 read_event.c write_event.c: struct input_event data_event; int rc= 0, i=0, fd=0; struct timeval tv; gettimeofday(&tv, NULL); data_event.type = EV_ABS; data_event.code = ABS_X; data_event.value = (int)0; data_event.time.tv_sec = tv.tv_sec; data_event.time.tv_usec = tv.tv_usec; if((fd = open("/dev/input/event1", O_RDWR)) < 0) { printf("Error can't open file\n"); } while(1) { usleep(2000000); if(write(fd, &data_event, sizeof(data_event)) < 0 ) printf("Error\n"); } 而 read_event.c 是 struct input_event event; int fd=0; if((fd=open("/dev/input/event1",flag))<0) printf("error\n"); read(fd,&event,sizeof(event)) //--->阻塞在這裡 write_event.c 可以一直 while 然後 write,但read_event 一直沒有東西 在android 內下 getevent,也沒有event 進來,請問我是缺少了甚麼呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.115.110.28 ※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1470574020.A.8B8.html

08/08 14:40, , 1F
有 sendevent /dev/input/event 可以用 應該不需自己寫
08/08 14:40, 1F

08/08 14:41, , 2F
直接在 driver debug 可能比較快
08/08 14:41, 2F
文章代碼(AID): #1Nfot4Yu (LinuxDev)
文章代碼(AID): #1Nfot4Yu (LinuxDev)