电容式传感器上的拒水的制作方法

文档序号:11814574阅读:340来源:国知局
电容式传感器上的拒水的制作方法与工艺

本申请要求于2014年3月26日提交的美国专利申请第14/226,660号的优先权,该申请要求于2013年12月2日提交的美国临时申请第61/910,751号的权益,上述所有申请的全部内容以引用的方式并入本文。

技术领域

本公开大体上涉及感测系统,并且更具体地涉及可配置为确定触碰的触碰位置并且在湿润条件下预测在电容感测系统上的假触碰。



背景技术:

电容感测系统可以感测反映电容变化的、在电极上生成的电信号。这种电容变化可能指示触碰事件(即,靠近特定电极的物体)。电容式感测元件可以用于代替机械按钮、旋钮和其它相似的机械用户界面控件。电容式感测元件的使用允许消除复杂的机械开关和按钮,从而在恶劣条件下提供可靠操作。另外,电容式感测元件广泛用于现代客户应用,从而在现有产品中提供用户界面选项。电容式感测元件的范围可以从单个按钮到以针对触碰感测表面的电容式感测阵列的形式设置的大量按钮。

利用电容式感测阵列的透明触摸屏在当今的工业和消费者市场中无处不在。可以在蜂窝式电话、GPS装置、机顶盒、照相机、计算机屏幕、MP3播放器、数字化平板计算机等上发现它们。电容式感测阵列通过测量电容式感测元件的电容并且寻找指示导电物体的触碰或者存在的电容的delta来工作。当导电物体(例如,手指、手或者其它物体)与电容式感测元件接触或者极为接近时,电容发生变化并且检测到导电物体。电容式触碰感测元件的电容变化可以由电路测量。电路将电容式感测元件的测量电容转换为数字值。

存在两种典型类型的电容:1)互电容,其中,电容感测电路对电容器的两个电极具有访问权限;2)自电容,其中,电容感测电路仅仅对电容器的一个电极具有访问权限,其中,第二电极与DC电压水平紧密相关或者寄生地耦合至大地接地点。触控面板具有两种类型(1)和(2)的分布式电容负载,并且一些触控产品唯一地或者以与其各种感测模式混合的形式感测两个电容。

附图说明

在附图的图中以示例的方式图示了本发明,但本发明不限于此。

图1是图示了根据一个实施例的处理触碰数据的电子系统的框图。

图2是图示了根据另一实施例的处理触碰数据的电子系统的框图。

图3图示了根据一个实施例的电容式感测触碰感测系统。

图4图示了根据一个实施例的包括电容式按钮的感测阵列。

图5是图示了根据一个实施例的在电容式按钮上的水检测的方法的流程图。

图6是图示了根据一个实施例的在靠近电容式按钮检测到水存在时的触碰的检测的方法的流程图。

图7是图示了根据另一实施例的在靠近电容式按钮检测到水存在时的触碰的检测的方法的流程图。

图8是图示了根据一个实施例的检测包括湿手指触碰的不同触碰类型的方法的流程图。

图9是根据一个实施例的感测阵列的单元的示例。

图10是图示了根据一个实施例的检测湿手指的触碰的方法的流程图。

图11是图示了根据一个实施例的重新设置的水基线的图表。

图12是图示了根据一个实施例的在不同条件下的电容式按钮的电容测量的图表。

图13A图示了根据一个实施例的感测阵列的单元。

图13B图示了根据另一实施例的感测阵列的单元。

图13C图示了根据另一实施例的感测阵列的单元。

图14A图示了根据一个实施例的感测阵列的单元。

图14B图示了根据一个实施例的感测阵列的单元。

图14C图示了根据一个实施例的感测阵列的单元。

具体实施方式

在以下描述中,出于阐释的目的,提出许多具体细节以提供对本发明的透彻理解。然而,对于本领域的技术人员而言显而易见的是,可以在没有这些具体细节的情况下实行本发明。在其它情况下,已知的电路、结构和技术未被详细示出,而是在框图中被示出以避免不必要地使本说明书的理解含糊不清。

在说明书中对“一个实施例”或者“实施例”的提及是指在本发明的至少一个实施例中包括结合该实施例所描述的特定特征、结构或者特性。位于本说明书中的不同地方的短语“在一个实施例中”不一定指的是相同的实施例。

在电容式触碰感测系统中,水可能存在于触控显示器上,导致损坏测量、假触碰、和失去触碰。例如,在电容式按钮上的水的测量电容值与在电容式按钮上的触碰的测量电容值相似。结果,可能会将电容式按钮上的水误认为实际触碰和报告的结果假触碰。本文所描述的实施例涉及检测在感测阵列上,具体地,在电容式按钮上的水的存在,并且检测在电容式按钮上的触碰,即使在水存在时。本文所描述的实施例可以在各种水条件下准确地测量触碰,诸如,下面关于图4至图10所描述的。可替代地,可以实现其它优点。

图1是图示了根据一个实施例的处理触碰数据的电子系统的框图。图1图示了包括处理装置110的电子系统100,该处理装置110可以配置为利用拒水工具(water rejection tool)120来测量包括感测阵列121(例如,电容式感测阵列)的触碰感测表面116的电容。在一个实施例中,多路复用器电路可以用于将电容感测电路101与感测阵列121连接。电子系统100包括:耦合至处理装置110的触碰感测表面116(例如,触摸屏),该处理装置110耦合至主机150。在一个实施例中,触碰感测表面116是使用处理装置110来检测在表面116上的触碰的二维感测阵列(例如,感测阵列121)。

在一个实施例中,拒水工具120可以检测靠近感测阵列的一个或者多个电极的水的存在。拒水工具120可以通过使用感测阵列的电极的自电容扫描来获得电容数据。电极可以由处理装置110使用来表现得像按钮。应该注意,电容式传感器可能指的是,例如,感测阵列的电极、感测阵列的一对电极、按钮、或者任何电容式感测元件。当在电极上测量得到的电容高于触碰阈值时,可以将测量结果登记为在电容式按钮上侧触碰。拒水工具120也可以通过使用一对电极(诸如,针对自电容扫描而被扫描的电极和电极对的另一电极)的互电容扫描来获得电容数据。结果,获得的电容数据包括:在自电容扫描期间被扫描的电极(出于说明的目的,以下简称自电容电极)的自电容测量结果、以及在互电容扫描期间被扫描的两个电极(出于说明的目的,以下简称互电容电极对)之间的互电容的互电容测量结果。拒水工具120可以将自电容测量结果与自电容阈值进行比较,并且将互电容测量结果与互电容阈值进行比较。实验表明,水对互电容测量结果的影响极大,但是对电极的自电容测量结果的影响不大。拒水工具120使用该现象来确定水是否在电容式按钮上。当自电容激活为假(即,自电容测量结果不大于自电容阈值)并且互电容激活为真(即,互电容测量结果比互电容阈值大)时,拒水工具120确定水在电容式按钮上。一旦在电容式按钮上感测到水,拒水工具120就可以采用基于水的触碰检测阈值(例如,水触碰检测阈值),从而使拒水工具120可以感测在按钮上的触碰,即使按钮是湿的。触碰检测阈值是下述电容值(例如,160计数):当高于该电容值时,来自感测阵列(例如,感测阵列121)的测量电容数据指示触碰,并且当低于该电容值时,无触碰被登记。例如,如果测量电容值超过触碰检测阈值,那么拒水工具120指示触碰。如果测量电容值比触碰检测阈值低,那么拒水工具120指示未感测到触碰。应该注意,针对直接被浸没在水下的电极,在电容式感测阵列上的水通常增加电容式测量结果。因此,对于感测装置而言,水可能看来像是触碰(例如,假触碰),并且感测装置可能无法区分水与实际触碰。

在一个实施例中,感测阵列121包括:设置为二维矩阵(也称为XY矩阵)的电极122(1)至122(N)(其中,N是正整数)。感测阵列121经由传送多个信号的一个或者多个模拟总线115耦合至处理装置110的引脚113(1)至113(N)。在感测阵列121中,前三个电极(即,电极122(1)至122(3))连接至电容感测电路101和地面,表明是自电容配置。最后的电极(即,122(N))具有连接至电容感测电路101的两个端子,表明是互电容配置。在没有模拟总线的替代实施例中,每个引脚反而可以连接至生成发送(TX)信号的电路或者连接至单独的接收(RX)传感器电路。感测阵列121可以包括多维电容式感测阵列。多维感测阵列包括:被组织为行和列的多个感测元件。在另一实施例中,感测阵列121作为全点可寻址(“APA”)互电容式感测阵列操作。感测阵列121可以设置为具有平面轮廓。可替代地,感测阵列121可能具有非平面轮廓。可替代地,可以使用电容式感测阵列的其它配置。例如,除了垂直列和水平行之外,感测阵列121可能具有六边形设置等。在一个实施例中,感测阵列121可以包括在铟锡氧化物(ITO)面板或者触摸屏面板中。在一个实施例中,感测阵列121是电容式感测阵列。在另一实施例中,感测阵列121是非透明电容式感测阵列(例如,PC触控板)。在一个实施例中,感测阵列配置为使处理装置110可以生成针对检测到的靠近多个电极的触碰的触碰数据,该触碰数据被表示为多个单元。

