压敏键盘的键击确定

申请号 CN201310096345.7 申请日 2013-03-04 公开(公告)号 CN103455151B 公开(公告)日 2017-05-17
申请人 微软技术许可有限责任公司; 发明人 S·德拉斯宁; S·M·梅尔; J·T·贝勒休; T·C·肖; M·R·卢茨; P·H·迪茨;
摘要 压敏 键盘 包括与键盘的按键相关联的多个压 力 传感器 。响应于对键盘的一个或多个按键施加的压力,确定所施加的压力是否是键击(按键的用户选择)。多种不同因素可以用于确定所施加的压力是否是键击,比如所施加的压力的量、施加压力的速率、施加了压力的按键的数量、相对于在先键击施加压力的时间等等。
权利要求

1.一种键击确定方法,包括:
获取(3202)对压敏键盘的按键施加的压的指示,其中所述压敏键盘被配置为能够在物理和通信上从计算设备移除;
响应于对所述按键施加的压力上升至按键按压阈值量且不多于阈值数量的按键被同时按压,确定(3214、3308)对所述按键施加的压力是键击;以及
仅在去抖时间量经过之后,响应于对所述按键施加的压力下降至按键释放阈值量,确定所述按键被释放。
2.如权利要求1所述的方法,所述确定包括,响应于对所述按键施加的压力上升至按键按压阈值量且不多于阈值数量的按键被同时按压以及自按键先前被敲击和被释放以来己经经过了阈值时间量,确定对所述按键施加的压力是键击。
3.如权利要求1所述的方法,所述确定包括,响应于对所述按键施加的压力上升至按键按压阈值量且不多于阈值数量的按键被同时按压以及自所述键盘的不同按键先前被敲击以来己经经过了阈值时间量,确定对所述按键施加的压力是键击。
4.如权利要求1所述的方法,对于所述键盘的不同按键,所述按键按压阈值量不同。
5.如权利要求1所述的方法,还包括,作为用户定制过程的一部分,为用户识别所述按键按压阈值量的特定值。
6.如权利要求1所述的方法,还包括,至少部分地基于所述计算设备的配置、所述计算设备的方位、和/或运行在所述计算设备上的应用来确定所述按键按压阈值量。
7.如权利要求1所述的方法,还包括,在确定对所述按键施加的压力是键击之后,基于对所述按键施加的压力,确定向用户呈现与所述按键相对应的字符的方式和/或响应于键击而向用户提供反馈的方式。
8.一种键击确定方法,包括:
获取(3202)对键盘的按键施加的压力的指示:以及
响应于(a)对所述按键施加的压力上升至所述按键的按键按压阈值量,和(b)在对所述按键施加的压力上升至所述按键的所述按键按压阈值量的特定时间量内,对所述按键施加压力的速率上升至阈值速率,确定(3214,3308)对所述按键施加的压力是键击,所述按键按压阈值量对所述键盘的不同按键不同。
9.如权利要求8所述的方法,还包括:
响应于对所述按键施加的压力超过特定量但是未上升至所述按键按压阈值量,确定手指或手正搁在所述键盘上;以及
响应于确定手指或手正搁在所述键盘上,禁用包括所述键盘的输入设备的一个或多个另外的输入组件。
10.如权利要求8所述的方法,还包括:
响应于在所述键盘的特定的一个或多个按键上,对所述按键施加的压力超过特定量但是未上升至所述按键按压阈值量,识别出回复原位行为;以及
响应于识别出回复原位行为,使得反馈组件能够响应于确定后来对所述键盘的至少一个按键施加的压力是键击而提供触觉反馈

说明书全文

压敏键盘的键击确定

[0001] 相关申请
[0002] 本申请根据35U.S.C.§119(e)要求以下美国临时专利申请的优先权,这些申请中的每一份申请的所有内容在此都通过引用被全文引入:
[0003] 2012年3月2日提交的律师案卷号为336082.01、名称为“Screen Edge”、申请号为61/606,321的美国临时专利申请;
[0004] 2012年3月2日提交的律师案卷号为336083.01、名称为“Input Device Functionality”、申请号为61/606,301的美国临时专利申请;
[0005] 2012年3月2日提交的律师案卷号为336084.01、名称为“Functional Hinge”、申请号为61/606,313的美国临时专利申请;
[0006] 2012年3月2日提交的律师案卷号为336086.01、名称为“Usage  and Authentication”、申请号为61/606,333的美国临时专利申请;
[0007] 2012年3月21日提交的律师案卷号为336086.02、名称为“Usage  and Authentication”、申请号为61/613,745的美国临时专利申请;
[0008] 2012年3月2日提交的律师案卷号为336087.01、名称为“Kickstand and Camera”、申请号为61/606,336的美国临时专利申请;以及
[0009] 2012年3月6日提交的律师案卷号为336143.01、名称为“Spanaway Provisional”、申请号为61/607,451的美国临时专利申请,
[0010] 此外,本申请还通过引用全文引入了以下申请:
[0011] 2012年5月14日提交的律师案卷号为336554.01、名称为“Flexible Hinge and Removable Attachment”、申请号为_______的美国专利申请;
[0012] 2012年5月14日提交的律师案卷号为336563.01、名称为“Input Device Layers and Nesting”、申请号为______的美国专利申请。

背景技术

[0013] 移动计算设备已发展,以在移动场景中增加用户可用的功能。例如,用户可以与移动电话、平板计算机或其它移动计算设备进行交互,以检查电子邮件、网上冲浪、撰写文本、与应用交互等。然而,传统移动计算设备常常采用使用设备的触摸屏功能来访问的虚拟键盘。这通常被采用来最大化计算设备的显示区域的量。
[0014] 然而,虚拟键盘的使用可能使期望提供大量输入(比如,输入大量文本以撰写长电子邮件、文档等)的用户沮丧。因此,常规移动计算设备常常被认为对于这种任务用处有限,尤其是与用户可使用例如常规桌面型计算机的常规键盘来输入文本时的便易相比。但是对于移动计算设备而言,常规键盘的使用可能减弱移动计算设备的移动性,从而可能使移动计算设备不太适于其在移动场景中的期望的用途。发明内容
[0015] 本文描述了压敏键盘的键击确定的技术。在一个或多个实现方式中,获取对压敏键盘的按键施加的压的指示,所述键盘被配置为能够在物理和通信上从计算设备移除。如果对所述按键施加的压力上升至按键按压阈值量,确定对所述按键施加的压力是键击。
[0016] 在一个或多个实现方式中,获取对键盘的按键施加的压力的指示。如果对所述按键施加的压力上升至按键按压阈值量,并且在对所述按键施加的压力上升至所述按键按压阈值量的特定时间量内,对所述按键施加的压力还上升至选择阈值量或者对所述按键施加的压力上升至阈值速率,确定对所述按键施加的压力是键击。
[0017] 在一个或多个实现方式中,获取对压敏键盘的按键施加的压力的指示。如果以下条件成立,确定对所述按键施加的压力是键击:对所述按键施加的压力上升至按键按压阈值量;不多于阈值数目的按键被同时按压;自按键先前被敲击和被释以来已经过去了第一阈值时间量;以及自所述键盘的不同按键先前被敲击以来已经过去了第二阈值时间量。
[0018] 本发明内容被提供用来以简要形式介绍概念的选择,以下将在具体实施方式中对此进行进一步的描述。本发明内容既不是旨在识别所要求保护的主题的关键特征或本质特征,也不是旨在用于帮助确定所要求保护的主题的范围。附图说明
[0019] 将参照附图描述具体实施方式。在附图中,参考号的最左侧的数字标识所述参考号最先出现的图。在说明书和附图中,不同实例中的相同参考号的使用可以表示相似或相同项目。附图中所示的实体可以表示一个或多个实体,因此,在讨论中,可以可互换地引用实体的单数或复数形式。
[0020] 图1是在示例实现方式中可运行来采用本文所描述的技术的环境的例图。
[0021] 图2描述了图1的输入设备的示例实现方式,其更详细地示出了柔性铰链
[0022] 图3描述了示例实现方式,其示出了图2的连接部的透视图,该连接部包括机械耦合突起物和多个通信触点。
[0023] 图4描述了图2的输入设备的键盘的压敏按键的横截面视图的示例。
[0024] 图5描述了当在柔性接触层的第一位置施加压力以使得接触传感器基板的相应第一位置时图4的压敏按键的示例。
[0025] 图6描述了当在柔性接触层的第二位置施加压力以使得接触传感器基板的相应第二位置时图4的压敏按键的示例。
[0026] 图7描述了当采用力集中器层时图4的压敏按键的示例。
[0027] 图8描述了当在力集中层的多个不同位置施加压力以使得柔性接触层接触传感器基板时图7的压敏按键的示例。
[0028] 图9A示出了包括多个压敏按键的键盘的横截面的视图的示例,所述压敏按键采用力集中器层。
[0029] 图9B示出了当包括一个或多个切口(cut)以增加邻近切口的层的柔性时力集中器的顶视图的示例。
[0030] 图10描述了一个按键上的压力随时间而变的图的示例,其示出了键击。
[0031] 图11描述了一个按键上的压力随时间而变的图的示例,其示出了由于尚未经过相同按键排斥时间量而导致的无效按键按压。
[0032] 图12描述了一个按键上的压力随时间而变的图的示例,其示出了相同按键的多次键击。
[0033] 图13描述了多个按键上的压力随时间而变的图的示例,其示出了由于尚未经过不同按键排斥时间量而导致的无效按键按压。
[0034] 图14描述了多个按键上的压力随时间而变的图的示例,其示出了不同按键的多个键击。
[0035] 图15描述了多个按键上的压力随时间而变的图的示例,其示出了在近似相同的时刻按压的多个按键。
[0036] 图16描述了多个按键上的压力并行地随时间而变的图的示例,其示出了由并行地按压按键而导致的多个键击。
[0037] 图17描述了多个按键上的压力并行地随时间而变的图的示例,其示出了由并行地按压按键而导致的多个键击。
[0038] 图18描述了多个按键上的压力并行地随时间而变的图的示例,其示出了由并行地按压按键而导致的无效按键按压。
[0039] 图19描述了一个按键上的压力随时间而变的图的示例,其示出了键击。
[0040] 图20描述了一个按键上的压力随时间而变的图的示例,其示出了无效按键按压。
[0041] 图21描述了一个按键上的压力随时间而变的图的示例,其示出了由于尚未经过相同按键排斥时间量而导致的无效按键按压。
[0042] 图22描述了一个按键上的压力随时间改变的图的示例,其示出了对相同按键的多次键击。
[0043] 图23描述了多个按键上的压力随时间而变的图的示例,其示出了由于尚未经过不同按键排斥时间量而导致的无效按键按压。
[0044] 图24描述了多个按键上的压力随时间而变的图的示例,其示出了不同按键的多个键击。
[0045] 图25描述了多个按键上的压力随时间而变的图的示例,其示出了在近似相同的时刻按压的多个按键。
[0046] 图26描述了多个按键上的压力并行地随时间而变的图的示例,其示出了由并行地按压按键而导致的多个键击。
[0047] 图27描述了多个按键上的压力并行地随时间而变的图的示例,其示出了由并行地按压按键而导致的多个键击。
[0048] 图28描述了多个按键上的压力并行地随时间而变的图的示例,其示出了由并行地按压按键而导致的无效按键按压。
[0049] 图29描述了一个按键上的压力随时间而变的图的示例,其示出了键击。
[0050] 图30描述了按键上的压力随时间而变的图的示例,其示出了休息位置(resting position)。
[0051] 图31是在示例实现方式中可运行来采用本文所描述的技术的系统的例图。
[0052] 图32是示出了根据一个或多个实施例的用于实现本文所描述的技术的示例过程的流程图
[0053] 图33是示出了根据一个或多个实施例的用于确定是否发生了键击的示例过程的流程图。
[0054] 图34示出了包括示例设备的各种组件的示例系统,其可以被实现为如参照图1-33描述的任何类型的计算设备,以实现本文所描述的技术的实施例。

具体实施方式

