zoukankan      html  css  js  c++  java
  • [国嵌攻略][141][触摸屏驱动编程]

    开启XY坐标转换,并上报

    触摸屏驱动文件在/drivers/input/touchscreen/s3c2410_ts.c

    static void touch_timer_fire(unsigned long data)
    {
          unsigned long data0;
          unsigned long data1;
        int updown;
    
          data0 = ioread32(base_addr+S3C2410_ADCDAT0);
          data1 = ioread32(base_addr+S3C2410_ADCDAT1);
    
         updown = (!(data0 & S3C2410_ADCDAT0_UPDOWN)) && (!(data1 & S3C2410_ADCDAT0_UPDOWN));
    
         if (updown) {
            //判断上报事件
            if(count != 0){   //如果是第四次采样,那么提交上报事件
                //交换坐标
                long tmp;
                
                tmp = xp;
                xp = yp;
                yp = tmp;
                
                //平均处理
                xp >>= 2;
                yp >>= 2;
                
                //上报事件
                input_report_abs(dev, ABS_X, xp);
                input_report_abs(dev, ABS_Y, yp);
                
                input_report_abs(dev, ABS_PRESSURE, 1);
                input_report_key(dev, BTN_TOUCH, 1);
                
                //同步上报
                input_sync(dev);
                
                //显示坐标
                printk("x = %d, y = %d
    ", xp, yp);
            }
            
            //清零转换坐标
            xp = 0;
            yp = 0;
            count = 0;
            
             //启动坐标转换
            iowrite32(1<<2, base_addr + S3C2410_ADCTSC);                                            //设置自动转换模式
            iowrite32(ioread32(base_addr + S3C2410_ADCCON) | (1<<0), base_addr + S3C2410_ADCCON);   //开启坐标转换
         } else {
             count = 0;
    
             input_report_key(dev, BTN_TOUCH, 0);
             input_report_abs(dev, ABS_PRESSURE, 0);
             input_sync(dev);
    
             iowrite32(WAIT4INT(0), base_addr+S3C2410_ADCTSC);
            if (OwnADC) {
                OwnADC = 0;
                up(&ADC_LOCK);
            }
         }
    }
  • 相关阅读:
    javscript处理XML DOM(待续)
    js设计模式(12)---职责链模式
    js设计模式(11)---命令模式
    Openstack之Swift架构(Cloud Storage)
    javascript —— HTTP头文件详解
    Generator
    promise
    记一些浏览器缓存以前不太熟悉的东西
    hover
    调试手机上网页 (断点 console timeline 选择dom)
  • 原文地址:https://www.cnblogs.com/d442130165/p/5271278.html
Copyright © 2011-2022 走看看