在一个实施例中,电容感测电路101可以包括弛张振荡器或者将电容转换为测量值的其它装置。电容感测电路101也可以包括测量振荡器输出的计数器或者计时器。处理装置110可以进一步包括:将计数值(例如,电容值)转换为触碰检测判定或者相对值的软件部件。应该注意,存在用于测量电容的各种已知方法,诸如,电流与电压相移测量结果、电阻电容充电时间、电容桥分压器、电荷转移、逐次逼近法、西格玛-德耳塔调制器、电荷积累电路、场效应、互电容、频移、或者其它电容测量算法。然而,应该注意,除了评估相对于阈值的原始计数之外,电容感测电路101可能正在对其它测量结果进行评估以确定用户交互。例如,在具有西格玛-德耳塔调制器的电容感测电路101中,电容感测电路101正在评估输出(即,密度域)的脉冲宽度的比值,而不是大于或者小于某个阈值的原始计数。

在另一实施例中,电容感测电路101包括:生成待应用于TX电极的TX信号(例如,刺激信号)的TX信号生成器、以及耦合以测量在RX电极上的RX信号的接收器(也称为感测信道),诸如,积分器。在另一实施例中,电容感测电路101包括:耦合至接收器的输出以将测量RX信号转换为数字值的模数转换器(ADC)。数字值可以进一步由处理装置110、主机150或者两者处理。

处理装置110配置为检测在触碰装置,诸如,感测阵列121上的一个或者多个触碰。处理装置可以检测导电物体,诸如,触碰物体140(手指或者无源触控笔、活动触控笔、或者它们的组合)。电容感测电路101可以测量在感测阵列121上的触碰数据。触碰数据可以被表示为多个单元,每个单元表示感测阵列121的感测元件(例如,电极)的交点。电容式感测元件是用导电材料(诸如,铜、银、铟锡氧化物(ITO)、金属网、碳纳米管等)制成的电极。感测元件也可能是ITO面板的一部分。电容式感测元件可以用于允许电容感测电路101测量自电容、互电容、或者它们的组合。在另一实施例中,由电容感测电路101测量的触碰数据可以由处理装置110处理,以生成感测阵列121(例如,电容式感测阵列)的2D电容图像。在一个实施例中,当电容感测电路101测量触碰感测装置(例如,电容式感测阵列)的互电容时,电容感测电路101确定在触碰表面上的触碰感测对象的2D电容图像,并且处理数据用于峰值和位置信息。在另一实施例中,处理装置110是微控制器,该微控制器诸如从感测阵列获得电容触碰信号数据集,并且在微控制器上执行的手指检测固件识别指示触碰的数据集区域、检测和处理峰值、计算坐标,或者因此进行它们的组合。固件可以结果峰值用于精确坐标。在一个实施例中,固件可以通过使用质心算法来计算结果峰值用于精确坐标,该质心算法计算触碰的质心,该质心是触碰的质量中心。质心可以是触碰的X/Y坐标。可替代地,可以使用其它坐标插值算法来确定结果峰值的坐标。微控制器可以向主机处理器报告精确坐标以及其它信息。

在一个实施例中,处理装置110进一步包括处理逻辑102。可以用固件、硬件、或者软件或者它们的一些组合来实现处理逻辑102的一些或者全部操作。处理逻辑102可以接收来自电容感测电路101的信号,并且确定感测阵列121的状态,诸如,是否检测到在感测阵列121上或者靠近该感测阵列121的物体(例如,手指)(例如,确定物体的存在),解析物体在感测阵列上的何处(例如,确定物体的位置),从而跟踪物体的运动、或者与在出口传感器处检测到的物体有关的其它信息。在另一实施例中,处理逻辑102可以包括电容感测电路101。

在另一实施例中,代替在处理装置110中进行处理逻辑102的操作,处理装置110可以将原始数据或者部分处理的数据发送至主机150。图1所示的主机150可以包括:进行处理逻辑102的一些或者全部操作的判定逻辑151。拒水工具120可以部分或者全部由判定逻辑151实现。拒水工具120可以是在判定逻辑151内的模块。可替代地,拒水工具120可以是在判定逻辑151中的算法。主机150可以获得来自处理装置110的原始电容数据,并且确定在感测阵列121上是否已经发生或者还未发生触碰。可以用固件、硬件、或者它们的组合来实现判定逻辑151的操作。主机150可以包括在应用152中的高级应用编程接口(API),该应用152进行关于接收到的数据的例程,诸如,补偿敏感性差异、其它补偿算法、基线更新例程、启动和/或初始化例程、插值操作、或者缩放操作。可以用判定逻辑151、应用152或者用其它固件、软件、和/或在处理装置110之外的固件来实现关于处理逻辑102所描述的操作。在一些其它实施例中,处理装置110是主机150。

在另一实施例中,处理装置110也可以包括非感测动作块103。非感测动作块103可以用于处理数据并且/或者接收来自主机150的数据/将数据发送至主机150。例如,可以实现附加部件以与处理装置110连同感测阵列121(例如,键盘、小键盘、鼠标、轨迹球、LED、显示器、或者其它外围装置)一起操作。

如图所示,电容感测电路101可以被集成到处理装置110中。电容感测电路101可以包括模拟I/O,该模拟I/O用于耦合至外部部件,诸如,触碰感测器垫(未示出)、感测阵列121、触碰感测器滑块(未示出)、触碰感测器按钮(未示出)、和/或其它装置。电容感测电路101可以配置为通过使用互电容感测技术、自电容感测技术、电荷耦合技术、它们的组合等来测量电容。在一个实施例中,电容感测电路101通过使用电荷积累电路、电容调制电路、或者本领域的技术人员所知道的其它电容感测方法来操作。在一个实施例中,电容感测电路101具有触摸屏控制器的Cypress TMA-3xx家族、TMA-4xx家族或者TMA-xx家族。可替代地,可以使用其它电容感测电路。本文所描述的互电容感测阵列或者触摸屏可以包括:设置在其自己的视觉显示器(例如,LCD监视器)上、中或者下的透明的、导电感测阵列、或者在显示器前面的透明基板。在一个实施例中,TX电极和RX电极分别以行和列配置。应该注意,可以用任何选定组合,通过电容感测电路101将电极行和电极列配置为TX电极或者RX电极。在一个实施例中,感测阵列121的TX电极和RX电极可配置为:作为互电容感测阵列的TX电极和RX电极以第一模式操作以检测触碰物体,并且作为电荷耦合接收器的电极以第二模式操作以检测在感测阵列的相同的电极上的触控笔。在激活时生成触控笔TX信号的触控笔用于将电荷耦合至电容式感测阵列,而不是如在互电容感测期间进行的测量在RX电极和TX电极(包括一个或者多个感测元件)的交点处的互电容。可以将两个感测元件之间的交点理解为感测电极在保持彼此电流隔离的同时彼此交叉或者重叠的位置。可以通过选择TX电极和RX电极的每个可用组合来感测与在TX电极与RX电极之间的交点相关联的电容。当触碰物体(即,导电物体)(诸如,手指或者触控笔)接近感测阵列121时,触碰物体导致在一些TX/RX电极之间的互电容减小。在另一实施例中,手指的存在增加了电极的耦合电容。由此,可以通过识别RX电极来确定手指在感测阵列121上的位置,该RX电极具有在该RX电极与TX电极之间的下降的耦合电容,该TX电极在该RX电极上测量到下降的电容时被应用了TX信号。因此,通过顺序地确定与电极交点相关联的电容,可以确定一个或者多个输入的位置。应该注意,过程可以通过为感测元件确定基线来校准感测元件(RX电极和TX电极的交点)。也应该注意,插值可以用于以比行/列间距更好的分辨率检测手指位置,如本领域的普通技术人员所理解的。另外,各种类型的坐标插值算法可以用于检测触碰的中心,如本领域的普通技术人员所理解的。

也应该注意,本文所描述的实施例并不限于具有耦合至主机的处理装置的配置,而是可以包括系统,该系统测量在感测装置上的电容并且将原始数据发送至主机计算机,在该主机计算机中,该原始数据由应用分析。实际上,由处理装置110完成的处理也可以在主机中完成。

处理装置110可以驻留在公共承载基板上,诸如,例如,集成电路(IC)裸片基板、或者多芯片模块基板。可替代地,处理装置110的部件可以是一个或者多个独立集成电路和/或离散部件。在一个实施例中,处理装置110可以是由加利福尼亚州圣何塞Cypress Semiconductor Corporation公司开发的在Chip处理装置上的可编程系统。可替代地,处理装置110可以是本领域的普通技术人员所知道的一个或者多个其它装置,诸如,微处理器或者中央处理单元、控制器、专用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或者其它可编程装置。在替代实施例中,例如,处理装置110可以是具有多个处理器的网络处理器,该多个处理器包括核心单元和多个微引擎。另外,处理装置110可以包括通用处理装置和专用处理装置的任何组合。

电容感测电路101可以被集成到处理装置110的IC中,或者可替代地,在独立的IC中。可替代地,可以生成并且编译电容感测电路101的说明,以并入其它集成电路中。例如,可以通过使用硬件描述语言(诸如,VHDL或者Verilog)来生成描述电容感测电路101的行为级代码或者其部分,并且将该行为级代码或者其部分存储到机器可访问介质(例如,CD-ROM、硬盘、软盘等)中。此外,可以将行为级代码编译为寄存器传送级(“RTL”)代码、网络表、或者甚至电路布局图,并且存储到机器可访问介质中。行为级代码、RTL代码、网络表、和电路布局图可以表示描述电容感测电路101的各个级别的抽象概念。

