电容触摸屏原理及其驱动实现_第1页
电容触摸屏原理及其驱动实现_第2页
电容触摸屏原理及其驱动实现_第3页
电容触摸屏原理及其驱动实现_第4页
电容触摸屏原理及其驱动实现_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电容触摸屏原理及其驱动实现李红华2016年09月09日主要内容:一.触摸屏简介二.电容触摸屏的工作原理三.电容触摸屏的结构四.电容触摸屏硬件接口五.MTK平台驱动实现

常见的触摸屏技术:电阻式、表面电容式(surfacecapacitivetouchpanel)、投射电容式(projectcapacitivetouchpanel)、电磁式、红外感应式等等;如今应用于手机、平板产品的主要是投射电容式、电磁式(主要突出的是手写笔功能,如三星的GalaxyNote系列)。

目前生产触控IC的厂家有新思、赛普拉斯、ATMEL、敦泰、汇顶、奕力、义隆、晨星、美发思、矽创等。

国内的模组厂有欧菲、信利、胜华、帝晶、华意、TPK、合力泰、超声、创维等。一、触摸屏简介

投射式电容触控技术就是利用了平行板电容的基本原理,在两层ITO(锡氧化铟)导电玻璃涂层上蚀刻出不同的ITO导电线路模块。两个模块上蚀刻的图形相互垂直,可以把它们看作是X和Y方向连续变化的通道。由于X、Y架构在不同表面,其相交处形成一节点电容,根据平行板电容计算公式有:C=e*S/(4兀KD),其中:S为正对面积,D为正对距离,e为材料的介电常数。其中一个通道可以当成驱动线,另外一个通道当成是侦测线。当电流经过驱动线中的一条导线时,如果外界有电容变化的信号,那么就会引起另一层导线上电容节点的变化。侦测电容值的变化可以通过与之相连的电子回路测量得到,再经由A/D控制器转为数字讯号让计算机做运算处理取得(X,Y)轴位置,进而达到定位的目地。

操作时,控制器先后提供电流给驱动线,因而使各节点与导线间形成一特定电场。然后逐列扫描感应线测量其电极间的电容变化量,从而达成多点定位。当手指或触动媒介接近时,控制器迅速测知触控节点与导线间的电容值改变,进而确认触控的位置。这种一根轴通过一套AC信号来驱动,而穿过触摸屏的响应则通过其它轴上的电极感测出来。使用者们把这称为“横穿式”感应,也可称为投射式感应。传感器上镀有X,Y轴的ITO图案,当手指触摸触控屏幕表面时,触碰点下方的电容值根据触控点的远近而增加,传感器上连续性的扫描探测到电容值的变化,控制芯片计算出触控点并回报给处理器。二、电容触摸屏(CTP)工作原理(1)用特殊的导电体如ITO(氧化铟锡,透明、高导电性、高稳定性、高灵敏度)按照设计好的X、Y交互图案电镀在基材上(如Glass或者Film板)组成感应器,公差一般≤0.01mm。(2)驱动IC可以感应到行、列通道的模拟信号量。Sensor设计:常见ITO图案:IC对原始信号进行处理,转化为触摸点重心的坐标信息ITO做成”菱形/矩形/六边形/三角形”,分割为驱动和接受通道感应原理手指与CTP形成耦合电容耦合电容使得CTP寄生电容Cp改变,通过检测Cp是否变化,从而感知”被触摸”1.CTP按照驱动方式分类:◎自电容(Selfcapacitor)——检测每个感应单元自身电容(对GND)的变化。当手指靠近或触摸到触摸屏时,手指的电容叠加到屏体电容上,是屏体电容增加。在触摸检测时,一次分别检测M个X轴和N个Y轴点击阵列。跟进触摸前后所有自电容量的变化,确定手指所在的X坐标和Y坐标,最后组合成平面的触摸坐标。◎互电容(Mutualcapacitor)

——检测两个交叉感应块之间形成的电容,两个感应块分别构成电容的两级。互电容测量方法,横向电极以此提供激励信号,纵向所有电极同时接受信号,这样可以得到所有横向和纵向点击交汇点的电容大小,即整个触摸屏的二维平面大小。根据触摸屏的二维电容变化量资料,可以计算出每一个触摸点的坐标。因此,即使评上有多个触摸点,也能计算出每个触摸点的真实坐标,基于这种测量方法,可以准确测量多点绝对坐标。2.自电容驱动模式:3.互电容驱动模式:CoverLENS固态/液态OCAFilm/GlasssensorFPC1.基本结构:三、电容触摸屏结构2.CTP按照Sensor结构分类:3.常见CTP结构:叠构图◎OGS结构:OneGlassSolution,单层玻璃集成LENS跟Sensor功能Sensor图G+G结构模型图,又分为SITO(单面ITO)和DITO(双面ITO)两种,早期iphone用DITO结构◎G+G结构:2.GG(DITO)结构:LENS+OCA+ITO-GLASS+TAC+FPC单层玻璃双面走线结构,又叫GGD,TAC层用于消除底影、保护ITO图案和金属走线。◎G+F结构:GF结构:LENS+OCA+ITO-FILM+FPC——单层菲林图案结构,可以做GF(单点加手势触摸功能),也可以做GFM(多点触摸功能),ITO面朝上。◎G+F+F结构:

电容触控IC用到的基本通讯接口有三种:IIC、UART、SPI,目前一般只用IIC接口,主要的接口引脚有:VDD、GND、SCL、SDA、INT、RESET。定义描述VDDTP电源端口,为TP供电,一般为3.3V/2.8VGNDTP的地线SCLIIC通讯接口时钟线,控制IIC总线传输速率SDAIIC通讯接口数据线,传输主机与TP之间的数据INTTP中断信号接口,由TP端发出,用于通知主机读取坐标数据,一般为低电平触发RESETTP的复位信号,由有主机端发出,一般为低电平时TP会复位VDDIOTP的IO口电压,一般为2.8V/1.8V,须低于VDD,四、电容触摸屏硬件接口电气连接框图:TP端主机端VDDGNDSCLSDAINTRESETVDDIO硬件原理图1.TP的软件基本操作流程:◎

主机端初始化TP的接口方式(I2C端口初始化);◎

TPIC初始化(主要是为TP上电、复位及下发配置参数,让TP工作起来,不同厂家的IC初

始化方式不同,有些TP不需要主机端下发配置参数);◎

设置TPINT引脚(中断方式:低/高电平中断、下降沿/上升沿中断),装载中断向量表;◎

等待中断信号,读取手指触摸坐标数据,并上报给系统。五、MTK平台驱动实现2.TP驱动流程3.驱动移植:(1)在kernel-3.10\drivers\input\touchscreen\mediatek目录下,新建ft6x36_sp603文件夹,把厂家提供的驱动文件放在该文件夹下。(2)修改TP驱动的Kconfig配置文件

修改kernel-3.10\drivers\input\touchscreen\Kconfig文件,增加配置项“configTPD_CUSTOM_FT6X36_SP603”,如下图所示:(4)修改配置文件修改/kernel-3.18/arch/arm64/configs/lava6750_sp603_th_debug_defconfig与lava6750_sp603_th_defconfig文件,配置CONFIG_INPUT_TOUCHSCREEN=yCONFIG_TOUCHSCREEN_MTK=y增加配置项:CONFIG_TPD_CUSTOM_FT6X36_SP603=y把新增的TP驱动文件夹编译进内核(3)修改TP驱动的makefile编译文件修改kernel-3.10\drivers\input\touchscreen\mediatek\makefile文件,增加编译选项

obj-$(CONFIG_MSG5846_SP466) +=msg5846_sp466/(5)配置codegen.dws文件◎I2C相关配置◎电源配置,如TP采用了内部ldo供电,则需要配置PMIC◎GPIO相关配置,按原理图配置I2C、INT、RESET引脚(6)dts文件配置◎修改/kernel-3.18/arch/arm64/boot/dts/mt6755.dtsi,配置节点compatible=“mediatek,mt6755-touch”;◎修改/kernel-3.18/arch/arm64/boot/dts/cust_i2c.dtsi,配置I2C节点compatible=“mediatek,cap_touch”;

5d为触摸屏I2C地址◎修改/kernel-3.18/arch/arm64/boot/dts/mt6755.dtsi,配置TP的分辨率、虚拟按键、引脚等信息NameDescriptiontpd-resolution分辨率use-tpd-button如果TP有带按键,则定义值为1TPD_BUTTON_HEIGH按键的高度tpd-key-num按键的数量tpd-key-local按键的编码,一般为KEY_MENU,KEY_HOMEPAGE,KEY_BACK的键值tpd-key-dim-local按键的布局信息,包含按键的宽度、高度、中心点的坐标tpd-max-touch-num支持的最大触摸点数其中<90,833,100,40>代表了KEY_MENU的坐标信息,(90,833)是该keycenter的坐标,100是该键的宽度,40是该键的高度。例如:MENUHOMEBACK720x1280tpd-key-dim-local=<908831004023088310040370883100400000>;参数说明4.

驱动流程:5.

驱动函数分析:mtk_tpd.c文件,注册INPUT子系统驱动设备注册平台驱动……驱动探测函数分配input设备存储空间特定TP初始化input设备注册,把设备加入input设备链表,生成“dev/input/eventX”

节点按键初始化注册callback回调,LCDON/OFF时调用亮屏resume灭屏suspendFocaltech_driver.c文件,注册I2C总线从设备驱动获取TP节点信息添加TP驱动到链表注册I2C从设备驱动设置按键电源设置上电…启动中断线程复位脚设置读chipID中断注册……报点事件处理函数读取坐标上报按压事件上报抬手事件调用i2c函数读取报点信息解析(X,Y)坐标抬手处理函数给系统上报按键给系统上报坐标(3)相关调用函数说明手指按压处理函数同步事件,通知系统本次报点已全部完成同步事件,通知系统单次报点事件已完成6.

问题排查:(1)adb查看系统节点是否挂载。如果节点没有生成,则核查dws配置

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论