[0055] 综述
[0056] 本文描述了压敏键盘的键击确定的技术。压敏键盘包括与键盘的按键相关联的多个压力传感器。响应于对键盘的一个或多个按键施加的压力,确定所施加的压力是否是键击(对按键的用户选择)。多种不同因素可以用于确定所施加的压力是否是键击,比如所施加的压力的量、施加压力的速率、施加了压力的按键的数量、相对于在先键击施加压力的时间等等。
[0057] 在以下讨论中,首先描述了可以采用本文描述的技术的示例环境。然后,描述了可以在示例环境和其它环境中执行的示例过程。因此,示例过程的执行不受限于示例环境,并且示例环境不受限于示例过程的执行。
[0058] 示例环境和示例过程
[0059] 图1是在示例实现方式中可运行来采用本文所描述的技术的环境100的例图。所示环境100包括计算设备102的示例,其经由柔性铰链106物理地且可通信地耦合至输入设备104。可以以多种方式配置计算设备102。例如,计算设备102可以配置用于移动用途,比如移动电话、如图所示的平板计算机等。因此,计算设备102的范围可以从具有丰富的存储器和处理器资源的全资源设备到具有有限的存储器和/或处理资源的低资源设备。计算设备102还可以涉及使计算设备102执行一个或多个操作的软件
[0060] 计算设备102例如被图示为包括输入/输出模108。输入/输出模块108代表与计算设备102的输入处理和输出呈现相关的功能。输入/输出模块108可以处理多种不同输入,比如,与对应于输入设备104的按键或显示设备110所显示的虚拟键盘的按键的功能相关的输入,以识别可经由输入设备104和/或显示设备110的触摸屏功能等识别出的手势并使得执行与手势相对应的操作。因此,输入/输出模块108可以通过识别出和利用包括按键按压、手势等的输入类型之间的差异(division)而支持多种不同的输入技术。
[0061] 尽管其它按键布局也被考虑,但是在所图示示例中,输入设备104被配置为具有QWERTY的按键布局的键盘。此外,其它非常规配置也被考虑,比如,游戏控制器、模仿乐器的配置等。因此,输入设备104和输入设备104包括的按键可以采取多种不同配置,以支持多种不同功能。
[0062] 如前所述,在该示例中,输入设备104通过使用柔性铰链106物理地且可通信地耦合至计算设备102。柔性铰链106的柔性在于通过构成铰链的材料的挠曲(例如,弯曲)来完成铰链所支持的旋转移动,这与销(pin)所支持的机械旋转不同,尽管机械旋转的实施例也是被考虑的。此外,这种柔性旋转可以被配置来支持沿一个方向(例如,附图中垂直地)的移动,然而限制沿其它方向的移动,比如输入设备104相对于计算设备102的横向移动。这可以用于支持输入设备104相对于计算设备102的一致的对准,比如对准用于改变电力状态、应用状态等的传感器。
[0063] 柔性铰链106例如可以通过使用一个或多个织物层来形成,并且包括形成为柔性迹线(flexible trace)的导体,以将输入设备104可通信地耦合至计算设备102,反之亦然。这个通信例如可以用于将按键按压的结果传输至计算设备102,从计算设备接收电力,执行认证,向计算设备102提供补充电力,等等。可以以多种方式来配置柔性铰链106,其进一步的讨论可以参照下图找到。
[0064] 图2描述了图1的输入设备104的示例实现方式200,其更详细地示出了柔性铰链106。在该示例中,示出了输入设备的连接部202,连接部202被配置为提供在输入设备104和计算设备102之间的通信和物理的连接。在该示例中,连接部202具有高度和横截面,被配置为容纳在计算设备102的外壳中的沟道中,虽然这种布置也可以在不背离其精神和范围的情况下被颠倒。
[0065] 连接部202使用柔性铰链106柔性地连接至包括按键的输入设备104的一部分。因此,当连接部202物理地连接至计算设备时,连接部202和柔性铰链106的组合支持输入设备104相对于计算设备102的移动,这类似于书的铰链。
[0066] 例如,柔性铰链106可以支持旋转移动,使得输入设备104可以靠着计算设备102的显示设备110放置,从而充当遮蔽物。输入设备104还可以被旋转,以被设置来靠着计算设备102的背面,例如靠着计算设备102的后面的外壳(其在计算设备102上被布置在与显示设备
110相反的一侧)。
[0067] 自然地,也支持多种其他方位。例如,计算设备102和输入设备104可以采用使得二者被靠着如图1所示的表面平坦放置的布置。在另一实例中,可以支持打字布置,其中,靠着表面平坦放置输入设备104并且按度放置计算设备102,以例如通过使用布置在计算设备102的背面的支架来允许显示设备110的观看。在另一实例中,可以支持这样的布置:其中,靠着显示设备110的背面平坦放置输入设备104,按键向外(沿着与显示设备110的显示近似相反的方向),这允许用户在观看显示设备110所显示的输出时抓住显示设备110并利用其手指触摸在显示设备110的背面的输入设备104的按键。其它实例也被考虑,比如,三脚架布置、会议布置、呈现布置等。
[0068] 在该示例中,连接部202被图示为包括磁耦合设备204、206,机械耦合突起物208、210和多个通信触点212。磁耦合设备204、206被配置为通过使用一个或多个磁体来磁耦合至计算设备102的互补的磁耦合设备。按照这种方式,输入设备104可以通过使用磁吸引力在物理上固定到计算设备102。
[0069] 连接部202还包括机械耦合突起物208、210,以在输入设备104和计算设备102之间形成机械的物理连接。将在下图中更详细地示出机械耦合突起物208、210。
[0070] 图3描述了示例实现方式300,其示出了图2的连接部202的透视图,其包括机械耦合突起物208、210和多个通信触点212。如图所示,机械耦合突起物208、210被配置为远离连接部202的表面延伸,尽管也考虑其它角度,但是在这种情况下是垂直的。
[0071] 机械耦合突起物208、210被配置为容纳在计算设备102的沟道内的互补的空腔内。当被这样容纳时,当施加了与轴(被定义为与突起物的高度和空腔的深度一致)不成一条线的力时,机械耦合突起物208、210促进设备之间的机械绑定。
[0072] 例如,当施加与沿着突起物的高度和空腔的深度的前述纵向轴一致的力时,用户将只克服磁体所施加的力来从计算设备102分离出输入设备104。然而,在其它角度,机械耦合突起物208、210被配置为机械地绑定在空腔内,从而创建力并加上磁耦合设备204、206的磁力来阻止输入设备104从计算设备102移除。按照这种方式,机械耦合突起物208、210可以使输入设备104从计算设备102的移除偏向(模仿从书撕页),并限制分离设备的其它尝试。
[0073] 连接部202还被图示为包括多个通信触点212。所述多个通信触点212被配置为接触计算设备102的相应通信触点,以在设备间形成通信耦合。可以按照多种方式配置通信触点212,比如通过使用多个弹簧销(spring loaded pin)来形成,所述弹簧销被配置为在输入设备104和计算设备102之间提供一致的通信触点。因此,通信触点可以被配置为在设备的冲撞的较小移动期间保持不变。多种其它示例也是被考虑的,包括将销放置在计算设备102上以及将触点放置在输入设备104上。
[0074] 图4描述了图2的输入设备104的键盘的压敏按键400的横截面视图的示例。在该示例中,压敏按键400被图示为使用柔性接触层402(例如,Mylar)等来形成,使用在传感器基板404上形成的分隔层406、408来隔开柔性接触层402和传感器基板404,分隔层406、408可以被形成为Mylar或其它可弯曲材料的另一层。在该示例中,在不对柔性接触层402施加压力的情况下,柔性接触层402不接触传感器基板404。
[0075] 在该示例中,柔性接触层402包括设置在柔性接触层402的表面的力敏墨(force sensitive ink)410,其被配置为接触传感器基板404。力敏墨410被配置,使得墨的阻抗的量直接随所施加的压力的量而改变。例如,可以利用相对粗糙的表面来配置力敏墨410,在对柔性接触层402施加压力时,力敏墨410被对着传感器基板404压缩。压力的量越大,力敏墨410被压缩得越多,从而增大力敏墨410的导电率,并减小力敏墨410的阻抗。在不背离这样的精神和范围的情况下,也可以在柔性接触层402上设置其它导体,包括其它类型的压敏导体和非压敏导体。
[0076] 传感器基板404包括设置在其上的一个或多个导体412,所述一个或多个导体被配置为接触柔性接触层402的力敏墨410。当接触时,可以产生模拟信号,以便由输入设备104和/或计算设备102处理来例如识别出信号是否是用户可能想要用来向计算设备102提供输入。可以在传感器基板404上设置多种不同类型的导体412,比如,从多种导电材料(例如,)形成的导体,设置在诸如叉指迹线指(inter-digitated trace finger)之类的多种不同配置中的导体,等等。
[0077] 图5描述了当在柔性接触层402的第一位置施加压力以使得力敏墨410接触传感器基板404的相应第一位置时图4的压敏按键400的示例500。通过使用图5中的箭头示出压力,并且可以按照多种方式施加该压力,比如通过人手的手指、笔、笔等。在该示例中,如箭头所指示的施加了压力的第一位置通常位于柔性接触层402的中心区域附近,该中心区域设置在分隔层406、408之间。由于这个位置,一般可以认为柔性接触层402是柔性的,从而可以对压力做出响应。
[0078] 这种柔性允许柔性接触层402相对大的区域接触传感器基板404的导体412,因而也允许力敏墨410接触传感器基板404的导体412。因此,可以产生相对强的信号。此外,因为柔性接触层402在这个位置的柔性相对高,所以可以通过柔性接触层402传递相对大量的力,从而对力敏墨410施加这个压力。如前所述,这种压力上的增加可以使力敏墨的导电性相应增大以及墨的阻抗的减小。因此,与柔性接触层402的离按键的边缘更近的其它位置相比,柔性接触层在第一位置处的相对高的柔性可以导致产生相对更强的信号,其示例将参照下图来描述。
[0079] 图6描述了当在柔性接触层402的第二位置施加压力以使得接触传感器基板404的相应第二位置时图4的压敏按键400的示例600。在该示例中,与图5的第一位置相比,图6的施加了压力的第二位置离压敏按键的边缘更近(例如,离分隔层406的边缘更近)。在与第一位置相比时,由于这个位置,柔性接触层402减弱了柔性,因而对压力更不易于作出响应。
[0080] 这种减弱了的柔性可以导致接触传感器基板404的导体412的柔性接触层402的区域减少,从而使接触传感器基板404的导体412的力敏墨410也减少。因此,在第二位置处产生的信号可能比在图5的第一位置处产生的信号弱。
[0081] 此外,因为柔性接触层402在这个位置的柔性相对低,所以可以通过柔性接触层402传递相对少量的力,从而减少了向力敏墨410传递的压力的量。如前所述,与图5的第一位置相比,这种压力上的减少可以导致力敏墨的导电性的相应减小以及墨的阻抗的增大。
因此,与第一位置相比,柔性接触层402在第二位置处的减弱了的柔性可以使得产生相对更弱的信号。此外,这种情形可能被局部敲击加剧,在局部敲击中,与图5的第一位置相比,用户手指的更小部分能够在图6的第二位置处施加压力。
[0082] 可以采用力集中器层技术来提高柔性接触层402与传感器基板404接触的一致性(consistency)以及其它特征,其进一步的讨论将关于以下附图进行。
[0083] 图7描述了当采用力集中器层702时图4的压敏按键的示例700。可以利用多种材料来配置力集中器层702,比如,能够对着柔性接触层402挠曲的柔性材料(例如,Mylar)。
[0084] 在该实例中,力集中器层702包括在其上设置的衬垫704,衬垫704从力集中器层702的表面隆起。因此,衬垫704被配置成突起物,以接触柔性接触层402。可以以多种方式形成衬垫704,比如,形成为在力集中器层702的基板(例如,Mylar)上的层(例如,印刷、沉积、形成等),基板自身的组成部分等。
[0085] 图8描述了当在力集中层702的多个不同位置施加压力以使得柔性接触层402接触传感器基板404时图7的压敏按键700的示例800。再次使用箭头示出压力,在这个实例中,其包括第一位置802、第二位置804和第三位置806,这三个位置距离按键的边缘(例如,分隔层406、408所限定的边缘)越来越近。
[0086] 如图所示,衬垫704具有一定大小,以允许柔性接触层402在分隔层406、408之间折曲。例如与力集中器层702的基板(例如,Myla r)相比,衬垫704被配置为提供增强的机械硬度,因而对弯曲和折曲提供增大的阻力。因此,当对着柔性接触层402按压衬垫704时,通过将图8与图5和图6相比较,如图所示,柔性接触层402的弯曲半径减小。
[0087] 因此,柔性接触层402围绕衬垫704的弯曲可以促进在力敏墨410与传感器基板404的导体412之间相对一致的接触区域。这可以促进由按键生成的信号的标准化。
[0088] 衬垫704还可以用于扩展压力源的接触区域。用户例如可以使用指甲、铁笔尖、笔或具有相对小的接触区域的其它物体来对着压力集中器层702进行按压。如前所述,这可能导致柔性接触层402接触传感器基板404的接触区域相应地较小,因而在信号强度上也相应地减小。
[0089] 然而,由于衬垫704的机械硬度,这个压力可以传遍衬垫704的接触柔性接触层402的区域,然后,其可以传遍柔性接触层402的围绕衬垫704相应地弯曲从而接触传感器基板404的区域。按照这种方式,衬垫704可以用于标准化被压敏按键用于生成信号的在柔性接触层402和传感器基板404之间的接触区域。
[0090] 衬垫704还可以用于引导压力,即使“偏离中心”施加这个压力。如先前参照图5和6所描述的,柔性接触层402的柔性可以至少部分地取决于距离压敏按键的边缘(例如,在本实例中,由分隔层406、408所限定的边缘)的距离。
[0091] 然而,衬垫704可以用于将压力引导至柔性接触层402,以促进相对一致的接触。例如,在位于力集中器层702的总体上的中心区域处的第一位置802处施加的压力可以引起接触,这个接触与在位于衬垫704的边缘处的第二位置804处施加压力时完成的接触相类似。还可以使用衬垫704来引导在力集中器层702的由衬垫704限定的区域之外施加的压力,比如位于由衬垫704限定的区域之外但是在按键的边缘内的第三位置806。还可以引导位于力集中器层702的由分隔层406、408限定的区域之外的位置,以使得柔性接触层402接触传感器基板404,其示例将参照以下附图进行详细说明。
[0092] 图9A示出了包括多个压敏按键的键盘900的横截面的视图的示例,所述压敏按键采用力集中器层。在该示例中,键盘900包括第一压敏按键902和第二压敏按键904。压敏按键902、904共享如前的力集中器层702、柔性接触层402、传感器基板404和分隔层408。在该示例中,压敏按键902、904中的每一个具有各自的衬垫906、908,其被配置来引导压力,以导致在柔性接触层402和传感器基板404的相应部分之间的接触。
[0093] 如前所述,在常规压敏按键的边缘处的有限的柔性可能导致按键不能识别在按键的边缘处施加的压力。这可能导致“死区”,在死区中,输入设备104不能识别所施加的压力。然而,通过使用力集中器层702以及引导被衬垫906、908支持的压力,可以减少死区的存在,甚至可以消除死区。
[0094] 例如,通过使用箭头示出了位置910,其设置在第一压敏按键902和第二压敏按键904之间。在这个实例中,位置910设置在分隔层408之上,并且与第二压敏按键904相比,离第一压敏按键902更近。
[0095] 因此,与第二压敏按键904的衬垫908相比,第一压敏按键902的衬垫906可以引导更大量的压力。这可以导致第一压敏按键902比第一压敏按键904产生更强的信号,仅仅在第一压敏按键902处产生信号而不在第二压敏按键904处产生信号,等等。无论如何,输入设备104和/或计算设备102的模块然后可以通过处理按键所产生的信号来确定用户的关于要采用哪个按键的很有可能的意图。按照这个方式,力集中器层702可以通过利用引导增大可用于激活按键的区域来阻止位于按键之间的死区。
[0096] 力集中器层702还可以用于执行对按键施加的压力的机械过滤。例如,当键入文档时,用户可以选择将手的一个或多个手指搁在按键的表面上而不想激活该按键。因此,在没有力集中器层702的情况下,通过确定对按键施加的压力的量和/或持续时间是否很有可能意欲激活按键,可能复杂化来自压敏按键的输入的处理。
[0097] 然而,在该示例中,可以配置力集中器层702与柔性接触层一起使用,以机械地过滤用户不可能期望其激活按键的输入。例如,力集中器层702可以被配置为采用阈值,其与柔性接触层402相结合,定义要用于激活按键的压力的量。这可以包括足以使柔性接触层402和在其上设置的力敏墨410接触传感器基板的导体412以产生信号(其可被输入设备104和/或计算设备102识别为输入)的压力的量。
[0098] 在一种实现方式中,设置这个阈值,使得近似五十克或更少的压力将不足以使力集中器层702和柔性接触层402启动该信号,而这个阈值以上的压力可识别为输入。多种其它实现方式和阈值也被考虑,这些其它实现方式和阈值可以被配置为区分休息压力和键击。
[0099] 力集中器层702还可以被配置来提供多种其它功能。例如,输入设备104可以包括外面层912(例如,织物的、微纤维的、等等),在外面层912上,指出例如字母、数字之类的相应按键的操作和诸如“移位”、“返回”、导航之类的其它操作。可以在这层的下方设置力集中器层702。此外,力集中器层702的朝向外面层912的一面可以被配置成充分平滑,从而减少甚至消除可能由输入设备104的下方的组件导致的证示线(witness line)。
[0100] 按照这种方式,外面层912的表面可以被制造得更均匀,从而例如通过提升平滑触知感觉来提供更佳的键入体验和更高的精度,而没有来自下方组件的干扰。力集中器层702还可以被配置来保护输入设备104的下面的组件免受静电放电(ESD)。例如,输入设备104可以包括如图1和2所示的轨迹板(track pad),因而从轨迹板一边到另一边的移动可能产生静电。然而,力集中器层702可以保护输入设备104的位于所述层的下方的组件免受这个潜在的ESD。在不背离其精神和范围的情况下,多种这样的保护的其它示例也被考虑。
[0101] 图9B示出了当包括一个或多个切口以增加邻近切口的层的柔性时力集中器的顶视图950的示例。在该示例中,力集中器层702包括如前所述的多个衬垫952、954、956、958、960、962。然而,在该示例中,力集中器层包括多个切口,用于提高层在邻近切口的移动上的能力。
[0102] 在第一示例中,至少部分地在力集中器层702中或穿过力集中器层702制造一组切口964到多个相应衬垫952、954、958、960的边角处。因此,在衬垫的边角处的邻近这些切口的力集中器层702的移动可以变为包括悬臂移动(cantilever  movement)和偏斜(deflection)。因此,通过“放开”力集中器层702的一部分,可以例如在相应按键的边缘处按照期望提高灵敏度。
[0103] 自然地,切口的多种不同配置被考虑。例如,键盘的如前所述的不同按键可以被配置来解决用户将“如何”按压按键。例如,衬垫962可以与底行上的按键、轨迹板等相对应。因此,可以沿着多面设置切口966来放开力集中器层702,以进行悬臂移动。多种其它示例也是被考虑的。
[0104] 不论是否使用力集中器层技术,生成(例如,通过传感器基板404生成)对按键施加的压力的指示。如上所述,可以用用户手指、铁笔等施加这个压力。尽管其它量度单位也被考虑,但是典型地,这个压力的指示以克来量度。
[0105] 对按键施加的压力和对按键施加的压力的持续时间用于确定图2的输入设备104的键盘的哪个按键是用户的键击。键击指的是按键的用户选择(例如,如果用户想要向设备输入值“s”,则敲击字母“s”的按键)。按键是压力敏感的,因此,键盘也称作压敏键盘。可以在图1的输入设备104和/或计算设备102中进行这种确定。例如,图1的输入/输出模块108和/或包括在输入设备104中的按键识别模块可以进行这种确定。
[0106] 在特定时间感测对键盘的按键施加的压力,所述特定时间称作。可以以特定频率感测压力,所述特定频率也称作采样频率。尽管其它采样频率也被考虑,但是所述采样频率可以是每秒800次或者每秒1000次。
[0107] 可以基于按键按压阈值量来确定用户是否在特定帧时敲击了按键。按键按压阈值量指的是,为了让按键的按压被确定为键击而要对该按键施加的压力的阈值量。尽管其它阈值量也被考虑,但是所述按键按压阈值量可以是200克。如果对按键施加的压力没有上升到(例如,不等于和/或大于)按键按压阈值量,则确定按键的按压不是键击。然而,如果对按键施加的压力确实上升到(例如,等于和/或大于)按键按压阈值量,则可以基于如以下讨论的各种其它因素来确定按键的按压是键击。
[0108] 可以以不同方式来执行按键是否被敲击的确定。在一些情况下(例如,以上讨论的力集中器层技术用于按键的情况),基于对按键施加的压力是否上升到(例如,等于和/或大于)按键按压阈值量和可选的各种其它因素来确定按键是否被敲击。以下将参考图10-18来讨论这些各种其它因素。
[0109] 在其它情况下(例如,以上讨论的力集中器层技术没有用于按键的情况),基于在对按键施加的压力上升到(例如,等于和/或大于)按键按压阈值量之后的监视时间量内对按键施加的压力,来确定按键是否被敲击。还基于各种其它因素来确定按键是否被敲击。以下将(例如,参考图19-30)讨论所述监视时间量和这些各种其它因素。
[0110] 对按键施加的压力是否上升到(例如,等于和/或大于)按键按压阈值量可以基于在单个帧中施加的压力。可替换地,可以使用指示多个帧的滞后值(hysteresis value),在所述多个帧内,对按键施加的压力将被评估以便确定所述对按键施加的压力是否上升到按键按压阈值量。所述多个帧可以是多个连续帧(例如,两帧,尽管其它数目的帧也被考虑),特定比率的帧(例如,五个帧中的二个帧,尽管其它比也被考虑)等。
[0111] 在确定按键已被敲击之后,在对按键施加的压力下降至(例如,小于和/或等于)按键释放阈值量之前,按键保持被按压或被敲击。尽管其它阈值量也被考虑,但是所述按键释放阈值量可以是100克。按键被按压的时间量也称作按键按压持续时间。
[0112] 可选地,可以实现去抖时间量,在去抖时间量内,即使按键上的压力下降至按键释放阈值量,也确定没有按键释放。按键的去抖时间量开始于按键被确定为已被敲击时,并持续特定持续时间。可替换地,按键的去抖时间量可以以其它时间作为开始,比如,当对按键施加的压力上升至(例如,大于和/或等于)诸如100克之类的另一阈值时。尽管其它持续时间也被考虑,但是所述持续时间可以是40毫秒。通过实现去抖时间量,可以避免由于键盘中(例如,在以上讨论的柔性接触层402中)的抖动或振动所导致的键盘释放的错误判定。
[0113] 图10-30示出了对一个或多个按键施加的压力随时间而变的各种示例图。这些图中的每一个的垂直轴是压力(例如,以克为单位),这些图中的每一个的平轴是时间(例如,以毫秒(ms)为单位)。此外,在图中,在某点以上示出向下箭头以指示确定在此点发生了键击,在图中,在某点以上示出向上箭头以指示确定在此点发生了按键释放。例如,在图10中,在点1004以上示出向下箭头以指示按键被确定在点1004被敲击,在点1006以上示出向上箭头以指示在点1006处,按键被确定为被释放。
[0114] 图10描述了一个按键上的压力随时间而变的图的示例1000,其示出了键击。线1002表示随时间而变的按键上的压力。响应于按键上的压力在点1004处升至按键按压阈值量(例如,200克),在点1004处,按键被确定为被敲击。在按键上的压力在点1006处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量1012(例如,40毫秒),其开始于点1004,确定按键被敲击的时刻。
[0115] 可以用于确定按键是否被敲击的一个因素是,按键被确定为被释放的时间有多么近。相同按键排斥时间阈值用于指示在随后确定按键被敲击之前按键将被释放的时间量。尽管其它阈值也被考虑,但是所述相同按键排斥时间阈值可以是60毫秒。按键的相同按键排斥时间量开始于按键被确定为已被释放时,并持续相同按键排斥时间阈值。可替换地,按键的相同按键排斥时间量可以以其它时间作为开始,比如,当对按键施加的压力下降至(例如,小于和/或等于)诸如0克之类的另一阈值时。在按键的相同按键排斥时间量期间,即使对按键施加的压力又升至按键按压阈值量,也确定没有针对该按键的键击。
[0116] 图11描述了一个按键上的压力随时间而变的图的示例1100,其示出了由于尚未经过相同按键排斥时间量而导致的无效按键按压。线1102表示在第一时间段期间按键上的压力,线1104表示在第二时间段期间按键上的压力。线1102和1104一起指示对按键施加了压力并释放,随后又对按键施加了压力。响应于按键上的压力在点1106处升至按键按压阈值量(例如,200克),在点1106处,按键被确定为被敲击。在按键上的压力在点1110处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量1114(例如,40毫秒),其开始于点1106,按键被确定为被敲击的时刻。
[0117] 还示出了相同按键排斥时间量1116(例如,60毫秒),其开始于点1110,确定按键被释放的时刻。即使当随后按压按键时该按键上的压力在点1118处升至按键按压阈值量,该按键也不会再次被确定为被敲击,原因在于在点1118处,尚未经过相同按键排斥时间量。对按键施加的压力也称作无效按键按压。无效按键按压指的是,对按键施加的压力正被按压(例如,对按键施加的压力升至按键按压阈值量),但是按键不会被确定为被敲击。即使在点1118处没有将按键确定为被敲击,但是在随后的时间也不会将按键确定为被敲击,一直到按键上的压力已下降至按键释放阈值量之后(以及可选地,一直到按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后)。
[0118] 图12描述了一个按键上的压力随时间而变的图的示例1200,其示出了相同按键的多次键击。线1202表示在第一时间段期间按键上的压力,线1204表示在第二时间段期间按键上的压力。线1202和1204一起指示对按键施加了压力并释放,随后又对按键施加了压力。响应于按键上的压力在点1206处升至按键按压阈值量(例如,200克),在点1206处,按键被确定为被敲击。在按键上的压力在点1210处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量1214(例如,40毫秒),其开始于点1206,按键被确定为被按压的时刻。
[0119] 还示出了相同按键排斥时间量1216(例如,60毫秒),其开始于点1210,按键被确定为被释放的时刻。当随后按压按键时,响应于该按键上的压力在点1218处升至按键按压阈值量,在点1218处,该按键被确定为被敲击,原因在于点1218在已经经过了相同按键排斥时间量1216之后。在按键上的压力在点1222处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量1226(例如,40毫秒),其开始于点1218,按键被确定为被敲击的时刻。
[0120] 可以用于确定按键是否被敲击的另一个因素是,不同按键已被确定为被按压的时间有多近。不同按键排斥时间阈值用于指示在按压按键之后过去的时间量,以便随后确定另一按键被敲击。尽管其它阈值也被考虑,但是所述不同按键排斥时间阈值可以是40毫秒。按键的不同按键排斥时间量开始于按键被确定为已被敲击时,并持续不同按键排斥时间阈值。可替换地,按键的不同按键排斥时间量可以以其它时间作为开始,比如,当对按键施加的压力升至(例如,大于和/或等于)诸如100克、0克等之类的另一阈值时。在按键的不同按键排斥时间量期间,即使对所述按键施加的压力又升至按键按压阈值量,也确定没有针对另一按键的键击。
[0121] 可选地,这个不同按键排斥时间量不适用于某些类型的按键,比如修正键。修正键指的是被期望与一个或多个其它按键一起被敲击的按键。修正键的示例包括“alt”键、“shift”键、“control”键、GUI(图形用户界面)或操作系统键、等。可选地,不同按键排斥时间量不用于修正键,因此,可选地,在不同按键排斥时间阈值内,另一按键可以被确定为被敲击。
[0122] 图13描述了多个按键上的压力随时间而变的图的示例1300,其示出了由于尚未经过不同按键排斥时间量而导致的无效按键按压。线1302表示在第一时间段期间第一按键上的压力,线1304表示在第二时间段期间第二(不同)按键上的压力。响应于第一按键上的压力在点1306处升至按键按压阈值量(例如,200克),在点1306处,第一按键被确定为被敲击。在第一按键上的压力在点1310处下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。还示出了去抖时间量1314(例如,40毫秒),其开始于点1306,第一按键被确定为被敲击的时刻。
[0123] 还示出了不同按键排斥时间量1316(例如,40毫秒),其开始于点1306,第一按键被确定为被敲击的时刻。即使当随后按压第二按键时第二按键上的压力在点1318处升至按键按压阈值量,第二按键也不会再次被确定为被敲击,原因在于在点1318处,尚未经过不同按键排斥时间量。即使在点1318处没有将第二按键确定为被敲击,但是在随后的时间也不会将第二按键确定为被敲击,一直到在第二按键上的压力已下降至按键释放阈值量之后(以及可选地,一直到在第二按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后,如上所讨论的)。
[0124] 图14描述了多个按键上的压力随时间而变的图的示例1400,其示出了不同按键的多次键击。线1402表示在第一时间段期间第一按键上的压力,线1404表示在第二时间段期间第二(不同)按键上的压力。响应于第一按键上的压力在点1406处升至按键按压阈值量(例如,200克),在点1406处,第一按键被确定为被敲击。在第一按键上的压力在点1410处下降至按键释放阈值量(例如,100克)之前,第一按键保持被按压或敲击。还示出了去抖时间量1414(例如,40毫秒),其开始于点1406,第一按键被确定为被敲击的时刻。
[0125] 还示出了不同按键排斥时间量1416(例如,40毫秒),其开始于点1406,第一按键被确定为被敲击的时刻。当随后按压第二按键时,响应于第二按键上的压力在点1418处升至按键按压阈值量,在点1418处,第二按键被确定为被敲击,原因在于点1418在已经经过了不同按键排斥时间量1416之后。在第二按键上的压力在点1422处下降至按键释放阈值量(例如,100克)之前,第二按键保持被按压或敲击。还示出了去抖时间量1426(例如,40毫秒),其开始于点1418,第二按键被确定为被敲击的时刻。
[0126] 可以用于确定按键是否被敲击的另一个因素是,是否在近似相同的时间按压另一按键。在相同帧中或者可替换地在相互的一些帧内(例如,在阈值数目的帧内,比如一帧,尽管其它阈值数目也被考虑)按压两个或多个按键的情况下,将被施加了较大压力的按键确定为被敲击的按键。如果在相同帧中,对两个或多个按键中的每一个施加的压力都上升到(例如,等于和/或大于)按键按压阈值量,则在所述帧中(或者可替换地,在阈值数目的帧内),所述两个或多个按键被按压。可以基于在帧中(其中,两个或多个按键上升到按键按压阈值量)施加的压力来进行这种较大压力的确定。可替换地,这种确定可以基于不同时间持续期,比如,在键击的存在期(键击的存在期开始于对按键施加的压力上升至按键按压阈值量的时间,结束于对按键施加的压力下降至按键释放阈值量的时间)期间的压力,在对按键施加的压力上升至按键按压阈值量之后的一些阈值时间量(例如,30毫秒或40毫秒,尽管其它阈值时间量也被考虑),等等。
[0127] 图15描述了多个按键上的压力随时间而变的图的示例1500,其示出了在近似相同的时刻按压的多个按键。线1502表示在第一时间段期间第一按键上的压力,线1504表示在第二时间段期间第二(不同)按键上的压力。在相同帧中(或者在相互的一些帧中),对这两个按键中的每一个施加的压力都在点1506处上升至按键按压阈值量(例如,200克)。被确定是被敲击的按键的按键是被施加了较大压力的按键,在示例1500中,是第一按键(用线1502示出)。在按键上的压力在点1510处下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。还示出了去抖时间量1514(例如,40毫秒),其开始于点1506,按键被确定为被敲击的时刻。
[0128] 第二按键(用线1504示出)没有被确定成被敲击。即使第二按键上的压力在点1506处升至按键按压阈值量,该按键也不会被确定成被敲击,原因在于对第一按键施加的压力较大。即使在点1506处没有将第二按键确定为被敲击,但是在随后的时间也不会将该按键确定为被敲击,一直到在第二按键上的压力已下降至按键释放阈值量之后(以及可选地,一直到在第二按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后,如上所述)。
[0129] 可以用于确定按键是否被敲击的另一个因素是,有多少其它按键已被按压(键击或无效按键按压)并且仍然被按压着。按键按压计数阈值用于指示可以并行地按压多少按键。尽管其它阈值也被考虑,但是所述按键按压计数阈值可以是3或4。按键按压计数阈值可以基于按键之一是否是修正键(例如,“alt”键、“shift”键、“control”键、GUI(图形用户界面)或操作系统键、等)而改变。例如,如果按键都不是修正键,则按键按压计数阈值可以是3,或者如果按键之一(任一按键,或者可选地,仅仅第一个按键)是修正键,则按键按压计数阈值可以是4。作为另一示例,在一些情况下(例如,对于游戏键盘),按键按压计数可以更大(例如,10或12)。在一些情况下(例如,对于游戏键盘),按键按压计数也可以不被用作确定按键是否被敲击的因素。
[0130] 如果被并行按压的按键的数目达到了(例如,等于和/或大于)按键按压计数阈值,则在对按键施加的压力下降至(例如,小于和/或等于)按键释放阈值量之前,再也没有按键被确定为被敲击。在对键盘上所有按键施加的压力都下降至按键释放阈值量之前,或者可替换地,在对键盘上的一组按键(例如,被按压而使得被并行按压的按键的数目达到按键按压计数阈值的按键)施加的压力下降到按键释放阈值量之前,再也没有按键可以被确定为被敲击。
[0131] 图16描述了多个按键上的压力并行地随时间而变的图的示例1600,其示出了由并行地按压按键而导致的多个键击。响应于对第一按键(被图示为与字母“f”相对应的按键)施加的压力在点1602处升至按键按压阈值量(例如,200克),在点1602处,第一按键被确定为被敲击。线1604表示在第一时间段期间在第一按键上施加的压力。在第一按键上的压力在点1606处下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。
[0132] 与对第一按键施加压力相并行地,对第二按键(被图示为与字母“d”相对应的按键)施加压力。响应于对第二按键施加的压力在由于第一按键被敲击而导致的不同按键排斥时间量过去之后,在点1612处升至按键按压阈值量(例如,200克),在点1612处,第二按键被确定为被敲击。线1614表示在第二时间段期间在第二按键上施加的压力。在第二按键上的压力在点1616处下降至按键释放阈值量(例如,100克)之前,保持第二按键被按压或敲击。
[0133] 与对第一按键和第二按键施加压力相并行地,也对第三按键(被图示为与字母“j”相对应的按键)施加压力。响应于对第三按键施加的压力在由于第二按键被敲击而导致的不同按键排斥时间量过去之后,在点1622处升至按键按压阈值量(例如,200克),在点1622处,第三按键被确定为被敲击。线1624表示在第三时间段期间在第三按键上施加的压力。在第三按键上的压力在点1626处下降至按键释放阈值量(例如,100克)之前,保持第三按键被按压或敲击。
[0134] 与对第一按键、第二按键和第三按键施加压力相并行地,也对第四按键施加压力。线1630表示在第四时间段期间在第四按键上施加的压力。即使第四按键上的压力上升至按键按压阈值量,第四按键也不会被确定成被敲击,原因在于,当按压第四按键时,被并行按压的按键的数目已经达到了按键按压计数。因此,在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。与字母“f”、“d”和“j”相对应的按键的键击可以仍然被保持为键击,但是在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。可替换地,响应于被并行按压的按键的数目达到按键按压计数阈值,可以删除或者忽略与字母“f”、“d”和“j”相对应的按键的在先确定的键击,使得这些键击不再被确定为键击。
[0135] 图17描述了多个按键上的压力并行地随时间而变的图的示例1700,其示出了由并行地按压按键而导致的多个键击。示例1700与图16的示例1600相类似,但是还包括修正键。线1702表示对第一按键(被图示为与“shift”修正键相对应的按键)施加的压力,线1704表示对第二按键(被图示为与字母“F”相对应的按键)施加的压力,线1706表示对第三按键(被图示为与字母“J”相对应的按键)施加的压力,线1708表示对第四按键(被图示为与字母“D”相对应的按键)施加的压力,以及线1710表示对第五按键施加的压力。
[0136] 即使第五按键上的压力上升至按键按压阈值量,第五按键也不会被确定成被敲击,原因在于,当按压第五按键时,被并行按压的按键的数目已经达到了按键按压计数阈值。与图16的示例1600相比,示例1700中的按键按压计数阈值大一,原因在于,在示例1700中,按键之一是修正键。在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。与字母“F”、“D”和“J”相对应的按键的键击可以仍然被保持为键击,但是在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。可替换地,响应于被并行按压的按键的数目达到按键按压计数阈值,可以删除或者忽略与字母“F”、“D”和“J”相对应的按键的在先确定的键击,使得这些键击不再被确定为键击。
[0137] 图18描述了多个按键上的压力并行地随时间而变的图的示例1800,其示出了由并行地按压按键而导致的无效按键按压。响应于对第一按键(被图示为与字母“f”相对应的按键)施加的压力在点1802处升至按键按压阈值量(例如,200克),在点1802处,第一按键被确定为被敲击。线1804表示在第一时间段期间在第一按键上施加的压力。在第一按键上的压力下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。
[0138] 与对第一按键施加压力相并行地,也对第二按键施加压力。线1806表示在第二时间段期间在第二按键上施加的压力。与对第一按键和第二按键施加压力相并行地,也对第三按键施加压力。线1808表示在第三时间段期间在第三按键上施加的压力。还示出了不同按键排斥时间量1810(例如,40毫秒),其开始于点1802,第一按键被确定为被敲击的时刻。即使对第二按键和第三按键施加的压力上升至按键按压阈值量,第二按键和第三按键也不会被确定成被敲击,原因在于,当对第二按键和第三按键施加的压力上升至按键按压阈值量时,尚未经过不同按键排斥时间量。
[0139] 此外,与对第一按键、第二按键和第三按键施加压力相并行地,也对第四按键施加压力。线1812表示在第四时间段期间在第四按键上施加的压力。即使所施加的压力没有被确定为键击,也保持这样的记录:对第二按键和第三按键施加的压力已上升至按键按压阈值量。因此,第二按键和第三按键被包括在按键按压计数中。因此,即使在不同按键排斥时间量1810过去之后,第四按键上的压力上升至按键按压阈值量,第四按键也不会被确定成被敲击,原因在于,当按压第四按键时,被并行按压的按键的数目已经达到了按键按压计数。因此,在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。与字母“f”相对应的按键的键击可以仍然被保持为键击,但是在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。可替换地,响应于被并行按压的按键的数目达到按键按压计数阈值,可以删除或者忽略与字母“f”相对应的按键的在先确定的键击,使得该键击不再被确定为键击。
[0140] 图10-18讨论了按键是否被敲击的确定基于对按键施加的压力是否上升至按键按压阈值量的情况。在其它情况下(例如,将参照图19-28讨论的),基于在监视时间量(该监视时间量在对按键施加的压力上升到按键按压阈值量之后)期间对按键施加的压力,来确定按键是否被敲击。
[0141] 监视时间量是时间持续期或时间段,也称作不定范围,其中,还未确定按键是否被敲击(例如,压力可以是按键的轻键击或无意触摸的结果)。在监视时间量期间,分析对按键施加的压力,并确定对按键施加的压力是否是键击。按键的监视时间量可以开始于,对按键施加的压力上升至(例如,等于和/或大于)按键按压阈值量(例如,200克,如上所讨论的)时。尽管其它时间量也被考虑,但是所述监视时间量可以是30毫秒。
[0142] 响应于在监视时间段内,对按键施加的压力上升至(例如,等于和/或大于)选择阈值量,该按键可以被确定为被敲击。如果在监视时间段内,对按键施加的压力没有上升至所述选择阈值量,则该按键不会被确定为已被敲击。尽管其它选择阈值量也被考虑,但是所述选择阈值量可以是800克。可替换地,响应于在监视时间段内,描绘了随时间而变的对按键施加的压力的线的斜率上升至(例如,等于和/或大于)阈值斜率,该按键可以被确定为被敲击。该阈值斜率也称作对按键施加压力的阈值速率。如果在监视时间段内,描绘了随时间而变的压力的线的斜率没有上升至所述阈值斜率,则该按键不会被确定为已被敲击。尽管其它阈值斜率也被考虑,但是所述阈值斜率可以是20克/毫秒。在按键被确定为已被敲击之后,如上所讨论的,在对按键施加的压力下降至(例如,小于和/或等于)按键释放值量之前,按键保持被按压或被敲击。
[0143] 应该注意可能发生这样的情况,其中,在对按键施加的压力上升至按键按压阈值量的相同帧中,对所述按键施加的压力也上升至选择阈值量。例如,在单个帧内,按键上的压力可以从0克上升至900克。在这种情况下,不需要使用监视时间段,原因在于,压力已经上升至选择阈值量。可替换地,在这种情况下,仍然可以使用监视时间段。
[0144] 对按键施加的压力是否上升至(例如,等于和/或大于)按键按压阈值量和/或选择阈值量可以基于在单个帧中施加的压力。可替换地,可以使用指示多个帧的滞后值,在所述多个帧期间,对按键施加的压力将被评估以确定所述对按键施加的压力是否升到按键按压阈值量和/或选择阈值量。如上所讨论的,所述多个帧可以是多个连续帧,特定比率的帧,等等。
[0145] 可选地,可以实现去抖时间量,在去抖时间量内,如上所讨论的,即使按键上的压力下降至按键释放阈值量,也确定没有按键释放。如上所讨论的,按键的去抖时间量开始于按键被确定为已被敲击时,并持续特定持续时间。
[0146] 图19描述了一个按键上的压力随时间而变的图的示例1900,其示出了键击。线1902表示随时间而变的按键上的压力。示出了监视时间段1904(例如,30毫秒),其响应于按键上的压力在点1906处上升至按键按压阈值量(例如,200克)而开始。响应于在监视时间段内,在点1908处,按键上的压力上升至选择阈值量(例如,800克)和/或线1902的斜率上升至阈值斜率(例如,20克/毫秒),在点1908处,按键被确定为被敲击。
[0147] 在按键上的压力在点1910处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量1912(例如,40毫秒),其开始于点1908,按键被确定为被按压的时刻。
[0148] 尽管使用不同技术来确定按键是否被敲击,但是图1900与图10的图1000相类似。在图1000中,响应于对按键施加的压力升至按键按压阈值量,按键被确定为被敲击,但是在图1900中,响应于在监视时间段内,按键上的压力上升至选择阈值量和/或线的斜率上升至阈值斜率,按键被确定为被敲击。
[0149] 图20描述了一个按键上的压力随时间而变的图的示例2000,其示出了无效按键按压。线2002表示随时间而变的按键上的压力。在图上示出了监视时间段2004(例如,30毫秒),其响应于按键上的压力在点2006处上升至按键按压阈值量(例如,200克)而开始。然而,因为在监视时间段2004内,线2002的斜率没有上升至阈值斜率,并且在监视时间段2004内,按键上的压力没有上升至选择阈值量(例如,800克),所以按键不会被确定为被敲击。因此,即使按键上的压力上升至选择阈值量,按键也不会被确定成被敲击,原因在于,在监视时间段2004内,按键上的压力没有上升至选择阈值量。
[0150] 响应于按键上的压力上升至按键按压阈值量(例如,200克),按键被确定为没有被释放(尽管未必被敲击,如上所讨论的)。随后,响应于按键上的压力下降至(例如,等于和/或小于)释放阈值量,该按键被确定为被释放。因此,即使在图20的示例中,没有将按键确定为被敲击,但是在随后的时间也不会将按键确定为被敲击,一直到在按键上的压力已下降至按键释放阈值量之后(以及可选地,一直到在按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后)。
[0151] 如上所讨论的,可以用于确定按键是否被敲击的一个因素是,按键被确定为被释放的时间有多近。按键的相同按键排斥时间量开始于按键被确定为已被释放时,并持续相同按键排斥时间阈值。可替换地,按键的相同按键排斥时间量可以以其它时间作为开始,比如,当对按键施加的压力下降至(例如,小于和/或等于)诸如0克之类的另一阈值时。在按键的相同按键排斥时间量内,没有针对该按键的键击被确定,并且没有针对该按键的监视时间段要再次开始。可替换地,针对该按键的监视时间段可以在不同按键排斥时间量内再次开始,但是没有键击可以被确定,除非在已经经过了相同按键排斥时间量之后,对按键施加的压力上升至选择阈值量。
[0152] 图21描述了一个按键上的压力随时间而变的图的示例2100,其示出了由于尚未经过相同按键排斥时间量而导致的无效按键按压。线2102表示在第一时间段期间按键上的压力,线2104表示在第二时间段期间按键上的压力。线2102和2104一起指示对按键施加了压力并释放,随后又对按键施加了压力。示出了监视时间段2106(例如,30毫秒),其响应于按键上的压力在点2108处上升至按键按压阈值量(例如,200克)而开始。响应于在监视时间段内,在点2110处,按键上的压力上升至选择阈值量(例如,800克)和/或线2102的斜率上升至阈值斜率(例如,20克/毫秒),在点2110处,按键被确定为被敲击。在按键上的压力在点2112处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量2114(例如,40毫秒),其开始于点2110,按键被确定为被敲击的时刻。
[0153] 还示出了相同按键排斥时间量2116(例如,60毫秒),其开始于点2112,按键被确定为被释放的时刻。即使当随后按压按键时该按键上的压力在点2118处升至按键按压阈值量,该按键也不会再次被确定为被敲击,原因在于在点2118处,尚未经过相同按键排斥时间量。响应于该按键上的压力在点2118处升至按键按压阈值量,不需要使用监视时间段,原因在于尚未经过相同按键排斥时间量。此外,即使在点2118处没有将按键确定为被敲击,但是在随后的时间也不会将按键确定为被敲击,一直到在按键上的压力已下降至按键释放阈值量之后(以及可选地,一直到在按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后)。
[0154] 图22描述了一个按键上的压力随时间而变的图的示例2200,其示出了相同按键的多次键击。线2202表示在第一时间段期间按键上的压力,线2204表示在第二时间段期间按键上的压力。线2202和2204一起指示对按键施加了压力并释放,随后又对按键施加了压力。示出了监视时间段2206(例如,30毫秒),其响应于按键上的压力在点2208处上升至按键按压阈值量(例如,200克)而开始。响应于在监视时间段内,在点2210处,按键上的压力上升至选择阈值量(例如,800克)和/或线2202的斜率上升至阈值斜率(例如,20克/毫秒),在点
2210处,按键被确定为被敲击。在按键上的压力在点2212处下降至按键释放阈值量(例如,
100克)之前,按键保持被按压或被敲击。还示出了去抖时间量2214(例如,40毫秒),其开始于点2210,按键被确定为被按压的时刻。
[0155] 还示出了相同按键排斥时间量2216(例如,60毫秒),其开始于点2212,按键被确定为被释放的时刻。当随后按压按键时,响应于按键上的压力在点2218处升至按键按压阈值量(例如,200克),监视时间段(例如,30毫秒)2220开始。响应于在点2220处的监视时间段内,按键上的压力上升至选择阈值量(例如,800克)和/或线2204的斜率上升至阈值斜率(例如,20克/毫秒),在点2222处,按键被确定为被敲击,原因在于点2218在相同按键排斥时间量2216过去之后。在按键上的压力在点2224处下降至按键释放阈值量(例如,100克)之前,按键保持被按压或被敲击。还示出了去抖时间量2226(例如,40毫秒),其开始于点2222,按键被确定为被敲击的时刻。
[0156] 如上所讨论的,可以用于确定按键是否被敲击的一个因素是,不同按键被确定为已被按压的时间有多近。按键的不同按键排斥时间量开始于对按键施加的压力上升至按键按压阈值量(例如,200克)时。可替换地,不同按键排斥时间量可以以其它时间作为开始,比如,按键被确定为被敲击的时刻,或者在按键上的压力上升至按键按压阈值量的时刻和按键被确定为被敲击的时刻之间的一些其它时刻,当对按键施加的压力升至(例如,大于和/或等于)诸如100克、0克等之类的另一阈值时,等等。在按键的不同按键排斥时间量期间,没有针对另一按键的键击被确定,并且没有针对另一按键的监视时间段要开始。可替换地,针对另一按键的监视时间段可以在不同按键排斥时间量期间开始,但是没有键击可以被确定,除非在已经经过了不同按键排斥时间量之后,对按键施加的压力上升至选择阈值量。
[0157] 图23描述了多个按键上的压力随时间而变的图的示例2300,其示出了由于尚未经过不同按键排斥时间量而导致的无效按键按压。线2302表示在第一时间段期间第一按键上的压力,线2304表示在第二时间段期间第二(不同)按键上的压力。响应于在监视时间段(未示出)内,在点2306处,第一按键上的压力上升至选择阈值量(例如,800克)和/或线2302的斜率上升至阈值斜率(例如,20克/毫秒),在点2306处,按键被确定为被敲击。在第一按键上的压力在点2308处下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。还示出了去抖时间量2310(例如,40毫秒),其开始于点2306,第一按键被确定为被敲击的时刻。
[0158] 还示出了不同按键排斥时间量2312(例如,40毫秒),其开始于点2314,按键上的压力上升至按键按压阈值量(例如,200克)的时刻。即使当随后按压第二按键时第二按键上的压力在点2316处升至按键按压阈值量,第二按键也不会被确定为被敲击,原因在于在点2316处,尚未经过不同按键排斥时间量。响应于第二按键上的压力在点2316处升至按键按压阈值量,不需要使用监视时间段,原因在于尚未经过不同按键排斥时间量。此外,即使在点2316处没有将第二按键确定为被敲击,但是在随后的时间也不会将第二按键确定为被敲击,一直到在第二按键上的压力已下降至按键释放阈值量之后(以及可选地,一直到在第二按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后,如上所讨论的)。
[0159] 图24描述了多个按键上的压力随时间而变的图的示例2400,其示出了不同按键的多个键击。线2402表示在第一时间段期间第一按键上的压力,线2404表示在第二时间段期间第二(不同)按键上的压力。响应于在监视时间段(未示出)内,在点2406处,第一按键上的压力上升至选择阈值量(例如,800克)和/或线2402的斜率上升至阈值斜率(例如,20克/毫秒),在点2406处,按键被确定为被敲击。在第一按键上的压力在点2408处下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。还示出了去抖时间量2410(例如,40毫秒),其开始于点2406,第一按键被确定为被敲击的时刻。
[0160] 还示出了不同按键排斥时间量2412(例如,40毫秒),其开始于点2414,按键上的压力上升至按键按压阈值量(例如,200克)的时刻。当随后按压第二按键时,响应于按键上的压力在点2416处升至按键按压阈值量(例如,200克),监视时间段(例如,30毫秒)2418开始。响应于在监视时间段内,在点2420处,按键上的压力上升至选择阈值量(例如,800克)和/或线2404的斜率上升至阈值斜率(例如,20克/毫秒),在点2420处,按键被确定为被敲击,原因在于点2416是在不同按键排斥时间量2412过去之后。在第二按键上的压力在点2422处下降至按键释放阈值量(例如,100克)之前,保持第二按键被按压或敲击。还示出了去抖时间量
2424(例如,40毫秒),其开始于点2420,第二按键被确定为被敲击的时刻。
[0161] 可以用于确定按键是否被敲击的另一个因素是,是否在近似相同的时间按压另一按键,如上所讨论的。在相同帧中(或者在相互的一些帧内)按压两个或多个按键的情况下,将被施加了较大压力的按键确定为被敲击的按键。如果在相同帧中,对两个或多个按键中的每一个施加的压力都上升到(例如,等于和/或大于)按键按压阈值量,并且在监视时间段内,每个按键上的压力都上升至选择阈值量(例如,800克)和/或描绘了按键的压力的线的斜率上升至阈值斜率(例如,20克/毫秒),则在该相同帧中(或者可替换地,在阈值数目的帧内),所述两个或多个按键被按压。可以基于在帧中(其中,两个或多个按键上升到按键按压阈值量)施加的压力来进行这种较大压力的确定。可替换地,这种较大压力的确定可以基于不同时间持续期,比如,在键击的存在期期间的压力,在监视时间段内施加的压力,在对按键施加的压力上升至按键按压阈值量之后的一些阈值时间量(例如,30毫秒或40毫秒,尽管其它阈值时间量也被考虑),等等。
[0162] 图25描述了多个按键上的压力随时间而变的图的示例2500,其示出了在近似相同的时刻按压的多个按键。线2502表示在第一时间段期间第一按键上的压力,线2504表示在第二时间段期间第二(不同)按键上的压力。为这两个按键都示出了监视时间段(例如,30毫秒)2506,其响应于在相同帧中(或者在相互的一些帧内)每个按键上的压力在点2506处上升至按键按压阈值量(例如,200克)而开始。尽管由于两个按键的监视时间段开始于相同帧(或在相互的一些帧内)而示出了单个监视时间段,但是典型地,为每个按键维持不同监视时间段并对其进行分析。在监视时间段内,每个按键上的压力上升至选择阈值量(例如,800克)和/或线2502和/或2504的斜率上升至阈值斜率(例如,20克/毫秒),被图示为在点2508处发生。被确定是被敲击的按键的按键是被施加了较大压力的按键,在示例2500中是第一按键(用线2502示出)。在按键上的压力在点2510处下降至按键释放阈值量(例如,100克)之前,第一按键保持被按压或敲击。还示出了去抖时间量2512(例如,40毫秒),其开始于点2508,按键被确定为被敲击的时刻。
[0163] 第二按键(用线2504示出)没有被确定成被敲击。即使第二按键上的压力在点2508处升至选择阈值量,该按键也不会被确定成被敲击,原因在于对第一按键施加的压力较大。即使在点2508处没有将第二按键确定为被敲击,但是在随后的时间也不会将该按键确定为被敲击,一直到在第二按键上的压力已下降至按键释放阈值量之前(以及可选地,一直到在第二按键上的压力已下降至按键释放阈值量之后又经过了相同按键排斥时间量之后,如上所讨论的)。
[0164] 如上所讨论的,可以用于确定按键是否被敲击的另一个因素是,有多少其它按键已被按压并且仍然被按压着。如上所讨论的,按键按压计数阈值用于指示可以并行地按压多少按键(例如,3或4,10或12等,尽管其它阈值也被考虑)。如上所述,在一些情况下,按键按压计数也可以被用作确定按键是否被敲击的因素。
[0165] 图26描述了多个按键上的压力并行地随时间而变的图的示例2600,其示出了由并行地按压按键而导致的多个键击。示例2600与图16的示例1600相类似,不同之处在于,响应于在监视时间段(未示出)内,按键上的压力上升至选择阈值量(例如,800克)和/或描绘了随时间而变的按键的压力的线的斜率上升至阈值斜率(例如,20克/毫秒),每个按键被确定为被敲击,而不是简单地响应于对按键施加的压力上升至按键按压阈值量。
[0166] 线2602表示对第一按键(被图示为与字母“f”相对应的按键)施加的压力,线2604表示对第二按键(被图示为与字母“d”相对应的按键)施加的压力,线2606表示对第三按键(被图示为与字母“j”相对应的按键)施加的压力,以及线2608表示对第四按键施加的压力。即使在监视时间段内,第四按键上的压力上升至选择阈值量(例如,800克)和/或线2608的斜率上升至阈值斜率(例如,20克/毫秒),第四按键也不会被确定成被敲击,原因在于,当按压第四按键时,被并行按压的按键的数目已经达到了按键按压计数。因此,在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。与字母“f”、“d”和“j”相对应的按键的键击可以仍然被保持为键击,但是在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。可替换地,响应于被并行按压的按键的数目达到按键按压计数阈值,可以删除或者忽略与字母“f”、“d”和“j”相对应的按键的在先确定的键击,使得这些键击不再被确定为键击。
[0167] 图27描述了多个按键上的压力并行地随时间而变的图的示例2700,其示出了由并行地按压按键而导致的多个键击。示例2600与图17的示例1700相类似,不同之处在于,响应于在监视时间段(未示出)内,按键上的压力上升至选择阈值量(例如,800克)和/或描绘了随时间而变的按键的压力的线的斜率上升至阈值斜率(例如,20克/毫秒),每个按键被确定为被敲击,而不是简单地响应于对按键施加的压力上升至按键按压阈值量。示例2700还包括修正键。
[0168] 线2702表示对第一按键(被图示为与“shift”修正键相对应的按键)施加的压力,线2704表示对第二按键(被图示为与字母“F”相对应的按键)施加的压力,线2706表示对第三按键(被图示为与字母“J”相对应的按键)施加的压力,线2708表示对第四按键(被图示为与字母“D”相对应的按键)施加的压力,以及线2710表示对第五按键施加的压力。即使在监视时间段内,第五按键上的压力上升至选择阈值量(例如,800克)和/或线2710的斜率上升至阈值斜率(例如,20克/毫秒),第五按键也不会被确定成被敲击,原因在于,当按压第五按键时,被并行按压的按键的数目已经达到了按键按压计数阈值。与图26的示例2600相比,示例2700中的按键按压计数阈值大一,原因在于,在示例2700中,按键之一是修正键。在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。与字母“F”、“D”和“J”相对应的按键的键击可以仍然被保持为键击,但是在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。可替换地,响应于被并行按压的按键的数目达到按键按压计数阈值,可以删除或者忽略与字母“F”、“D”和“J”相对应的按键的在先确定的键击,使得这些键击不再被确定为键击。
[0169] 图28描述了多个按键上的压力并行地随时间而变的图的示例2800,其示出了由并行地按压按键而导致的无效按键按压。示例2800与图16的示例1800相类似,不同之处在于,响应于在监视时间段(未示出)内,按键上的压力上升至选择阈值量(例如,800克)和/或描绘了随时间而变的按键的压力的线的斜率上升至阈值斜率(例如,20克/毫秒),每个按键被确定为被敲击,而不是简单地响应于对按键施加的压力上升至按键按压阈值量。
[0170] 响应于在监视时间段(未示出)内,在点2802处,对第一按键(被图示为与字母“f”相对应的按键)施加的压力上升至选择阈值量(例如,800克)和/或描绘了随时间而变的按键的压力的线的斜率上升至阈值斜率(例如,20克/毫秒),在点2802处,第一按键被确定为被敲击。线2804表示在第一时间段期间在第一按键上施加的压力。在第一按键上的压力下降至按键释放阈值量(例如,100克)之前,保持第一按键被按压或敲击。
[0171] 与对第一按键施加压力相并行地,也对第二按键施加压力。线2806表示在第二时间段期间在第二按键上施加的压力。与对第一按键和第二按键施加压力相并行地,也对第三按键施加压力。线2808表示在第三时间段期间在第三按键上施加的压力。还示出了不同按键排斥时间量2810(例如,40毫秒),其开始于对第一按键施加的压力上升至按键按压阈值量的时刻。即使在每个按键的监视时间段内,对第二按键和第三按键施加的压力上升至选择阈值量(例如,800克)和/或线2806和2808的斜率上升至阈值斜率(例如,20克/毫秒),第二按键和第三按键也不会被确定成被敲击,原因在于,当对第二按键和第三按键施加的压力上升至选择阈值量(例如,800克)和/或线2806和2808的斜率上升至阈值斜率时,尚未经过不同按键排斥时间量。
[0172] 此外,与对第一按键、第二按键和第三按键施加压力相并行地,也对第四按键施加压力。线2812表示在第四时间段期间在第四按键上施加的压力。即使所施加的压力没有被确定为键击,也保持这样的记录:对第二按键和第三按键施加的压力已上升至按键按压阈值量。因此,第二按键和第三按键被包括在按键按压计数中。因此,即使在不同按键排斥时间量2810过去之后,第四按键上的压力上升至按键按压阈值量,第四按键也不会被确定成被敲击,原因在于,当按压第四按键时,被并行按压的按键的数目已经达到了按键按压计数。因此,在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。与字母“f”相对应的按键的键击可以仍然被保持为键击,但是在对按键施加的压力下降至按键释放阈值量之前,再也没有按键被确定为被敲击。可替换地,响应于被并行按压的按键的数目达到按键按压计数阈值,可以删除或者忽略与字母“f”相对应的按键的在先确定的键击,使得该键击不再被确定为键击。
[0173] 在许多上述示例中,键击被论述为响应于对按键施加的压力上升至特定量(例如,按键按压阈值量或选择阈值量)而被确定。可替换地,可以响应于所施加的其它压力来确定键击。例如,可以响应于按键上的压力上升至特定量(例如,按键按压阈值量或选择阈值量),并且然后下降至另一量(可选地,在特定时间持续期内),来确定键击。作为另一示例,可以随时间分析按键按压的各种特性,并且将按键按压的各种特性与键击的特性相比较,如果所述分析确定按键按压的特性与键击的这些特性相匹配,则所述按键按压被确定为键击。
[0174] 尽管可以响应于所施加的其它压力来确定键击,但是可选地,各种上述其它因素仍然适用。例如,尽管何时键击被确定的定时改变了,但是上述相同按键排斥时间量和不同按键排斥时间量可以适用。
[0175] 图29描述了一个按键上的压力随时间而变的图的示例2900,其示出了键击。线2902表示随时间而变的按键上的压力。响应于在点2904处,按键上的压力上升至(例如,等于和/或大于)按键按压阈值量,并且随后在点2906处,所述按键上的压力下降至(例如,等于和/或小于)按键释放阈值量,在点2906处,按键被确定为被敲击。在点2906处,按键也被确定为在被敲击之后立即被释放。还示出了去抖时间量2908(例如,40毫秒),其开始于点
2904,按键被确定为被按压的时刻。
[0176] 还可以强加阈值时间持续期,使得仅仅响应于点2904和2906之间的时间小于阈值时间持续期,按键上的压力才被确定为键击。尽管其它时间持续期也被考虑,但是所述阈值时间持续期可以是130毫秒。所述阈值时间持续期可以用于例如促进区分“轻打字员”用户(例如,当键入时对键盘施加轻压力的用户)和“重休息者”用户(例如,当将手指和/或手搁在键盘上时对键盘施加重压力的用户)。这种“轻打字员”和“重休息者”可以施加类似的压力量,但是可以基于所述阈值时间持续期来区分(例如,典型地,将其手指或手搁在键盘上的用户在所述阈值时间持续期内将不释放压力)。
[0177] 除了确定键击之外,对键盘的一个或多个按键施加的压力可以用于保护输入设备免受无意的输入。例如,对一个或多个按键的轻压力可以被确定是,用户将其手或手指搁在了键盘上。所述轻压力可以是,例如比休息阈值量(50克,尽管其它量也被考虑)大但比按键按压阈值量小的压力量。
[0178] 响应于检测到这种轻压力,可以禁用输入设备(例如,触摸板、方位传感系统等)的其它输入组件,使得无意的用户触摸或移动不被错误地识别为针对这些其它组件的输入。禁用输入组件指的是,对输入组件断电或将输入组件置于低电力模式,使得输入组件感测不到用户输入。禁用这些其它输入组件还可以提供节电功能,原因在于这些输入组件在被禁用时不使用太多电力。
[0179] 图30描述了按键上的压力随时间而变的图的示例3000,其示出了休息位置。线3002表示随时间而变的按键上的压力。响应于在点3004处,按键上的压力上升至(例如,等于和/或大于)休息阈值量,确定用户正将其手指或手搁在键盘上。这种确定可以一直持续,直到发生了一个或多个事件,表明用户不再将其手搁在键盘上为止。这些事件可以包括,如上所述的键击被确定,按键上的压力下降至(例如,等于和/或小于)阈值量(例如,0克,尽管其它量也被考虑),等等。
[0180] 类似地,压敏键盘和其它输入组件的操作可以被协调,以允许某些组件的动作使得其它组件被禁用。例如,当用户检测到键击时,可以禁用触摸板或方位传感系统。作为另一示例,当正经由触摸板接收用户输入时,可以禁用压敏键盘。
[0181] 此外,当在典型地吸引用户的特定按键(比如,QWERTY键盘上的“f”和/或“j”按键或者其它“起始(home)”键)上检测到在示例3000中所示的轻压力时,检测到回复原位行为(homing behavior)。所述回复原位行为称作用户尝试定位这些起始按键。响应于检测到回复原位行为,可选地,可以使能或激活输入设备的其它组件或模块。例如,响应于在特定(例如,“起始”)按键上检测到这种轻压力,可以激活或使能键击,响应于此而向用户提供反馈(例如,触觉的、可听见的、可看见的、等)的反馈组件。
[0182] 应该注意,以上讨论(例如,参考图1-2)的输入设备104可以包括触摸板或轨迹板。按钮(通常称作鼠标按钮)可以与触摸板或轨迹板相关联,这些按钮可以是如上所讨论的压敏按键。因此,基于用户输入是否是如上所讨论的键击,来确定用户输入是否是这种按键的选择。
[0183] 图31是在示例实现方式中可运行来采用本文所描述的技术的系统3100的例图。系统3100包括压力信息收集模块3102和键击确定模块3104。例如,可以在图1的输入设备104和/或计算设备102,或图2的输入设备104中实现系统3100。因此,例如,可以在输入设备104中实现模块3102,可以在计算设备102中实现模块3104,可以在输入设备104中实现模块3102和3104二者,等等。
[0184] 压力信息收集模块3102获取对压敏键盘的按键施加的压力的量的指示。模块3102获取(例如,接收和/或产生)与针对输入设备的键盘的用户输入相关的压力信息3106,并向键击确定模块3104提供压力信息3106。键击确定模块3104基于压力信息3106确定被敲击的一个或多个按键,并输出所述确定的指示3108。这种确定是基于对按键施加的压力,和可选地,如上所讨论的各种其它因素来进行的。
[0185] 在一个或多个实施例中,键击确定模块3104按照如下方式使用压力和可选地使用以上讨论的各种其它因素。在每一帧,分析键盘的按键。一个或多个按键称作被新按压,其指的是,一个或多个按键在被分析的帧中已上升至按键按压阈值量。
[0186] 如果按键被新按压,初始按键压力处于不定的范围中(例如,在按键按压阈值量和选择阈值量之间),并且按键当前还未被监视来确定其是键击还是无意致动,则记录初始压力和当前时间(例如,滴答数),并且改变按键状态或记录来指示按键被进一步监视,以确定所施加的压力是否是键击。
[0187] 否则,如果按键被新按压,按键当前正被监视,并且当前压力已上升至选择阈值量,则在满足任何附加因素的情况下,所施加的压力被确定为键击。如上所讨论的,可以使用各种附加因素,比如,滞后因素、自按键被释放起的时间量、自不同按键被确定为被敲击起的时间量、按键按压计数、等。
[0188] 否则,如果按键已经被监视了比监视时间段多的时间,而未确定所施加的压力是键击,则清除各种状态跟踪信息。可选地,按键可以被记录为被去抖,使得直到经过了去抖时间量,按键才被记录为被释放。
[0189] 否则,如果按键仍被按压或被去抖,则检查按键是否是鼠标按钮按键。如果按键是鼠标按钮按键,则更新变量或其它记录,以指示鼠标按钮状态(可选地,左和右鼠标按钮状态)。如果按键不是鼠标按钮按键,则记录当前时间(例如,滴答数)。基于按键按压是用户的无意按压的这个假设,该记录的时间可以用于将轨迹板活动延缓特定的时间量(比如,特定的毫秒数)。
[0190] 否则,如果按键刚刚被释放(例如,按键当前被跟踪为被按压,比如通过具有“等待按键被释放”的按键状态,并且当前压力值已下降至按键释放阈值量),则按键可以被认为是“新释放的”。按键状态被设置为不再被按压,并且记录当前时间(例如,滴答数),这可以用于防止按键被报告成,在被释放之后太早就就被按压。如果新释放的按键不是修正键,则跟踪当前按压的非修正键按键的数目的变量或其它记录被递减。这个计数用于确定是否达到按键按压计数阈值,如上所讨论的。
[0191] 否则,不按压或监视按键。如果滞后计数被维护来支持以上讨论的滞后因素,则可以清除滞后计数。
[0192] 图32是示出了根据一个或多个实施例的用于实现本文所描述的技术的示例过程3200的流程图。可以由诸如图31的键击确定模块3104之类的键击确定模块来实施过程
3200,过程3200可以以软件、固件硬件或其组合来实现。过程3200被显示为一组动作,并且不局限于所显示的用于执行各种动作的操作的顺序。过程3200是用于实现本文所描述的技术的示例过程。这里将参照不同附图包括实现本文所描述的技术的附加讨论。
[0193] 在过程3200中,在帧中,获取对键盘的按键施加的压力的指示(动作3202)。可以从如上讨论的压敏键盘的传感器基板接收这些指示,或者可替换地从其它组件或模块接收这些指示。对于每个帧,重复过程3200。
[0194] 对去抖时间量已经到期的任何按键进行去抖(动作3204)。对按键进行去抖指的是,记录所述按键的去抖时间量已经过去,使得如上所讨论的,当对所述按键施加的压力下降时,所述按键可以被确定为被释放。可以以多种方式执行所述记录,比如,可以使按键从“去抖”状态转变为“等待释放”状态。
[0195] 是否进行了键击的分析被限制为每帧一个新按键按压(动作3206)。新按键按压指的是,对最后被记录为被释放的按键所施加的压力上升至按键按压阈值量。可选地,按键可以保持在“被释放”状态或“被按压”状态,在这样的情况下,新按键按压指的是,对处于“被释放”状态的按键所施加的压力上升至按键按压阈值量。如果在帧内,最后被记录为被释放的多个按键都上升至按键按压阈值量,则在动作3206中,选择所述多个按键中的一个。所选按键可以是在所述帧内被施加的压力最大的按键。如果对多个按键施加相同压力,则选择这些按键之一(例如,当在动作3206中分析按键时碰到的第一按键,随机地,根据按键的一些等级或优先级级别,等),并且可以减小所记录的对未选的一个或多个按键施加的压力(例如,减小1克)。可替换地,可以以其它方式选择按键而不是基于压力,比如,随机地,根据按键的等级或优先级级别,等。
[0196] 可替换地,过程3200可以不包括动作3206。在这些情况下,键击的分析不受限于每帧一个新按键按压,而是可以包括每帧多个新按键按压。
[0197] 基于在帧内是否处理完所有按键,过程3200继续(动作3208)。帧的处理指的是,如以下在动作3210-3220中讨论的,分析按键。典型地,处理每个按键,因为一些按键可能被释放了。可替换地,可以只处理当前正处于“被按压”状态的按键和在动作3206中被识别为一个新按键按压的按键。
[0198] 如果按键的处理未完成,则选择未处理按键并确定是否所选按键已被释放(动作3210)。如果按键被记录为被按压(例如,处于“被按压”状态)并且对按键施加的压力下降至所选按键释放阈值量,则所选按键被释放了。
[0199] 如果所选按键未被释放,则检查所选按键是否在去抖(动作3212)。如上所讨论的,在去抖时间量的期间内,所选按键在去抖。计数器或其它跟踪机制可以用于按键,以确定按键何时在去抖。
[0200] 如果所选按键在去抖,则过程3200返回动作3208,以检查在帧内,是否已处理了所有按键。然而,如果所选按键不是在去抖,则检查所选按键是否被确定为已被敲击(动作3214)。在帧中所选按键是否被确定为已被敲击是基于对按键施加的压力和如上讨论的各种其它因素中的一个或多个的。可以每帧针对单个按键(例如,如上讨论的在动作3206中选择的按键),或者可替换地,每帧针对多个按键,执行按键是否被敲击的确定。所选按键是否被敲击可以基于确定对按键施加的压力是否上升至按键按压阈值量(和可选地,以上讨论的附加因素)。可替换地,所选按键是否被敲击可以基于确定在监视时间段内对按键施加的压力是否上升至选择阈值量和/或描绘了随时间而变的对按键施加的压力的线的斜率是否上升至阈值斜率(和可选地,以上讨论的附加因素)。
[0201] 如果所选按键未被确定为已被敲击,则过程3200返回动作3208,以检查在帧内,是否已处理了所有按键。然而,如果所选按键已被确定为已被敲击,则检查键盘报告是否被抑制(动作3216)。可以因为各种不同原因而抑制键盘报告,比如系统性能、节电等。
[0202] 如果键盘报告被抑制,则过程3200返回动作3208,以检查在帧内,是否已处理了所有按键。然而,如果键盘报告未被抑制,则将所选按键被确定为已被敲击的指示添加到键盘报告。键盘报告可以包括关于键击的各种信息,比如,被敲击的按键的指示、按键被敲击的时间、等。然后,过程3200返回动作3208,以检查在帧内,是否已处理了所有按键。
[0203] 回到动作3210,如果所选按键被释放了,则检查键盘报告是否被抑制(动作3216)。如果键盘报告被抑制,则过程3200返回动作3208,以检查在帧内,是否已处理了所有按键。
然而,如果键盘报告未被抑制,则将所选按键被释放的指示添加到键盘报告。键盘报告可以包括关于被释放的按键的各种信息,比如,被释放的按键的标识、按键被释放的时间、等。然后,过程3200返回动作3208,以检查在帧内,是否已处理了所有按键。
[0204] 回到动作3208,如果在帧内,已处理完所有按键,则发送键盘报告(如果有一个可得到的话)(动作3220)。可以向多种组件或模块发送键盘报告,比如图1的输入/输出模块108、图1和图2的输入设备104的另一模块或组件、等。
[0205] 图33是示出了根据一个或多个实施例的用于确定是否发生了键击的示例过程3300的流程图。可以由诸如图31的键击确定模块3104之类的键击确定模块来实施过程
3300,过程3300可以以软件、固件、硬件或其组合来实现。过程3300可以实现例如图32的动作3214。过程3300被显示为一组动作,并且不局限于所显示的用于执行各种动作的操作的顺序。过程3300是用于实现本文所描述的技术的示例过程。这里将参照不同附图包括实现本文所描述的技术的附加讨论。
[0206] 在过程3300中,检查对按键施加的压力是否处于不定的范围中(动作3302)。所述不定的范围指的是,在按键按压阈值量(例如,200克)和选择阈值量(例如,800克)之间的范围。如果对按键施加的压力不在所述不定的范围中,则检查对按键施加的压力是否上升至选择阈值量(动作3304)。如果对按键施加的压力没有上升至选择阈值量,则按键被确定为未被敲击(动作3306)。可选地,可以返回按键被确定为未被敲击的指示(例如,包括在如上讨论的键盘报告中)。
[0207] 然而,如果对按键施加的压力确实上升至选择阈值量,则在也满足所有其它因素的情况下,按键被确定为被敲击(动作3308)。如上所讨论的,可以运用各种不同因素,比如,滞后因素、自按键被释放起的时间量、自不同按键被确定为被敲击起的时间量、按键按压计数、等。可选地,可以返回按键被确定为已被敲击的指示(例如,包括在如上讨论的键盘报告中)。
[0208] 回到动作3302,如果对按键施加的压力处于所述不定的范围中,则检查按键的斜率是否已被监视(动作3310)。对按键施加的压力可能已经在先前帧中上升至按键按压阈值量,并且如上所讨论的,按键可能当前正处于监视时间段中,因而按键的斜率可能已被监视。
[0209] 如果按键的斜率还未被监视,则启动按键的监视(动作3312)。维护按键被监视的记录,并且当处理后续帧时,可以使用所述按键被监视的记录。这个记录可以是例如,使按键转变为“监视压力变化”状态。
[0210] 然而,如果按键的斜率已被监视,则检查按键是否仍处于监视时间段内(动作3314)。如果按键仍处于监视时间段内,则检查随时间而变的对按键施加的压力的图的斜率(对按键施加的按键压力的速率)是否上升至阈值斜率(动作3304)。如果图的斜率没有上升至阈值斜率,则按键被确定为未被敲击(动作3306)。可选地,可以返回按键被确定为未被敲击的指示(例如,包括在如上讨论的键盘报告中)。
[0211] 然而,如果图的斜率确实上升至阈值斜率,则在也满足所有其它因素的情况下,按键被确定为被敲击(动作3308)。如上所讨论的,可以运用多种不同因素。
[0212] 回到动作3314,如果按键仍然没有处于监视时间段中,则停止按键的斜率的监视(动作3314)。维护按键不再被监视的记录,并且当处理后续帧时,可以使用所述按键不再被监视的记录。这个记录可以是例如,使按键转变为“初始”状态。
[0213] 还应该注意,输入设备104可以响应于键击而向用户提供多种反馈。这个反馈可以采取多种形式,比如,可听见的(例如,每次在按键被确定为被敲击时,制造乐音或发砰砰声)、触觉的(例如,每次在按键被确定为被敲击时,输入设备振动)、可看见的(例如,每次在按键被确定为被敲击时,被敲击的按键发亮或者发光二极管(LED)照亮)、等。
[0214] 还应该注意,尽管在以上讨论中,各个单独按键是压力传感器,但是可替换地,多个压力传感器可以与按键相关联。例如,每个按键都可以并入与以上讨论的压力传感器相类似的任何数目的压力传感器。作为另一示例,输入设备可以包括密集的压力传感器阵列(例如,1500或更多传感器),其中不同组的传感器与键盘的不同按键相关联。在这些情况下,对按键施加的压力基于对关联于该按键的压力传感器施加的压力的组合(例如,和或其它函数)。
[0215] 在以上的讨论中,讨论了各种不同量、阈值、持续时间等。这些包括,例如,按键按压阈值量、滞后值、按键释放阈值量、按键按压持续时间、相同按键排斥时间阈值、不同按键排斥时间阈值、按键按压计数阈值、监视时间量、等。讨论了这些各种量、阈值、持续时间等的示例值,尽管这些是示例并且其它值也被考虑。此外,用于这些各种量、阈值、持续时间等的特定值可以基于不同系统配置、设置等而改变。
[0216] 例如,基于压力传感器或按键的大小或特性,不同值可以用于这些各种量、阈值、持续时间等。例如,与灵敏度较高的较大按键或较大传感器相比,灵敏度较低的小按键或小传感器可以具有较小的按键按压阈值和较小的按键释放阈值量。此外,不同值可以用于相同输入设备上的不同压力传感器或按键。例如,与较大按键相比,较小按键(例如,表面面积小于阈值尺寸)可以具有较小的按键按压阈值和较小的按键释放阈值量。
[0217] 在另一实例中,可以设置用于这些各种量、阈值、持续时间等的值,作为用户定制过程的一部分。用户定制过程可以是训练过程,在训练过程中,向用户呈现要键入的多个句子或其它字符串。用户按压适当按键来输入句子或其它串,并且用户的按键按压的各种参数(例如,所施加的压力,字符之间的定时(timing)等)被评估和用于定制这些值。因为句子或其它串已知,所以什么按键打算被用户敲击是已知的,按键的用户按压可以被识别为按键的选择,即使所施加的压力以别的方式将不会被确定为键击。例如,可以识别用户在录入按键时典型地施加的压力的量,并且可以基于该压力修改按键按压阈值量和/或选择阈值量(例如,如果用户是轻打字员并且典型地在敲击按键时施加500克的压力,则可以将按键按压阈值量减小至150克,或者如果用户是重打字员,典型地在敲打按键时施加1200克的压力,则可以将选择阈值量上升至1000克)。
[0218] 用户定制过程还可以是,用户输入指定用户的特定值。例如,可以向用户呈现用户接口,通过用户接口,用户可以识别这些各种量、阈值、持续时间等的特定值。可以以不同方式指定特定值,比如通过用户输入数字值(例如,将“180”录入数据输入域,以指示按键按压阈值量将是180克),通过沿着滑动标尺或刻度盘来选择设置,等。用户还能从多个设置中选择,每个设置都具有这些各种量、阈值、持续时间等的不同关联值。例如,用户能够在指示在敲击按键时典型地施加的压力的量的设置“轻”、“中等”和“高”之中选择,这些不同设置可以具有不同按键按压和/或选择阈值量(例如,与较重打字员相比,较轻打字员的阈值量较小)。作为另一示例,用户能够在指示键入有多快的设置“慢”、“中等”和“快”中选择,这些不同设置可以具有不同的相同按键和/或不同按键排斥时间量(例如,与较慢打字员相比,较快打字员的时间量较长)。
[0219] 在可以为这些各种量、阈值、持续时间等设置不同值作为用户定制过程的一部分的情况下,可以随时间而为用户维护所述值。例如,所述值可以与用户帐号相关联,使得每次用户登录到计算设备,在其登录到设备中时检索并使用其先前定制的值。
[0220] 计算设备的不同配置、计算设备的方位、运行在计算设备上的应用等也可以具有这些各种量、阈值、持续时间等的不同值。所述值可以是特定配置、方位、应用等的默认值,和/或可以设置特定配置、方位、应用等的值,作为用户定制过程的一部分。例如,与字处理应用相比,特定游戏可以具有较小的不同按键排斥时间阈值和/或较大的按键按压计数阈值。作为另一示例,与输入设备和显示设备都靠着表面平坦放置的情况相比,在靠着显示设备的背面平坦放置输入设备的情况下,监视时间量和/或去抖时间量可以更长。
[0221] 此外,尽管讨论了具体的量、阈值、持续时间等,但是也可以使用另外的量、阈值和/或持续时间。例如,在确定键击之后,一个或多个另外的压力阈值量可以用于确定与所选按键相对应的字符将要被呈现的特定方式。所述方式可以是不同字体大小、字体类型、字体粗细、字体样式(例如,粗体、下划线等)等。例如,如果对按键施加的压力在按键被释放之前上升至2000克,则可以以粗体显示字符,但是如果压力没有上升至2000克,则以正常状态(非粗体)显示字符。
[0222] 在另一实例中,在确定键击之后,另外的压力阈值量可以用于确定,响应于键击向用户提供反馈的特定方式。例如,在确定键击之后,一个或多个另外的压力阈值量可以用于确定可听见反馈的音量级。例如,如果对按键施加的压力在按键被释放之前上升至1500克,那么与该压力没有上升至1500克的情况相比,反馈可以更响亮。或者,如果对按键施加的压力在按键被释放之前上升至1500克,则可以提供可听见反馈和触觉反馈二者,但是如果压力没有上升至1500克,则仅提供触觉反馈。
[0223] 本文讨论的压敏键盘的键击确定的技术支持多种使用场景。所述技术允许对压敏键盘的键击被容易地识别出来,允许用户经由键盘容易而快速地提供输入。此外,这些技术允许容易地区分键击和用户不期望其是键击的其它输入,比如,用户将其手或手指搁在键盘上,用户在键盘上移动手指以找寻起始位置,无意触摸,等。
[0224] 示例系统和设备
[0225] 图34在3400处总体地示出了示例系统,这个示例系统包括示例计算设备3402,示例计算设备3402代表一个或多个计算系统和/或可以实现本文所描述的各种技术的设备。通过使用形状和大小适于用户的一只或多只手抓握和携带的外壳,计算设备3402可以例如被配置为采用移动配置,尽管其它示例也被考虑,但是移动配置的说明性示例包括移动电话、移动游戏和音乐设备、和平板计算机。
[0226] 如图所示的示例计算设备3402包括处理系统3404、一个或多个计算机可读介质3406和彼此可通信地耦合的一个或多个I/O接口3408。尽管未示出,但是计算设备3402还可以包括使各种组件彼此耦合的系统总线或其它数据和命令传输系统。系统总线可以包括诸如存储器总线或存储器控制器、外围总线、通用串行总线、和/或利用多种总线架构中的任何一个的处理器或局部总线之类的不同总线结构中的任何一个或者组合。多种其它示例也是被考虑的,比如控制线和数据线。
[0227] 处理系统3404代表使用硬件执行一个或多个操作的功能。相应地,处理系统3404被图示为包括硬件元件3410,其可以被配置为处理器、功能块等。这可以包括硬件的实现方式,如专用集成电路或使用一个或多个半导体制成的其它逻辑器件。硬件元件3410不受其构成材料或其中采用的处理机制的限制。例如,处理器可以包括半导体和/或晶体管(例如,电子集成电路(IC))。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
[0228] 计算机可读存储介质3406被图示为包括存储器/存储装置3412。存储器/存储装置3412代表与一个或多个计算机可读介质相关联的存储器/存储装置的容量。存储器/存储装置组件3412可以包括易失性介质(比如,随机存取存储器(RAM))和/或非易失性介质(比如,只读存储器(ROM)、闪速存储器、光盘、磁盘等)。存储器/存储装置组件3412可以包括固定介质(比如,RAM、ROM、固定硬盘驱动器等)以及可移除介质(比如,闪速存储器、可移除硬盘驱动器、光盘等)。可以以如下进一步讨论的多种其它方式配置计算机可读介质3406。
[0229] 输入/输出接口3408代表这样的功能,其允许用户向计算设备3402输入命令和信息,并且还允许使用各种输入/输出设备向用户和/或其它组件或设备呈现信息。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克扫描仪、触摸功能装置(例如,被配置来检测物理触摸的电容式传感器或其它传感器)、照相机(例如,其可以采用可见波长或诸如红外线频率之类的不可见波长来将移动识别为不涉及触摸的手势)等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,可以以多种方式配置计算设备3402,以支持用户交互。
[0230] 计算设备3402还被图示为可通信地物理耦合至输入设备3414,能够在物理和通信上从计算设备3402移除输入设备3414。按照这种方式,多种不同输入设备可以耦合至具有很多种配置的计算设备3402,以支持很多种功能。在该示例中,输入设备3414包括一个或多个按键3416,其可以被配置为压敏按键、机械开关的按键、等。
[0231] 输入设备3414还被图示为包括一个或多个模块3418,其可以被配置为支持多种功能。所述一个或多个模块3418例如可以被配置为处理从按键3416接收的模拟信号和/或数字信号,以确定键击是否是想要的,确定对按键施加的压力是否是键击,确定输入是否指示休息压力,支持输入设备3414的认证以与计算设备3402一起工作,等。模块3418可以包括例如图31的模块3102和/或3104。
[0232] 在本文中,可以在软件、硬件元件或程序模块的一般上下文下描述各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、组件、数据结构等。如本文所使用的术语“模块”、“功能”和“组件”一般表示软件、固件、硬件或其组合。本文所描述的技术的特征是平台独立的,这意味着可以在具有多种处理器的多种商用计算平台上实现所述技术。
[0233] 所描述的模块和技术的实现可以存储在一些形式的计算机可读介质上或者从一些形式的计算机可读介质的一端传输到另一端。计算机可读介质可以包括可以被计算设备3402访问的多种介质。举例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
[0234] “计算机可读存储介质”可以指的是,与纯粹的信号传输、载波或信号本身相比,使得信息能够永久性和/或非临时性地存储的介质和/设备。因此,计算机可读存储介质指的是,非携载信号的介质(non-signal bearing media)。计算机可读存储介质包括硬件,比如以适于存储信息(比如,计算机可读指令、数据结构、程序模块、逻辑元件/电路、或其它数据)的方法或技术实现的易失性和非易失性的、可移除和不可移除的介质和/或存储设备。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪速存储器或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其他光学存储装置,硬盘、磁盒、磁带、磁盘存储装置或其它磁存储设备,或适于存储期望信息且可被计算机访问的其它存储设备、有形介质、或制品。
[0235] “计算机可读信号介质”可以指携载信号的介质,其被配置为例如经由网络向计算设备3402的硬件传送指令。典型地,信号介质可以在诸如载波之类的经调制的数据信号、数据信号或其它传输介质中包括计算机可读指令、数据结构、程序模块或其它数据。信号介质还包括任何的信息传递介质。术语“经调制的数据信号”意指这样的信号,其特性中的一个或多个以在信号中编码信息的方式被设置或改变。举例而非限制,通信介质包括诸如有线网络或直连连接(direct-wired connection)之类的有线介质和诸如声学、RF、红外线和其它无线介质之类的无线介质。
[0236] 如前所述,硬件元件3410和计算机可读介质3406代表以硬件形式实现的模块、可编程逻辑器件和/或固定设备逻辑,在一些实施例中,其可以被采用,以实现本文所描述的技术的至少一些方面,比如执行一个或多个指令。硬件可以包括集成电路或片上系统的组件、专用集成电路(ASIC)、现场可编程阵列(FPGA)、复杂可编程逻辑器件(CPLD)、和其它实现方式或其它硬件。在本上下文中,硬件可以如同执行由指令定义的程序任务和/或由硬件体现的逻辑的处理设备以及用于存储执行的指令的硬件(例如,如前所述的计算机可读存储介质)一样运行。
[0237] 上述各项的组合也可以用于实现本文所描述的各种技术。因此,软件、硬件或可执行模块可以被实现为一些形式的计算机可读存储介质上包含的一个或多个指令和/或逻辑和/或由一个或多个硬件元件3410来实现。计算设备3402可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,例如通过使用计算机可读存储介质和/或处理系统3404的硬件元件3410,可以至少部分地以硬件来完成可被计算设备3402作为软件执行的模块的实现。指令和/或功能可被一个或多个制品(例如,一个或多个计算设备3402和/或处理系统3404)执行/运行,以实现本文所描述的技术、模块和示例。
[0238] 结论
[0239] 尽管已经用特定于结构特征和/或方法动作的语言对示例实现方式作了描述,但是应当理解,定义在所附权利要求中的实现方式不必局限于所描述的特定特征或动作。相反,所述特定特征和动作是作为实现权利要求的特征的示例形式来公开的。
QQ群二维码
意见反馈