应该注意,电子系统100的部件可以包括所有上述部件。可替代地,电子系统100可以包括上述部件中的一些。

在一个实施例中,电子系统100用于平板计算机。可替代地,除了别的之外,电子系统可以用于其它应用,诸如,笔记本计算机、手机、个人数字助理(“PDA”)、键盘、电视机、遥控器、监视器、手持式多媒体装置、手持式媒体(音频和/或视频)播放器,手持式游戏装置、针对销售点交易的签名输入装置、电子书阅读器、全球定位系统(“GPS”)或者控制面板。本文所描述的实施例并不限于针对笔记本计算机实施方式的触摸屏或者触碰传感器垫,而是可以用于其它电容感测实施方式,例如,感测装置可以是触碰传感器滑块(未示出)或者触碰传感器按钮(例如,电容感测按钮)。在一个实施例中,这些感测装置包括一个或者多个电容式传感器或者其它类型的电容感测电路系统。本文所描述的操作并不限于笔记本计算机指针操作,而是可以包括其它操作,诸如,照明控制(调光器)、音量控制、图形均衡器控制、速度控制、或者需要逐步调整或者离散调整的其它控制操作。也应该注意,电容式感测实施方式的这些实施例可以与非电容式感测元件结合使用,包括但不限于拾取按钮、滑块(例如,显示器亮度和对比度)、滚轮、多媒体控制(例如,音量、前进轨迹等)手写识别、和数字小键盘操作。

电子系统100包括电容式按钮123。电容式按钮123连接至处理逻辑110。在一个实施例中,电容式按钮123可以是单个电极。在另一实施例中,电容式按钮123可以是一对电极。在一个实施例中,电容式按钮123设置在基板上。在一个实施例中,电容式按钮123可以是感测阵列121的部分。在另一实施例中,电容式按钮可以与感测阵列121分开。在一个实施例中,电容式按钮123可以用于自电容扫描模式。在另一实施例中,电容式按钮123可以用于互电容扫描模式。在一个实施例中,电容式按钮123可以同时用于自电容扫描模式和互电容扫描模式。电容式按钮123可以是一个或者多个不同的按钮。

图2是图示了根据另一实施例的处理触碰数据的电子系统的框图。电子系统200包括:由正交电极构成的感测阵列121、以及将测量电容的变化转换为指示触碰的存在和位置的坐标的电容感测电路101。在一个实施例中,电容感测电路101可以为在感测阵列121中的发送电极和接收电极之间的交点测量互电容。基于测量电容相对于在未触碰状态下的感测阵列121的电容的变化来计算触碰坐标。感测阵列121包括由N×M电极(N个接收电极和M个发送电极)构成的矩阵225,该矩阵225进一步包括发送(TX)电极222和接收(RX)电极223。在矩阵225中的每个电极通过解复用器212和多路复用器213与电容感测电路101连接。

电容感测电路101包括多路复用器控制器211、解复用器212、多路复用器213、时钟发生器214、信号发生器215、解调电路216、和模数转换器(ADC)217。ADC 217进一步与触碰坐标转换器218耦合。可以用处理逻辑102来实现触碰坐标转换器218。

在另一实施例中,ADC 217的后面可以跟着原始数据处理块(未示出)。原始数据处理块进行有关来自ADC 217的数据的功能,诸如,设置和改变基线值、利用原始数据过滤器、进行差异更新等。触碰坐标转换器218可以跟在原始数据处理块后面。在另一实施例中,触碰坐标转换器218可以包括拒水工具120。

在电极矩阵225中的发送电极和接收电极可以设置为使每个发送电极与接收电极重叠并且相交以形成交点阵列,同时保持彼此电流隔离。由此,每个发送电极可以与每个接收电极电容耦合。例如,发送电极222在发送电极222和接收电极223重叠的点处与接收电极223电容耦合。

时钟发生器214向信号发生器215提供时钟信号,该信号发生器215产生待提供给感测阵列121的发送电极的TX信号224。在一个实施例中,信号发生器215包括根据来自时钟发生器214的时钟信号操作的一组开关。开关可以通过将信号发生器215的输出周期性的连接至第一电压并且然后连接至第二电压来生成TX信号224,其中,第一电压和第二电压不同。

信号发生器215的输出与解复用器212连接,这允许TX信号224应用于感测阵列121的M个发送电极中的任何一个。在一个实施例中,多路复用器控制器211对解复用器212进行控制,从而以受控顺序将TX信号224应用于每个发送电极222。解复用器212也可以用于使交替信号接地、浮置或者连接至当前没有应用TX信号224的其它发送电极。在替代实施例中,可以将TX信号224以真形式呈现给发送电极222的子集,并且以补码形式呈现给发送电极222的第二子集,其中,发送电极222的第一子集和第二子集中没有部件重叠。

由于在发送电极与接收电极之间的电容式耦合,应用于每个发送电极的TX信号224在每个接收电极中感应电流。例如,当通过解复用器212将TX信号224应用于发送电极222时,TX信号224在矩阵225中的接收电极上感应RX信号227。然后可以通过使用多路复用器213来依次测量在每个接收电极上的RX信号227,以将N个接收电极中的每一个依次连接至解调电路216。

可以使用解复用器212和多路复用器213,通过选择TX电极和RX电极的每个可用组合来测量与所有TX电极和RX电极的交点相关联的互电容。为了提高性能,也可以对多路复用器213进行分割以允许在矩阵225中的不只一个接收电极路由到附加解调电路,诸如,解调电路216。在优化配置中,在存在与接收电极一一对应的解调电路216的实例的情况下,多路复用器213可能不存在于系统中。

当导电物体(诸如,手指)接近电极矩阵225时,导电物体导致在仅仅一些电极之间的测量互电容减小。例如,如果将手指放置在发送电极222和接收电极223的交点附近,那么手指的存在将减少在电极222与电极223之间耦合的电荷。由此,除了通过识别在测量到一个或者多个接收电极上的电容下降时被应用了TX信号224的发送电极,可以通过识别具有下降的测量互电容的该一个或者多个接收电极来确定手指在触控板上的位置。

通过确定与在矩阵225中的电极的每个交点相关联的互电容变化,可以确定一个或者多个导电物体的存在和位置。确定可以是连续的、并行的,或者可以更加频繁地发生于常用电极处。

在替代实施例中,可以在手指或者导电物体导致在可以以网格或者其它形式设置的一个或者多个电极处的测量电容增加的情况下使用用于检测手指或者其它导电物体的存在的其它方法。例如,放置在电容传感器的电极附近的手指可以将附加电容引入至地面,以增加电极与地面之间的总电容。可以基于检测到测量电容变化的一个或者多个电极的位置和在每个相应电极处的相关电容变化量来确定手指的位置。

通过解调电路216来对感应电流信号积分。然后可以对由解调电路216输出的整流电流进行滤波并且通过ADC 217将其转换为数字代码。

当通过相邻传感器交点测量得到的一系列的这种数字代码与在未触碰状态下的这些相同的传感器的有关代码进行比较或者由该有关代码偏置时,可以通过触碰坐标转换器218将该一系列的这种数字代码转换为指示在感测阵列121上的触碰的位置的触碰坐标。然后可以使用触碰坐标来检测姿态或者进行通过处理逻辑102的其它操作。处理逻辑102可以包括上述拒水工具120。图2的拒水工具120可以进行在下面关于图4至图10所描述的各种操作。

电子系统包括电容式按钮123。在一个实施例中,电容式按钮123连接至复用器213。

图3图示了根据一个实施例的电容式感测触碰感测系统。电容式触碰感测系统300包括感测阵列320。感测阵列320可以是电容式感测阵列。感测阵列320包括多个行电极331至340和多个列电极341至348。行电极和列电极331至348连接至处理装置310,该处理装置310可以包括图1或者图2所示的电容感测电路101的功能。在一个实施例中,处理装置310可以进行感测阵列320的互电容测量结果扫描以测量互电容值,该互电容值与在感测阵列320中的行电极和列电极之间的交点中的每一个相关联。可以对测量电容进行进一步处理以确定靠近感测阵列320的导电物体的一个或者多个触点的质心位置。

在一个实施例中,处理装置310连接至主机150,该主机150可以从处理装置310接收测量电容或者计算质心位置。

图3所示的感测阵列320包括:设置为创建相互连接的钻石形状的图案的电极。具体地,感应阵列320的电极331至348形成单个实心菱形(SSD)图案。在一个实施例中,在行电极与列电极之间的每个交点限定单位单元。在单位单元内的每个点比任何其它交点更接近相关交点。例如,单位单元350包含离在行电极334与列电极346之间的交点最近的点。

在一个实施例中,电容式触碰感测系统300可以通过进行扫描来从感测阵列320的整个触碰感测表面收集数据,以测量包括触碰感测表面的单位单元的电容,然后与后续扫描串行地或者并行地处理触碰数据。例如,串行地处理触碰数据的一个系统可以从整个触碰感测表面的每个单位单元收集原始电容数据,并且对原始数据进行滤波。基于滤波后的原始数据,系统可以确定局部最大值(与电容的局部最大电容变化对应),以计算手指或者其它导电物体,然后进行解析位置的后处理以报告导电物体的位置,或者进行其它功能,诸如,运动跟踪或者姿态识别。

