微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 请教input设备坐标显示

请教input设备坐标显示

时间:10-02 整理:3721RD 点击:
创建了 一个虚拟的输入设备,想请教 怎么在屏幕上显示出坐标或指针

  1. static void cursor_down(s32 x, s32 y)
  2. {
  3.         /* Report relative coordinates via the event interface */
  4.         input_report_rel(pixart_input_dev, REL_X, x);
  5.         input_report_rel(pixart_input_dev, REL_Y, y);
  6.         input_sync(pixart_input_dev);
  7. }
  8. static void cursor_up(s32 x, s32 y, s32 id)
  9. {
  10.     input_report_key(pixart_input_dev, BTN_touch, 0);
  11.     input_mt_sync(pixart_input_dev);
  12. }        
  13. static int cursor_event_handler(void *unused)
  14. {        
  15.          int cnt = 1000;
  16.          struct sched_param param = { .sched_priority = RTPM_PRIO_TPD };/*优先级*/
  17.          sched_setscheduler(current, SCHED_RR, ¶m);
  18.          cursor_p = test;
  19.          do
  20.     {
  21.         set_current_state(TASK_INTERRUPTIBLE);                                
  22.                 cursor_p = &test[cnt];
  23.                 if(--cnt == 0)cnt =1000;
  24.                               
  25.                         cursor_down(2,3);
  26.                         
  27.                         msleep(20);
  28.                         cursor_up(0,0,0);
  29.                         msleep(30);

  30.          }
  31.          while(!kthread_should_stop());
  32.         return 0;
  33. }

复制代码


用ADB 可以看到 已经有上报 上去
C:\Users\Byron>adb shell
root@S1:/ # getevent /dev/input/event8
0000 0000 00000000
0000 0002 00000000
0002 0000 00000002
0002 0001 00000003
0000 0000 00000000
0000 0002 00000000
0002 0000 00000002
0002 0001 00000003
0000 0000 00000000
0000 0002 00000000
0002 0000 00000002
0002 0001 00000003
0000 0000 00000000
请教 怎样 才能把这个坐标 和 TP一样显示在屏幕上呢?
下面是 input设备注册 代码

  1. /* allocate input device */
  2.                   pixart_input_dev = input_allocate_device();
  3.                 if (!pixart_input_dev) {
  4.                 dbmsg("Bad input_alloc_device()\n");
  5.                 }
  6.            /* Announce that the virtual mouse will generate
  7.                 relative coordinates */
  8.         
  9.                         //Announce that the virtual mouse will generate
  10.                                 set_bit(EV_REL, pixart_input_dev->evbit);
  11.                                 set_bit(REL_X, pixart_input_dev->relbit);
  12.                                 set_bit(REL_Y, pixart_input_dev->relbit);

  13.                 /* Register with the input subsystem */
  14.                 result = input_register_device(pixart_input_dev);

复制代码



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top