在一个实施例中,电容式触碰感测系统300可以配置为同时进行自电容感测和互电容感测。在一个实施例中,电容式触碰感测系统300配置为依次或者并行进行自电容感测,以测量触碰感测表面(例如,感测阵列320)的每个行电极和列电极的自电容,从而使针对具有N行和M列的电容式感测阵列的感测操作的总数为N+M。在一个实施例中,电容式触碰感测系统300可能能够将单独的电极连接在一起以利于单个操作来被并行感测。例如,多个行电极(例如,电极331至340)和/或者列电极(例如,电极341至348)可以耦合在一起并且通过单个操作而被感测,以确定导电物体是否正在触碰或者靠近触碰感测表面。在替代实施例中,电容式触碰感测系统300可能能够将每个行电极连接至其自己的感测电路,从而可以利用单个操作来并行感测所有行电极。电容式触碰感测系统300也可能能够将每个列电极连接至其自己的感测电路,从而可以利用单个操作来并行感测所有列电极。电容式触碰感测系统300也可能能够将所有行电极和列电极连接至其自己的感测电路,从而可以利用单个操作来并行感测所有行电极和列电极。

在一个实施例中,电容式触碰感测系统300可以通过单独地感测在行电极与列电极之间的交点来进行触碰感测表面(例如,感测阵列320)的互电容感测。由此,针对具有X行和Y列的电容式感测阵列(例如,感测阵列320)的感测操作的总数为X×Y。在一个实施例中,进行在行电极和列电极的交点处形成的单位单元的互电容测量包括:将信号(TX)施加至一个电极;以及测量因为电极之间的电容耦合而产生的有关另一电极的信号的特性。

在一个实施例中,可以并行使用多个电容感测电路来根据施加至一个或者多个行电极的信号同时测量耦合至多个列电极的信号。在一个实施例中,对于具有同时感测到的X行、Y列和N列的电容式感测阵列(例如,感测阵列320),互电容感测操作的数量是大于或者等于X×Y/N的最小整数。

在一个实施例中,触碰位置的每次更新可以包括感测部分和非感测部分。感测部分可以包括测量与在电极之间的交点相关联的电容,同时非感测部分可以包括基于电容测量结果来计算触碰位置以及向主机装置报告计算得到的触碰位置。

在一个实施例中,电容式触碰感测系统300包括电容式按钮123。电容式按钮123连接至处理装置310。

图4图示了根据一个实施例的包括电容式按钮的感测阵列。感测阵列400包括按钮421、按钮422和按钮423,该按钮421、该按钮422和该按钮423可能是电容式按钮(例如,互电容按钮和/或自电容按钮)。电容式按钮可以设置在基板上。电容式按钮可能具有按钮电极。感测阵列400的主体包含电极430、电极431和电极432。互电容电极对由电极对410和电极对411说明。两个电极的交点形成互电容电极对。出于说明的目的,电极432和电极430的交点可以形成电极对410,并且电极431和电极430的交点可以形成电极对411。在一个实施例中,电容式按钮包括电极对。在自电容扫描期间,可以扫描电极对中的一个电极。在互电容扫描期间,扫描电极对中的两个电极。在一个实施例中,电容式按钮是单个电极。当测量互电容时,单个电极按钮可以使用另一相邻电极(包括另一按钮)来完成电极对。图4图示了可以将由电极430和电极431说明的感测阵列主体测量为自电容阵列和互电容阵列并且将按钮测量为独立自电容电极的情况。应该注意,图4所公开的配置是为了阐释,并且本公开并不限于图4所描述的电极配置。

应该注意,在感测阵列(例如,感测阵列400)上的水可能增加直接被浸没在水下的电极的电容测量结果。当水存在于感测阵列上时,水可能增加测量原始数据,并且当实际上没有触碰存在时,可能看起来像触碰(也称为假触碰)。通过实验,在电容式按钮(例如,按钮421)上的水对相邻的互电容电极对的原始数据测量结果的影响极大,但是对相邻的自电容电极(例如,电极430)的原始数据测量结果的影响不大。例如,如果水存在于按钮421上,那么系统(例如,电子系统100)可能难以辨别通过按钮421测量的原始数据是否表示触碰或者表示因水而产生的假触碰。

在一个实施例中,可以将在按钮上的水与在按钮(例如,按钮421)上的触碰区别开来。可以对电极430进行扫描,并且得出自电容测量结果。另外,可以对电极对410和/或电极对411进行扫描,并且得出互电容测量结果。将自电容测量结果与自电容阈值进行比较,并且将互电容测量结果与互电容阈值进行比较。当自电容测量结果不大于自电容阈值(确定自电容激活为假),并且互电容测量结果比互电容阈值大(确定互电容激活为真)时,确定原始电容数据指示水在按钮上。应该注意,在按钮421与相邻的电极、电极对410和电极430之间的距离被描绘成3mm。3mm的距离是用于说明的目的,并且在按钮与相邻的电极之间的距离可能大于或者小于3mm。

在一个实施例中,由其确定互电容激活的互电容电极对(例如,电极对411)包括由其确定自电容激活的电极(例如,电极430)。在另一实施例中,由其确定互电容激活的互电容电极对不包括由其确定自电容激活的电极。在另一实施例中,电容式按钮(例如,按钮421、按钮422和按钮423)可以是由其确定互电容激活的电极对。在另一实施例中,电容式按钮可以是由其确定互电容激活的电极对的单个电极。在一个实施例中,电容式按钮是由其确定自电容激活的自电容电极。在另一实施例中,即使电容式按钮被水覆盖,也可以检测到触碰。如下面将阐释的,当在电容式按钮上检测到水时,处理逻辑确定水触碰检测阈值。当对电容式按钮的电容测量结果超过水触碰检测阈值时,登记触碰。当对电容式按钮的电容测量结果比水触碰检测阈值低时,没有触碰被登记。

在一个实施例中,在感测阵列400上的触碰产生原始电容数据。可以产生针对自电容电极和互电容电极的原始数据。可以将原始数据表示为计数或者点。例如,在电极对410上的触碰可以产生计数170。当没有触碰存在于感测阵列上时,仍然产生原始数据。例如,当没有触碰存在于电极对410上时,原始数据仍然可以登记计数100。可以认为来自不存在触碰的电极或者电极对(例如,由处理装置110提供的)的原始电容数据是基线或者基线值。可以在不同的时间(诸如,在初始启动时并且动态地在感测阵列的使用期间)对基线值进行存储。在前述示例中,计数100可以是基线值,因为其是当没有触碰存在时的原始电容数据。在一个实施例中,在初始化感测阵列400时,扫描感测元件,并且确定基线值并且将其存储在存储器中。

在另一实施例中,由触碰物体(诸如,手指)在感测阵列上进行的触碰提高在触碰位置处的测量电容以高于基线值。例如,在感测阵列上的触碰可以将触碰测量结果从基线计数100提高到170。在一个实施例中,为了登记触碰,将按钮阈值和初始基线值相加以计算触碰检测阈值。例如,如果初始基线值是100并且按钮阈值是60,那么触碰检测阈值是160计数。感测系统将超过160计数的有关电容按钮的任何电容测量结果呈现为触碰。触碰阈值可以是任意的、通过实验、设计者或者通过校准他的或者她的触碰装置的用户而确定。

当水覆盖电容式按钮时,原始电容数据显著增加。因此,来自在感测电极上的水的原始数据在没有触碰存在时看起来像触碰,并且登记假触碰。然而,在某些点,额外水不会显著增加测量原始电容值。例如,在电容式按钮上的小滴水可能将测量电容值从初始基线计数90计数提升至120计数。第二滴水可能将测量电容增加至150计数,然而,第三滴水将测量电容增加至160计数,并且第四滴水将测量电容稍微增加至162计数。在第三滴水之后,额外水仅仅稍微影响在电容式按钮上的测量电容值。初始基线值从120计数变为约160计数的水基线值。当检测到水时,可以使基线从初始基线值(例如,90计数)变为水基线值(例如,160计数)。出于说明的目的,已经提供了图11和图12。

当水覆盖电容式按钮并且由触碰物体触碰时,原始电容数据增加,但是量不与无水的触碰的量相同。例如,在100计数的基线处,在干电容式按钮的触碰可以将电容测量结果增加70计数至总共170计数。在干燥条件下,60点数的按钮阈值可以允许检测触碰(例如,170>100+60)。当按钮或者手指是湿的时,触碰仅仅可以将基线水平增加,例如,15点数。为了在水存在于按钮上时检测水,可以将60计数的按钮阈值重新设置为水阈值,例如,15。提供图12是为了进行说明。

在一个实施例中,当在电容式按钮上检测到水时,使触碰检测阈值变化。由于没有水存在,将初始基线值和按钮阈值相加以形成触碰检测阈值。例如,由于100的初始基线值和60的按钮阈值,触碰检测阈值是160计数。当没有检测到水时,将高于160计数的任何电容测量结果登记为触碰。当在按钮上检测到水时,将触碰检测阈值重新设置为水触碰检测阈值。水触碰检测阈值包括水基线值和水阈值。例如,水基线值为160计数并且水阈值为15计数,并且水触碰检测阈值为175计数。当在按钮上检测到水时,可以将按钮的高于175计数的电容测量结果登记为触碰。应该注意,按钮阈值和水阈值可以包括:补偿电容测量结果的滞后的附加值或者项(例如,按钮滞后值)。也应该注意,水基线值可以随着电容式按钮上的水量波动而改变。可以通过测量具有水但是缺失触碰物体的电容式按钮的电容来动态确定水基线值。

在另一实施例中,可以通过将相邻的自电容电极和互电容电极的测量结果与其相应阈值进行比较来确定附加按钮条件。当自电容测量结果不大于自电容阈值(即,自电容激活为假)并且互电容测量结果不大于互电容阈值(即,互电容激活为假)时,可以确定没有触碰。在一个实施例中,如果不仅自电容激活为真,而且互电容激活为真(即,自电容测量结果比自电容阈值大,并且互电容测量结果比互电容阈值大),那么可以确定胖手指正在触碰按钮并且触碰区域覆盖面板的底侧,或者湿手指正在触碰面板的底部。在另一实施例中,如果自电容激活为真并且互电容激活为假(即,自电容测量结果比自电容阈值大,并且互电容测量结果比互电容阈值小),那么未定义条件。

在下表中对条件进行了概括:

以下方法(方法500、600、700、800和1000)可以由处理逻辑(例如,处理逻辑102)进行,该处理逻辑包括:硬件(电路、专用逻辑等)、软件(诸如,在通用计算系统或者专用机器上运行)、固件(嵌入式软件)、或者其任何组合。在一个实施例中,处理装置110进行上述每个方法的一些或者全部。在另一实施例中,拒水工具120进行每个方法的一些或者全部。在另一实施例中,主机150进行每个方法的一些或者全部操作。可替代地,电子系统100或者电子系统200的其它部件进行每个方法的一些或者全部操作。

图5是图示了根据一个实施例的在电容式按钮上的水检测的方法的流程图。方法500开始于框505,其中,处理逻辑检测感测阵列(例如,感测阵列121)是否被水覆盖。如果感测阵列被水覆盖,那么处理逻辑可以确定未检测到触碰。水可以覆盖感测阵列到如此程度以致于测量触碰变得不切实际或者不必要。在一个实施例中,感测阵列可以被水完全覆盖。在另一实施例中,感测阵列可以被水部分覆盖。在一个实施例中,一半以上的感测阵列被水覆盖。被水覆盖可能表示水膜覆盖感测阵列。构成水覆盖的水量可能是影响感测阵列的电容测量的任何水量。在一个实施例中,为了检测感测阵列是否被水覆盖,处理逻辑使用自电容扫描方法。应该注意,浸没在水下的自电容电极的电容测量结果比来自干手指的电容测量结果大得多。自电容扫描方法可以扫描三个不同的自电容电极。如果自电容测量结果的所有电容测量结果明显比触碰的测量结果高,那么感测阵列被覆盖在水下并且触碰检测是不必要的。在一个实施例中,对中间水平电极、顶部水平电极和底部水平电极进行扫描。在另一实施例中,扫描中间垂直电极和两个边缘的垂直电极。应该注意,可以对在任何组合中的任何数量的自电容电极进行扫描以检测水是否正覆盖感测阵列。

如果感测阵列未被水覆盖,那么方法500继续到框510,其中,处理逻辑鉴于电极的自电容测量结果检测自电容激活。如图4所描述,处理逻辑确定水是否在电容式按钮上。检测自电容激活通过将与电容式按钮相邻的电极的自电容测量结果与自电容阈值进行比较来帮助指示水是否在电容式按钮上。例如,出于说明的目的,通过使用图4,处理逻辑测量电极430的自电容并且将电容测量结果与自电容阈值(例如,10计数)进行比较。应该注意,自电容测量结果可以包括或者可以不包括基线值。当自电容测量结果比自电容阈值大时,自电容激活为真。当自电容测量结果小于或者等于自电容阈值时,自电容激活为假。在一个实施例中,对单个自电容电极进行测量。在另一实施例中,可以对多个电极进行测量以确定单个测量结果。在替代实施例中,可以对多个自电容电极进行测量,并且获得多个自电容测量结果。

方法500继续到框515,其中,处理逻辑鉴于一对电极的互电容测量结果检测互电容激活。应该注意,互电容检测使用TX电极和RX电极。可以认为TX/RX对是一对电极。为了鉴于互电容测量结果检测互电容激活,处理逻辑将一对电极的互电容测量结果与互电容阈值进行比较。例如,出于说明的目的,通过使用图4,处理逻辑测量电极410和/或电极对411的互电容并且将测量结果与互电容阈值(例如,15计数)进行比较。当互电容测量结果比互电容阈值大时,确定互电容激活为真。当互电容测量结果小于或者等于互电容阈值时,确定互电容激活为假。在一个实施例中,对单对互电容电极进行测量。在另一实施例中,可以对多对互电容电极进行测量以确定单个测量结果。在替代实施例中,可以对多对互电容电极进行测量以获得多个电容测量结果。应该注意,互电容电极可以与电容式按钮相邻。

方法500继续到框520,其中,处理逻辑确定靠近电容式按钮的水的存在。当自电容激活为假并且互电容激活为真时,可以确定水靠近电容式按钮。在另一实施例中,当自电容激活和互电容激活均为假时,处理逻辑确定没有触碰存在。在一个实施例中,当自电容激活和互电容激活均为真时,处理逻辑确定未定义状态。在另一实施例中,当自电容激活为真,并且互电容激活为假时,处理逻辑确定胖手指正在触碰按钮并且触碰区域覆盖面板的边缘,或者湿手指正在触碰图8所示的面板的边缘。

图6是图示了根据一个实施例的在检测到靠近电容式按钮的水存在时的触碰的检测的方法的流程图。在一个实施例中,通过图5所呈现的方法500来进行水的检测。方法600开始于框605,其中,当靠近电容式按钮检测到水时,处理逻辑通过将电容式按钮的自电容测量结果与水触碰检测值进行比较来计算触碰激活。在一个实施例中,水触碰检测阈值是最小测量电容值,其中,当靠近电容式按钮检测到水时,处理逻辑将登记针对电容式按钮的触碰。在一个实施例中,水触碰检测阈值包括水基线值和水阈值。应该注意,水基线值可以动态变化。在一个实施例中,处理逻辑利用水基线值来重新设置初始基线值,并且利用水阈值来重新设置按钮阈值。在一个实施例中,可以通过waterFlag(即,水标记)来实现在按钮阈值与水阈值之间的切换。如果将waterFlag设置为逻辑“1”,使用水阈值。当在按钮上检测到水时,可以将waterFlag设置为逻辑“1”。当在按钮上没有水或者水已经被去除时,可以将水标签设置为逻辑“0”。在图4和图7中更加详细地描述了水基线值和水阈值。

方法600继续到框610,其中,处理逻辑确定水是否不再靠近电容式按钮。处理逻辑可以区分是否已经完全去除水或者仅仅是使其减少。处理逻辑可以在初始化之后存储按钮的电容测量结果,并且将初始电容测量结果与当前基线进行比较。基线在检测到水时(例如,水基线值)重新设置,并且重新设置为在处于水下的电容式按钮处测量得到的电容值。当对按钮上的水进行清理时,基线显著降低或者恢复到最初测量的电容值。处理逻辑可以实现检测按钮上的水是否已经被去除的条件框。例如,处理逻辑可以将当前基线(abWotBaseline)与电容式按钮(Btn_Init_Raw)的初始测量电容值加按钮阈值(ButtonThreshold)的分数(Divider*ButtonThreshold)进行比较(Condition:Btn_Init_Raw+Divider*ButtonThreshold<abWotBaseline)。如果条件为假,那么水已经从按钮被去除。如果条件为真,那么水仍然在按钮上。在一个示例中,按钮阈值为49,初始测量电容值为104,当前基线为160计数,并且分数因子(divider)为2/3。条件可以如下描述:Btn_Init_Raw+2/3*ButtonThreshold<abWotBaseline(104+2/3*49<160)。如果条件为假,那么水已经从电容式按钮被去除。当条件为假时,可以将waterFlag设置为逻辑“0”并且处理逻辑可以使用按钮阈值。当条件为真时,处理逻辑确定可以通过使用水阈值来检测触碰。

在另一实施例中,水可以缓慢减少并且对应的测量电容也缓慢降低。在这种情况下,(例如,abWotBaseline=136)上述条件将为假并且可能不会检测得到触碰。例如,在上述示例中,当abWotBaseline=136时,条件将为假并且将使用按钮阈值,而不是水阈值。按钮阈值(例如,49计数)可能明显比水阈值(例如,7计数)大。触碰的测量电容可以是175计数并且水检测值可以是185(水基线值(136)+按钮阈值(49)=185),因此可能不会检测得到触碰。在这种情况下,处理逻辑可以将分数因子变为第二分数因子(例如,分数因子2),该第二分数因子是比分数因子低的值(例如,1/4)。例如,通过使用第二分数因子Divider2(例如,Divider2=l/4),当上述条件(即,条件“Divider”)为假时,新条件如下:(Btn_Init_Raw+Divider2*ButtonThreshold)<abWotBaseline(e.g.,(104+1/4*49)<136)。当Divider2条件为真时,水阈值(WaterThreshold)可以变为WaterThreshold2,该WaterThreshold2可能比WaterThreshold(例如,20计数)大。例如,当来自触碰的测量电容数据是175计数时,可以将其与更新的水检测值(水基线值+水阈值2(136+20=156))进行比较。175计数比156计数的更新的水检测值大,并且检测到触碰。当Divider2条件为假时,水阈值可以变回按钮阈值(例如,49计数),并且水检测值变为水基线值+按钮阈值。

方法600继续到框615,其中,当满足水触碰检测阈值时,检测在电容式按钮上的触碰。在一个实施例中,处理逻辑确定触碰激活是真还是假。当电容式按钮的电容测量结果比水触碰检测阈值大时,满足触碰检测阈值,触碰激活为真并且检测到触碰。当电容式按钮的电容测量结果比水触碰检测阈值小时,未满足触碰检测阈值,触碰激活为假并且未检测到触碰。

图7是图示了根据另一实施例的在靠近电容式按钮检测到水存在时的触碰检测方法的流程图。方法700开始于框705,其中,处理逻辑校准电容式按钮。在一个实施例中,扫描电容式按钮并且记录电容测量结果。扫描可能在开机时进行并且记录初始电容测量结果。在另一实施例中,可以将原始电容数据(例如,abWotRaw)保存为按钮的初始原始电容值(例如,Btn_Init_Raw=abWotRaw)。可以将按钮初始原始电容值设置为初始基线值。可以将waterFlag设置为逻辑“0”(例如,waterFlag=0)。

方法700继续到框710,其中,处理逻辑确定感测阵列(例如,感测阵列121)是否被水覆盖并且对触碰进行检测是否是不必要的。水可以覆盖感测阵列到如此程度以致于测量触碰变得不切实际或者不必要。在一个实施例中,为了检测感测阵列是否被水覆盖,处理逻辑使用自电容扫描方法。应该注意,浸没在水下的自电容电极的电容测量结果比来自干手指的电容测量结果大得多。自电容扫描方法可以扫描三个不同的自电容电极。如果所有自电容测量的电容测量结果明显比触碰的测量结果高,那么感测阵列被覆盖在水下并且触碰检测是不必要的。在一个实施例中,对中间水平电极、顶部水平电极和底部水平电极进行扫描。在另一实施例中,扫描中间垂直电极和两个边缘的垂直电极。应该注意,对于电容测量,可以对任何组合的任何数量的自电容电极进行扫描以检测水是否正覆盖感测阵列。

方法700继续到框715,其中,处理逻辑扫描电容式按钮以获得针对电容式按钮的电容测量结果。测量结果可以是原始电容数据并且被描述为计数或者点。可以通过处理逻辑来存储测量电容值。在一个实施例中,将测量电容值存储为可变abWotRaw。

方法700继续到框720,其中,处理逻辑检查waterFlag是否被设置为逻辑“0”或者“1”。当waterFlag为真(逻辑“1”)时,处理逻辑移动到框755。当waterFlag为假(逻辑“0”)时,处理逻辑移动到框725。在图6中描述了waterFlag的一个具体实施方式。在一个具体实施方式中,在初始化时最初将waterFlag设置为逻辑“0”,如框705所描述。当在电容式按钮上检测到水时,处理逻辑将waterFlag设置为逻辑“1”,如框750所描述的。当在电容式按钮上不再检测得到水时,可以将waterFlag设置为逻辑“0”,如框770所描述。

方法700继续到框725,当处理逻辑确定waterFlag被设置为逻辑“1”时,指示在电容式按钮上已经不再检测得到水。在一个实施例中,在框725中,处理逻辑将在框715中获得的原始电容数据(即,abWotRaw)与触碰检测阈值(例如,abWotBaseline+ButtonThreshold)进行比较。触碰检测阈值包括基线值(即,abWotBaseline)加按钮阈值。按钮阈值可以包括按钮滞后值。按钮滞后值可以将附加计数(例如,3计数至7计数)与按钮阈值相加以对在电容式按钮处的电容测量结果的迟滞做出解释。应该注意,可以将基线值(即,abWotBaseline)设置为按钮的初始电容测量结果(即,Btn_Init_Raw),如框705所描述的。如果原始电容值比触碰检测阈值小,那么未检测到触碰。如果原始电容值比触碰检测阈值大,那么检测到触碰,并且方法700进行到框730。

方法700继续到框730,其中,处理逻辑确定互电容激活。在一个实施例中,处理逻辑通过将一对电极的互电容测量结果与互电容阈值进行比较来确定互电容激活,如图5所示。如果互电容激活为真(即,互电容测量结果大于互电容阈值),那么处理逻辑移动到框765。如果互电容激活为假(即,互电容测量结果小于或者等于互电容阈值),那么处理逻辑移动到框735。

方法700继续到框735,其中,处理逻辑确定自电容激活。在一个实施例中,处理逻辑通过将电极的自电容测量结果与自电容阈值进行比较来确定自电容激活,如图5所示。如果自电容激活为真(即,自电容测量结果>自电容阈值),那么处理逻辑移动到框740。如果自电容激活为假(即,自电容测量结果小于或者等于自电容阈值),那么处理逻辑移动到框750。应该注意,如果互电容激活为真(参见框730)并且自电容激活为假时,那么在按钮上检测到水,如图5所示。

方法700继续到框740,其中,处理逻辑确定在面板的底部是否存在湿手指。如果处理逻辑确定湿手指在面部的底部上,那么方法700返回框710。如果处理逻辑确定在面板的底部上没有湿手指,那么方法700继续到框750。

在方法700的框750中,处理逻辑确定已经在电容式按钮上检测到水并且将基线值重新设置为水基线值(即,abWotBaseline=abWotRaw)并且将waterFlag设置为逻辑“1”。水基线值的值(即,abWotBaseline)是按钮的测量电容,如框715所描述。

在方法700的框755中,处理逻辑确定是否已经去除在电容式按钮上的水。处理逻辑将与按钮阈值和分数因子的乘积相加的在框705中获得的按钮的初始测量电容(Btn_Init_Raw)与水基线值(abWotBaseline)进行比较,如框750所描述(条件=Btn_Init_Raw+Divider*ButtonThreshold<abWotBaseline)。当条件为真(Btn_Init_Raw+Divider*ButtonThreshold<abWotBaseline)时,还未去除水并且处理逻辑进行到框770。当条件为假时,已经去除水并且处理逻辑进行到框760。处理逻辑确定是否已经去除或者已经稍微减少在电容式按钮上的水,如关于图6更加详细地描述的。

方法700继续到框760,其中,当靠近电容式按钮检测到水时,处理逻辑确定在电容式按钮上是否发生触碰。处理逻辑将在框715中获得的电容式按钮的测量电容(AbWotRaw)与水触碰检测阈值进行比较。水触碰检测阈值是与水阈值(WaterThrechold)相加的水基线值(abWotBaseline)。可以如下面描述条件:abWotRaw>abWotBaseline+WaterThrechold。当条件为假时,未检测到触碰。当条件为真时,检测到触碰,并且处理逻辑进行到框765。在图6中进一步描述了:当靠近电容式按钮检测到水时,确定在电容式按钮上的触碰。

方法700继续到框765,其中,处理逻辑报告已经在电容式按钮上感测到触碰。

在方法700的框770处,当如框755所描述的已经从电容式按钮去除水时,处理逻辑使waterFlag变为逻辑“0”。处理也可以将基线(即,abWotBaseline)重新设置为在框705中获得的初始测量电容(Btn_Init_Raw)。应该注意,可以使用不同的基线更新算法。

图8是图示了根据一个实施例的检测包括湿手指触碰的不同触碰类型的方法的流程图。应该注意,湿手指包括湿手指触碰感测阵列以及干手指或者湿手指触碰湿感测阵列。用于检测在干感测阵列上的触碰的参数可能无法检测利用湿手指的触碰或者在感测阵列上的水层。用于检测干感测阵列上的触碰的标准技术包括正常触碰和胖手指触碰。当感测阵列被湿手指触碰时,活动感测器区域明显比胖手指的活动感测器区域大。结果,增加的活动感测器区域导致计算的XY位置显著跳动,并且通常被识别为两根正常手指。使用针对干面板和湿面板的不同设置并且在设置之间动态切换有助于检测在各种条件下的触碰,包括湿手指触碰。为了支持检测湿手指的触碰,处理逻辑识别湿手指在面板上。识别湿手指在面板上有助于正确地处理扫描信号,并且选择适当的处理技术。处理技术包括针对三种类型的触碰的技术:正常手指、胖手指触碰、和湿手指触碰。触碰类型的实时检测允许处理逻辑动态地改变例如用于检测触碰的质心算法的参数,并且改变信号处理以提高位置计算的精确度。

不同类型的触碰创建不同类型的感测器信号。例如,由9mm的正常手指在感测阵列上进行的触碰可以使5个相邻单元激活(参见图13A)。由较大手指(例如,18mm的胖手指)进行的触碰可以使13个相邻单元激活(参见图13B)。由22mm的胖手指进行的触碰可以使20个相邻单元激活。使单元激活表示测量电容高于阈值(例如,30计数)。由9mm的湿手指进行的触碰可以使29个相邻单元激活(参见图13C)。

方法800开始于框805,其中,处理逻辑设置SelfMutResetThreshold和MutSelfResetThreshold的阈值。例如,可以将两个阈值设置为30。

方法800继续到框810,其中,处理逻辑进行感测阵列(例如,感测阵列121)的自电容扫描(SelfCap Scan())。可以将自电容测量结果存储在存储器中。在框815中,如果未检测到触碰,那么处理逻辑返回框805。如果处理逻辑检测到触碰,处理逻辑移动到框820。在框820处,处理逻辑进行感测阵列的互电容扫描(Mutual Scan())。处理逻辑进一步为正常手指计算XY位置(CalculateCentroidPos())。在框825处,处理逻辑确定触碰是否由胖手指进行。如果触碰不是由胖手指进行,处理逻辑进行框830并且确定触碰是正常手指并且重新设置SelfMutResetThreshold和MutSelfResetThreshold的阈值。例如,可以将两个阈值设置为1。处理逻辑可以确定在框820中进行的触碰的XY坐标。如果触碰满足胖手指触碰的标准,那么处理逻辑移动到框835。

在方法800的框835处,处理逻辑确定湿手指是否存在。在一个实施例中,处理逻辑将局部最大值周围的第二圈的单元的测量互电容的总和与总阈值进行比较。图9可以用于帮助图示局部最大值、第一圈和第二圈。如果局部最大值周围的第二圈的总和比总阈值大,那么检测到湿手指。如果局部最大值周围的第二圈的总和小于或者等于总阈值,那么未检测到湿手指。局部最大值可以是具有最大计数(电容测量结果)的单元。可以将单元表示为在XY坐标系统中的正方形。局部最大值周围的第一圈包括:直接围绕局部最大值的8个单元。局部最大值周围的第二圈包括:直接围绕第一圈的16个单元。例如,针对局部最大值周围的第二圈的所有电容数据的总和的总阈值的范围从480计数到520计数。出于说明的目的,描述了针对不同类型的触碰的以下触碰数据。对于18mm的胖手指触碰,局部最大值可以是76计数,局部最大值周围的第一圈的总和可以是412计数,并且局部最大值周围的第二圈的总和可以是355计数。对于22mm的胖手指触碰,局部最大值可以是66计数,局部最大值周围的第一圈的总和可以是328计数,并且局部最大值周围的第二圈的总和可以是406计数。对于在感测阵列上存在水的情况下的9mm的胖手指触碰,局部最大值可以是64计数,局部最大值周围的第一圈的总和可以是379计数,并且局部最大值周围的第二圈的总和可以是599计数。应该注意,可以使用互电容测量结果。如果局部最大值周围的第二圈的互电容测量结果的总和超过例如480计数的总阈值,那么处理逻辑可以确定湿手指存在。

下表包含针对不同类型的触碰的原始数据测量结果。该表示出了在手指区域中的局部最大值和针对不同种类的触碰的局部最大值周围的第一圈和第二圈的原始电容数据。

在另一实施例中,处理逻辑可以通过对具有比湿手指阈值大的互电容测量结果的、在局部最大值周围的第一圈和第二圈中的单元数进行比较来确定湿手指的存在。具有比湿手指阈值大的互电容测量结果的在、局部最大值周围的第一圈和第二圈中的单元数可能对于湿手指而言比对于胖手指大。例如,可以将湿手指阈值设置为局部最大值除以二或者局部最大值除以三。在两种情况下,具有比湿手指阈值大的互电容测量结果的单元数对于湿手指而言比对于胖手指大。例如,22mm的胖手指可以产生66计数的局部最大值。与设置为局部最大值除以2的阈值相比较,超过阈值的单位数在第一圈中为5并且在第二圈中为7。相比较而言,9mm的湿手指可以产生64计数的局部最大值。与设置为局部最大值除以二的阈值相比较,超过阈值的单位数在第一圈中为8,而在第二圈中为13。在另一示例中,22mm的胖手指与设置为局部最大值除以3的阈值相比较,超过阈值的单位数在第一圈中为5,而在第二圈中为8。相比较而言,9mm的湿手指与设置为局部最大值除以3的阈值相比较,超过阈值的单位数在第一圈中为8,而在第二圈中为15。如果超过胖手指阈值的单位数比数字(例如,17)大,那么处理逻辑可以确定触碰是否是湿手指。

下面提供了示出了识别湿手指的两种方法的计算的表格:

如果在框835中未检测到湿手指,那么处理逻辑进行到框840以检测胖手指的触碰。处理逻辑通过使用函数FatFinger_CorrectCoord()计算在感测阵列上的触碰的XY坐标来检测胖手指(例如,14mm或者更大的手指)触碰。处理逻辑可以将两个阈值:SelfMutResetThreshold和MutSelfResetThreshold都设置为1。

如果在框835中检测到湿手指,那么处理逻辑进行的框845以检测湿手指的触碰。RawDataCorrection()是检测在感测阵列(例如,感测阵列121)的边缘上的湿手指的函数。当湿手指在感测阵列的边缘上时,局部最大值周围的第二圈的互电容测量结果的总和将比湿手指在感测阵列的中心附近的时候小。第二圈可以包括比18个单元少的单元数。转向图9,出于说明的目的,如果局部最大值处于S14,局部最大值周围的第二圈将延伸到感测阵列900的活动区域外,并且将仅仅具有13个单元。当触碰的局部最大值在最后一列或者行中或者紧挨着最后一列或者行时,如果触碰位于感测阵列的中心附近,活动单元数将变得更小。当处理逻辑检测到局部最大值在最后一列或者行中或者紧挨着最后一列或者行时,处理逻辑可以降低上述总阈值或者湿手指阈值,从而可以识别来自湿手指的触碰。

在另一实施例中,函数RawDataCorrection()也可以报告实际上在感测阵列的边缘(来自边缘的第一两行或者列)上的湿手指。然而,过剩水量将导致触碰位置的计算朝显示器的中心移动。图10将进一步描述该实施例。

继续方法800的框845的讨论,处理逻辑可以应用以下函数。函数CalculateCentroidPos()是用于计算正常手指的XY坐标位置的函数。函数SetWetFingerParam()将用于检测湿手指的参数应用于条件FatFinger_CorrectCoord()。FatFinger_CorrectCoord()用于计算针对胖手指的触碰的XY坐标位置。函数RestoreFatFingerParam()将针对胖手指检测的参数应用于函数FatFinger_CorrectCoord()。

图9是根据一个实施例的在感测阵列中的单元的示例。在一个实施例中,感测阵列900表示感测阵列121的感测元件(例如,电极)的交点。在一个实施例中,处理逻辑(例如,处理逻辑102)配置为检测在感测阵列121(例如,电容式感测阵列)上的一个或者多个触碰。该一个或者多个触碰产生有关感测阵列121的触碰数据,并且处理逻辑测量触碰数据。可以将触碰数据表示为多个单元(例如,感测阵列900),每个单元(例如,S0x-S8x)表示感测阵列121(例如,电容式感测阵列)的感测元件的交点。在图9中,S0x-S8x所标记的单元表示识别单元的名称。在一个实施例中,名称S00-S88表示与感测阵列121对应的单元的位置。在一个实施例中,在感测阵列121上的一个或者多个触碰产生有关感测阵列900的单元的触碰数据,并且可以将触碰数据表示为计数(未示出)。

在一个实施例中,通过局部最大值901来说明局部最大值(即,具有最大计数的单元)。局部最大值周围的第一圈由第一圈902表示并且包括8个单元。局部最大值周围的第二圈是第二圈903并且包括16个单元。

图10是图示了根据一个实施例的检测湿手指的触碰的方法的流程图。方法1000表示图8所示的RawDataCorrection()函数。当湿手指在面板的边缘上并且水覆盖相邻区域时,接近局部最大值的测量互电容数据很高并且非常接近局部最大值,如图14A所示。在这种情况下,质心函数(例如,CalculateCentroidPos())可以使靠近感测阵列的边缘触碰的坐标朝相邻区域移动,即使真实的触碰在处于感测阵列的边缘处的局部最大值上或者接近该局部最大值。

在一个实施例中,如果检测到湿手指并且局部最大值直接在最外行或者列(即,第一行或者列或者最后一行或者列)中的单元上,那么真实触碰在边缘上,但是相邻单元的高信号使XY坐标位置朝感测阵列的中心移动。结果,处理逻辑可能在定义诸如滑动和轻弹的姿态时有困难。为了避免移动,可以通过处理逻辑来人为地使除了局部最大值之外的相邻单元的信号减少,并且使用减小的电容值而重新计算触碰的位置。例如,如果除了局部最大值之外的所有信号都除以3,那么测量互电容值将减少,如图14B所示。应该注意,初始触控数据未被示出。

在另一实施例中,如果检测到湿手指并且局部最大值在倒数第二行或者列中,那么相邻单元的高信号也可以使XY坐标位置朝感测阵列的中心移动。在这种情况下,也可以通过处理逻辑来人为地使除了局部最大值外的相邻单元的信号减少。然而,在这种情况下,处理逻辑可以选定比上述情况小的分数因子。例如,分数因子可能是2/3。分割线可以为不同类型的感测阵列(例如,感测阵列121)进行评估和调谐。通过图14C来说明除以较小分数因子的触控数据。应该注意,初始触控数据未被示出。

图11是图示了根据一个实施例的重新设置的水基线的图表。在一个实施例中,图表1100图示了在有水的情况下和在无水的情况下的电容式按钮上的电容式测量结果。Y轴线示出了电容式测量结果作为计数,即,计数1110。图表1100示出了98计数的初始基线值。第一滴水使电容测量结果增加至约120计数。第二滴水使电容测量结果增加至约155计数。可以将初始基线值重新设置为155的水基线值。

图12是图示了根据一个实施例的在不同条件下的电容式按钮的电容测量的图表。在一个实施例中,图表1200图示了在没有水的按钮上、具有变化的水量和在按钮上有水的情况下触碰的电容式测量结果。以Y轴线来将电容测量结果表示为计数,即,计数1210。初始基线值为约100计数。第一滴水使电容测量结果增加至约122计数。第二滴水使电容测量结果增加至约146计数。第三滴水使电容测量结果增加至约156计数。第四滴水仅仅使电容测量结果稍微增加至160计数。应该注意,附加水仅仅可以稍微增加在按钮处的电容测量结果。将初始基线重新设置为约160计数的水基线。如图所示,9mm手指的触碰使测量电容从约22计数增加至约182计数。

图13A图示了根据一个实施例的感测阵列的单元。感测阵列1300图示了以一系列的行和列的感测阵列的单元。单元包含触碰数据。在该说明中,已经去除基线值,并且仅仅示出了触碰的测量电容值。感测阵列1300示出了9mm的干手指在感测阵列上的触碰数据。

图13B图示了根据另一实施例的感测阵列的单元。感测阵列1310图示了以一系列的行和列的感测阵列的单元。单元包含触碰数据。在该说明中,已经去除基线值,并且仅仅示出了触碰的测量电容值。感测阵列1310示出了18mm的干手指(例如,胖手指)在感测阵列上的触碰数据。

图13C图示了根据另一实施例的感测阵列的单元。感测阵列1320图示了以一系列的行和列的感测阵列的单元。单元包含触碰数据。在该说明中,已经去除基线值,并且仅仅示出了触碰的测量电容值。感测阵列1320示出了9mm的湿手指在感测阵列上的触碰数据。

图14A图示了根据一个实施例的感测阵列的单元。感测阵列1400图示了以一系列的行和列的感测阵列的单元。单元包含测量电容值。在该说明中,已经去除基线值,并且仅仅示出了触碰的测量电容值。感测阵列1400示出了9mm的湿手指在感测阵列的边缘上的测量电容数据。接近局部最大值的原始数据很高并且接近局部最大值。

图14B图示了根据一个实施例的感测阵列的单元。感测阵列1410图示了以一系列的行和列的感测阵列的单元。单元包含除了局部最大值之外除以分数因子的测量电容值。在该说明中,已经去除基线值,并且仅仅示出了触碰的测量电容值。感测阵列1400示出了在通过分数因子进行校正之后,9mm的湿手指在感测阵列的边缘上的测量电容数据。

图14C图示了根据一个实施例的感测阵列的单元感测阵列1420图示了以一系列的行和列的感测阵列的单元。单元包含除了局部最大值之外除以分数因子的测量电容值(比图14B小)。在该说明中,已经去除基线值,并且仅仅示出了触碰的测量电容值。感测阵列1420示出了在通过分数因子进行校正之后,9mm的湿手指在感测阵列的边缘上的测量电容数据。

下表包括用于评估上述公开内容的测试中的一些:

可以用电容式触摸屏控制器来实现处理逻辑(例如,处理逻辑102)。在一个实施例中,电容式触摸屏控制器是电容式触摸屏控制器,诸如,加利福尼亚州圣何塞Cypress Semiconductor Corporation公司开发的Multi-Touch All-Points触摸屏控制器的CY8CTMA3xx家族。解析多个手指和触控笔在触摸屏上的触碰位置的电容式触摸屏控制器感测技术支持操作系统,并且是针对低功率多触碰姿态和全部点触摸屏功能而被优化。可替代地,可以用其它触摸屏控制器、或者触碰感测装置的其它触碰控制器来实现触碰位置计算特征。在一个实施例中,可以利用具有本公开的权益的本领域的普通技术人员所认识到的其它触碰滤波算法来实现触碰位置计算特征。

本文所描述的实施例可以用于各种设计的互电容感测系统、自电容感测系统、或者两者的组合。在一个实施例中,电容感测系统检测在阵列中的激活的多个感测元件,并且可以分析在相邻感测元件上的信号图案以将噪音与实际信号分离。本文所描述的实施例不依赖于特定电容式感测解决方法,并且也可以与其它感测解决方案一起使用,包括光学感测解决方案,如具有本公开的权益的本领域的普通技术人员所认识到的。

在上述说明中,陈列了大量细节。然而,具有本公开的权益的本领域的普通技术人员将认识到,可以在没有这些具体细节的情况下实践本发明的实施例。在某些情况下,以框图形式,而不是详细地示出了熟知的结果和装置,以避免使说明模糊不清。

根据有关计算机存储器内的数据位的算法和符号性表征来呈现详细说明中的某些部分。这些算法说明和表征是在数据处理领域中的技术人员所使用的手段,该手段将其工作的物质更加有效地输送至本领域的其它人员。通常认为这里的算法是导致期望结果的自容顺序的步骤。步骤为物理量的物理操作所需的步骤。通常,虽然不一定,但是这些量采取能够被存储、传送、结合、比较并且另外操作的电信号或者磁信号。事实证明,主要由于通用性,有时候便于将这些信号称为比特、值、元件、符号、字符、项、数字等。

然而,应该记住,所有这些相似的术语均与适当地物理量相关联,并且仅仅为应用于这些量的方便标签。除非有另外的特别说明,如从上述讨论中可以明显地看出,要认识到,贯穿说明书,利用术语“确定”、“检测”、“比较”、“重新设置”、“相加”、“计算”等的讨论指的是计算系统或者相似的电子计算装置的动作和过程,该计算系统或者相似的电子计算装置将表示为在计算系统的寄存器和存储器内的物理(例如,电子)量的数据处理并且转变为同样表示为在计算系统存储器或者寄存器或者其它这种信息存储、传输或者显示装置中的物理量的其它数据。

在本文中使用词“示例”或者“示例性”来表示充当示例、例子或者说明。在本文中被描述为“示例”或者“示例性”的任何方面或者设计不一定被理解为比其它方面和设计优先或者有利。确切地说,词“示例”或者“示例性”的使用是为了以具体的方式来表述概念。如在本申请中所使用的,术语“或者”表示包括“或者”,而不是不包括“或者”。即,除非另有规定,或者通过上下文明白,“X包括A或者B”表示任何自然包括排列。即,如果X包括A,X包括B,或者X包括A和B,那么在任何前述例子下,满足“X包括A或者B”。另外,在本申请和所附权利要求书中所使用的冠词“一个(a)”和“一个(an)”应该通常被解释为表示“一个或者多个”,除非另有规定或者通过上下文明白涉及单数形式。此外,贯穿上下文的术语“一个(an)实施例”或者“一个(one)实施例”或者“一个(an)具体实施方式”或者“一个(one)具体实施方式”并不表示相同的实施例或者具体实施方式,除非如此描述。

本文所描述的实施例也可以涉及一种用于进行在本文中的操作的设备。为了需要的目的,可以对该设备进行特别构造,或者其可以包括由存储在计算机中的计算机程序选择性地激活或者重新配置的通用计算机系统。可以将这种计算机程序存储在非暂时性计算机可读存储介质中,诸如,但不限于,包括软盘、光盘、CD-ROM和磁光盘的任何类型盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或者光卡、闪存、或者用于存储电子指令的其它类型的媒体。应该将术语“计算机可读存储介质”采取为包括:存储一组或者多组指令的单个介质或者多个媒体(例如,集中的或者分布式数据库和/或相关高速缓存器和服务器)。也应该将数据“计算机可读介质”采取为包括:能够存储、编码或者携带由机器执行并且使机器进行本实施例的方法中的任何一种或者多种的一组指令的任何介质。因此,也应该将数据“计算机可读存储介质”采取为包括但不限于:固态存储器、光学媒体、磁媒体、能够存储、编码或者携带由机器执行并且使机器进行本实施例的方法中的任何一种或者多种的一组指令的任何介质。

本文所呈现的算法和显示并不是天生涉及任何特定计算机或者其它设备。各种通用系统可以与根据本文的教导的程序一起使用,或者其可以证明便于将更专业的设备构造为进行需要的方法步骤。各种这些系统所需的结果将通过以下描述变得显而易见。另外,并未参照任何特定编程语言来描述本发明。将认识,各种编程语言可以用于实现本文所描述的实施例的教导。

上述说明提出了大量具体细节,诸如,具体系统、部件、方法等的示例,以提供对本发明的几个实施例的很好的理解。然而,对于本领域的技术人员而言,可以在没有这些具体细节的情况下实行本发明的至少一些实施例是显而易见的。在其它情况下,熟知的部件或者方法未被详细描述或者以简单的框图形式被呈现,以避免不必要地使本发明模糊不清。由此,上面提出的具体细节仅仅是示例性的。特定具体实施方式可能与这些示例性细节不同并且仍然考虑其在本发明的范围内。

要理解,上述说明是说明性的,而不是限制性的。在读取并且理解上述说明时,对于本领域的技术人员而言,许多其它实施例将变得显而易见。因此,应该参照所附权利要求书连同与这些权利要求有权享有的全部等同范围来确定本发明的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1