数据传输方法、触控笔以及存储介质转让专利

申请号 : CN202210348967.3

文献号 : CN115525176B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 姚轶帆李毅勃李凯靳百萍

申请人 : 荣耀终端有限公司

摘要 :

本申请实施例提供一种数据传输方法、触控笔以及存储介质,该方法应用于触控笔,触控笔包括打码芯片、压感芯片、压力传感器和处理器,该方法包括:所述打码芯片向所述压感芯片发送压感采集请求;所述压感芯片基于所述压感采集请求采集所述压力传感器的压感数据;所述处理器获取所述压感芯片采集到的所述压感数据;以及所述处理器将所述压感数据发送给电子设备。通过上述数据传输方法可以降低原流程中打码芯片先触发中断请求处理器进行采集压感并上报,然后再通过处理器对压感芯片进行调度带来的时延,提高用户体验度。

权利要求 :

1.一种数据传输方法,其特征在于,应用于触控笔,所述触控笔包括打码芯片、压感芯片、压力传感器和处理器,所述方法包括:所述打码芯片向所述压感芯片发送压感采集请求;

所述压感芯片基于所述压感采集请求采集所述压力传感器的压感数据;

所述处理器获取所述压感芯片采集到的所述压感数据;以及所述处理器将所述压感数据发送给电子设备;

所述打码芯片具有用于发送所述压感采集请求的设定输出引脚,所述压感芯片具有中断引脚,所述打码芯片的所述设定输出引脚与所述压感芯片的所述中断引脚相连接;

所述打码芯片向所述压感芯片发送压感采集请求包括:所述打码芯片通过所述设定输出引脚向所述压感芯片的所述中断引脚发送所述压感采集请求;

所述压感芯片基于所述压感采集请求采集所述压力传感器的压感数据包括:所述压感芯片基于所述中断引脚获取的所述压感采集请求采集所述压力传感器的压感数据。

2.根据权利要求1所述的方法,其特征在于,所述打码芯片向所述压感芯片发送压感采集请求包括:在所述触控笔接收到所述电子设备发送的上行信号后,所述打码芯片发送下行信号并在预设时机向所述压感芯片发送压感采集请求。

3.根据权利要求2所述的方法,其特征在于,所述打码芯片发送下行信号并在预设时机向所述压感芯片发送压感采集请求包括:所述打码芯片发送下行信号并在发送预设次数所述下行信号后向所述压感芯片发送压感采集请求。

4.根据权利要求1至3中任意一项所述的方法,其特征在于,所述打码芯片向所述压感芯片发送压感采集请求包括:所述打码芯片通过中断的方式向所述压感芯片发送压感采集请求。

5.根据权利要求1所述的方法,其特征在于,所述压感采集请求为压感芯片唤醒指令;

所述压感芯片基于所述压感采集请求采集所述压力传感器的压感数据的过程包括:所述压感芯片基于所述压感芯片唤醒指令被唤醒并采集所述压力传感器的压感数据。

6.根据权利要求1所述的方法,其特征在于,所述处理器获取所述压感芯片采集到的所述压感数据包括:所述处理器通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存。

7.根据权利要求6所述的方法,其特征在于,在所述处理器通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存的过程之前,还包括:所述压感芯片在采集到所述压感数据之后,向所述处理器发送第一数据读取请求,其中,所述第一数据读取请求为中断信号;

所述处理器通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存包括:所述处理器基于所述第一数据读取请求通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存。

8.根据权利要求6所述的方法,其特征在于,在所述处理器通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存的过程之前,还包括:所述压感芯片在采集到所述压感数据之后,向所述处理器依次发送第二数据读取请求以及所述压力传感器的压感数据,其中,所述第二数据读取请求为中断信号;

所述处理器通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存包括:所述处理器基于所述第二数据读取请求通过与所述压感芯片之间的串行接口将所述压力传感器的压感数据读取至所述处理器的内存。

9.根据权利要求1所述的方法,其特征在于,所述打码芯片向所述压感芯片发送压感采集请求包括:所述打码芯片向所述压感芯片发送压感采集请求并向所述处理器发送状态消息;

所述处理器获取所述压感芯片采集到的所述压感数据包括:所述处理器基于所述状态消息,通过与所述压感芯片之间的串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存。

10.一种触控笔,其特征在于,包括:

压力传感器,用于检测所述触控笔的笔尖的压感数据;

打码芯片、压感芯片和处理器,所述打码芯片电连接于所述压感芯片,所述压感芯片电连接于所述处理器和所述压力传感器;

所述打码芯片用于向所述压感芯片发送压感采集请求;

所述压感芯片用于基于所述压感采集请求采集所述压力传感器的压感数据;

所述处理器用于获取所述压感芯片采集到的所述压感数据;以及所述处理器用于将所述压感数据发送给电子设备;

所述打码芯片具有用于发送所述压感采集请求的设定输出引脚,所述压感芯片具有中断引脚,所述打码芯片的所述设定输出引脚与所述压感芯片的所述中断引脚相连接;

所述打码芯片具体用于通过所述设定输出引脚向所述压感芯片发送所述压感采集请求;

所述压感芯片具体用于基于所述中断引脚获取的所述压感采集请求采集所述压力传感器的压感数据。

11.根据权利要求10所述的触控笔,其特征在于,所述打码芯片具体用于,在所述触控笔接收到所述电子设备发送的上行信号后,发送下DD220003I03行信号并在预设时机向所述压感芯片发送压感采集请求。

12.根据权利要求10所述的触控笔,其特征在于,所述处理器通过串行接口连接于所述压感芯片,所述处理器具体用于,通过所述串行接口将所述压感芯片采集到的所述压感数据读取至所述处理器的内存。

13.根据权利要求10所述的触控笔,其特征在于,所述打码芯片的设定输出引脚与所述压感芯片的中断引脚通过信号线连接;

所述打码芯片具体用于,通过所述信号线向所述压感芯片中断发送压感采集请求。

14.一种数据传输系统,其特征在于,包括:触控笔以及若干个电子设备,其中所述触控笔为权利要求10至13任一项所述的触控笔。

15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1‑9任一项所述的数据传输方法。

说明书 :

数据传输方法、触控笔以及存储介质

技术领域

[0001] 本申请涉及触控技术领域,尤其涉及一种数据传输方法、触控笔以及存储介质。

背景技术

[0002] 随着触控技术的发展,越来越多的电子设备采用触控方式进行人机交互,用户可以通过触控笔操作电子设备的触摸屏以向电子设备输入相应指令,电子设备根据用户输入的指令执行相应操作。
[0003] 触控笔在电子设备的屏幕上进行操作时,触控笔会将自身笔尖检测到的压力数值发送给电子设备,电子设备根据压力数值的大小控制笔画粗细。
[0004] 然而在上述压力数值采集与上传的过程中存在时延,实时性较差,影响用户体验。

发明内容

[0005] 本申请实施例提供一种数据传输方法、触控笔以及存储介质,触控笔的打码时序与电子设备的打码采集时序一致的情况下,该触控笔的打码芯片触发中断请求压感芯片采集笔尖的压感数据并上报给处理器,进而处理器将该压感数据发送给该电子设备,通过上述数据传输方法可以降低原流程中打码芯片先触发中断请求处理器进行采集压感并上报,然后再通过处理器对压感芯片进行调度带来的时延,提高用户体验度。
[0006] 第一方面,本申请实施例提供一种数据传输方法,应用于触控笔,触控笔包括打码芯片、压感芯片、压力传感器和处理器,该方法包括:打码芯片向压感芯片发送压感采集请求;压感芯片基于压感采集请求采集压力传感器的压感数据;处理器获取压感芯片采集到的压感数据;以及处理器将压感数据发送给电子设备。触控笔的打码芯片在预设时机直接向触控笔的压感芯片发送该中断信号,可以改善触控笔的处理器进行任务调度而导致的时延问题,从而使触控笔的处理器能够在预留的设定时间内从压感芯片处读取到当前压感数据,降低触控笔的打码同时进行压感数据的传输而造成电磁干扰从而使触控笔的处理器读出的压感数据失真的概率。
[0007] 进一步地,打码芯片向压感芯片发送压感采集请求包括:在触控笔接收到电子设备发送的上行信号后,打码芯片发送下行信号并在预设时机向压感芯片发送压感采集请求。
[0008] 进一步地,打码芯片发送下行信号并在预设时机向压感芯片发送压感采集请求包括:打码芯片发送下行信号并在发送预设次数下行信号后向压感芯片发送压感采集请求。
[0009] 进一步地,打码芯片向压感芯片发送压感采集请求包括:打码芯片向压感芯片中断发送压感采集请求。
[0010] 进一步地,压感采集请求为压感芯片唤醒指令;压感芯片基于压感采集请求采集压力传感器的压感数据的过程包括:压感芯片基于压感芯片唤醒指令被唤醒并采集压力传感器的压感数据。
[0011] 进一步地,处理器获取压感芯片采集到的压感数据包括:处理器通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存。
[0012] 进一步地,在处理器通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存的过程之前,还包括:压感芯片在采集到压感数据之后,向处理器发送第一数据读取请求,其中,第一数据读取请求为中断信号;处理器通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存包括:处理器基于第一数据读取请求通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存。
[0013] 进一步地,在处理器通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存的过程之前,还包括:压感芯片在采集到压感数据之后,向处理器依次发送第二数据读取请求以及压力传感器的压感数据,其中,第二数据读取请求为中断信号;处理器通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存包括:处理器基于第二数据读取请求通过与压感芯片之间的串行接口将压力传感器的压感数据读取至处理器的内存。
[0014] 进一步地,打码芯片向压感芯片发送压感采集请求包括:打码芯片向压感芯片发送压感采集请求并向处理器发送状态消息;处理器获取压感芯片采集到的压感数据包括:处理器基于状态消息,通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至处理器的内存。
[0015] 第二方面,本申请实施例提供一种触控笔,包括:压力传感器,用于检测触控笔的笔尖的压感数据;打码芯片、压感芯片和处理器,打码芯片电连接于压感芯片,压感芯片电连接于处理器和压力传感器;打码芯片用于向压感芯片发送压感采集请求;压感芯片用于基于压感采集请求采集压力传感器的压感数据;处理器用于获取压感芯片采集到的压感数据;以及处理器用于将压感数据发送给电子设备。
[0016] 进一步地,打码芯片具体用于,在触控笔接收到电子设备发送的上行信号后,发送下行信号并在预设时机向压感芯片发送压感采集请求。
[0017] 进一步地,处理器通过串行接口连接于压感芯片,处理器具体用于,通过串行接口将压感芯片采集到的压力传感器的压感数据读取至处理器的内存。
[0018] 进一步地,打码芯片的设定输出引脚与压感芯片的中断引脚通过信号线连接;打码芯片具体用于,通过信号线向压感芯片中断发送压感采集请求。
[0019] 第三方面,本申请实施例还提供一种数据传输系统,包括:触控笔以及若干个电子设备,其中触控笔为第二方面提供的触控笔。触控笔可以将压感数据通过无线通信连接(例如蓝牙)发送给当前操控的电子设备。该被操控的电子设备可以根据触控笔提供的笔尖压感数据进行相应控制,例如,在通过触控笔在电子设备屏幕上绘画的场景中,电子设备可以根据压感数据控制触控笔在电子设备的屏幕上划写笔画的粗细程度。
[0020] 第四方面,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现第一方面提供的数据传输方法。

附图说明

[0021] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0022] 图1为本申请实施例提供的一种场景示意图;
[0023] 图2A为相关技术中触控笔发送压感采集中断信号的发送时机示意图;
[0024] 图2B为相关技术中触控笔压感采集时内部元件交互示意图;
[0025] 图2C为相关技术中压感采集流程示意图;
[0026] 图3A为本申请一个实施例提供的触控笔的结构示意图;
[0027] 图3B为本申请一个实施例提供的触控笔的部分拆分结构示意图;
[0028] 图4为本申请实施例提供的一种触控笔与电子设备交互的示意图;
[0029] 图5为本申请实施例提供的一种触控笔的硬件结构示意图;
[0030] 图6为本申请实施例提供的一种电子设备的结构示意图;
[0031] 图7为本申请一个实施例适用的一种场景示意图;
[0032] 图8为本申请一个实施例适用的触控笔应用流程示意图;
[0033] 图9A为本申请实施例中一种电子设备屏幕的电容值变化的示意图;
[0034] 图9B为本申请实施例中一种电子设备屏幕的电容值变化的另一示意图;
[0035] 图10为本申请实施例中一种电子设备和触控笔的信号同步时序图;
[0036] 图11为本申请实施例提供的触控笔打码芯片与压感芯片的连接示意图;
[0037] 图12A为本申请实施例提供的触控笔压感采集时内部元件交互示意图;
[0038] 图12B为本申请一个实施例提供的数据传输方法的流程图;
[0039] 图13A为本申请实施例提供的另一种触控笔压感采集时内部元件交互示意图;
[0040] 图13B为本申请实施例提供的另一种数据传输方法的流程图;
[0041] 图14A为本申请实施例提供的再一种触控笔压感采集时内部元件交互示意图[0042] 图14B为本申请实施例提供的再一种数据传输方法的流程图;
[0043] 图15A为本申请实施例提供的再一种触控笔压感采集时内部元件交互示意图[0044] 图15B为本申请实施例提供的再一种数据传输方法的流程图。

具体实施方式

[0045] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0046] 图1为本申请实施例适用的一种场景示意图。参照图1,该场景中包括触控笔(stylus)100、电子设备200。图1中以电子设备200为平板电脑(portable android device,PAD)为例进行说明。触控笔100可以向电子设备200提供输入,电子设备200基于触控笔100的输入,执行响应于该输入的操作。在一种实施例中,触控笔100和电子设备200之间,可以通过通信网络进行互联,以实现无线信号的交互。该通信网络可以但不限于为:WI‑FI热点网络、WI‑FI点对点(peer‑to‑peer,P2P)网络、蓝牙网络、zigbee网络或近场通信(near field communication,NFC)网络等近距离通信网络。本申请实施例提供的触控笔100可以为一种有源电容笔,有源电容笔可以称为主动式电容笔。
[0047] 图2A为相关技术中触控笔发送压感采集中断信号的发送时机示意图,如图2A所示,在相关技术中,触控笔的打码芯片在每个周期内(例如一个周期为16.67ms)进行七次打码,并在第三次打码后预留设定时长(例如3.12ms)的压感采集时隙供触控笔的压感芯片采集触控笔笔尖的压感数据并将该压感数据上报给触控笔100的MCU。
[0048] 图2B为相关技术中触控笔压感采集时内部元件交互示意图,图2C为相关技术中压感采集流程示意图,如图2B和图2C所示,其中步骤①至步骤⑤分别对应步骤201至步骤205,具体地,触控笔的打码芯片在完成第三次打码后,触控笔的打码芯片向触控笔的MCU发送一个中断(INT)信号,触控笔的MCU在接收到该中断信号后向压感芯片发送唤醒指令以通知压感芯片进行压感采集,触控笔的MCU通过与触控笔的压感芯片之间的串口将压感芯片采集到的压感数据读取到内存中,再通过蓝牙将该压感数据发送给电子设备。也就是说,在理想情况下,触控笔在第三次打码和第四次打码之间,会完成上报压感数据的步骤。
[0049] 该触控笔可以集成打码同步、压感采集、充放电、蓝牙通信、姿态检测等多种功能,因此为保证主动式电容笔的实时性和可靠性,需要支持嵌入式实时操作系统。其中,充放电功能为触控笔对电源的充放电驱动控制;姿态检测功能为触控笔基于内部设置的陀螺仪以及加速度传感器的检测结果确定触控笔当前处于静止状态或者移动状态;例如触控笔与水平面之间的夹角信息等;蓝牙通信功能为触控笔通过与其他设备建立蓝牙通路并通过该蓝牙通路进行数据交互;另外,打码同步功能和压感采集功能在后续实施例中有描述。嵌入式操作系统是一种专门的操作系统,负责触控笔的全部软、硬件资源的分配、任务调度,控制、协调并发活动。嵌入式实时操作系统的多任务调度时延会受任务优先级、任务状态、任务上下文切换等多个因素影响。其中,上述触控笔打码芯片发送给MCU的中断信号可能被其他高优先级中断“中断”。因此,触控笔的MCU收到中断信号后,发送唤醒指令给压感芯片前,由于系统可能被其他中断打断或者被其他进程抢占,导致压感采集出现延迟(即下一次打码信号发射前不能及时将压感数据上报给触控笔的MCU),如果由于延迟导致第四次打码的过程和上报压感数据的过程交叠,换言之,第四次打码的过程与图2C所示的步骤S504同时进行,即在压感数据的传输过程中,若串口上传输压感数据和打码同时发生,由于触控笔在进行打码时发出的打码信号高电平可达40V,因此触控笔的打码会对压感数据的传输造成电磁干扰,进而在受电磁干扰影响的情况下,触控笔的MCU读出的压力数据失真,影响触控笔向电子设备发送的压感数据的真实性。
[0050] 图3A为本申请一个实施例提供的触控笔的结构示意图。触控笔100可以包括笔尖10、笔杆20和后盖30。笔杆20的内部为中空结构,笔尖10和后盖30分别位于笔杆20的两端,后盖30与笔杆20之间可以通过插接或者卡合方式,笔尖10与笔杆20之间的配合关系详见图
3B的描述。
[0051] 图3B为本申请一个实施例提供的触控笔的部分拆分结构示意图。触控笔100还包括主轴组件50,主轴组件50位于笔杆20内,且主轴组件50在笔杆20内可滑动设置。主轴组件50上具有外螺纹51,笔尖10包括书写端11和连接端12,其中,笔尖10的连接端12具有与外螺纹51配合的内螺纹(未示出)。
[0052] 当主轴组件50装配到笔杆20内时,笔尖10的连接端12伸入笔杆20内且与主轴组件50的外螺纹51螺纹连接。在一些其他示例中,笔尖10的连接端12与主轴组件50之间还可以通过卡合等可拆卸方式实现连接。通过笔尖10的连接端12与主轴组件50之间可拆卸相连,这样实现了对笔尖10的更换。
[0053] 其中,为了对笔尖10的书写端11受到的压力进行检测,笔尖10与笔杆20之间具有间隙10a,这样可以确保笔尖10的书写端11受到外力时,笔尖10可以朝向笔杆20移动,笔尖10的移动会带动主轴组件50在笔杆20内移动。而对外力的检测,在主轴组件50上设有压感组件60,压感组件60的部分与笔杆20内的固定结构固定相连,压感组件60的部分与主轴组件50固定相连。这样,主轴组件50随着笔尖10移动时,由于压感组件60的部分与笔杆20内的固定结构固定相连,所以主轴组件50的移动会驱动压感组件60形变,压感组件60的形变传递给电路板70(例如,压感组件60与电路板70之间可以通过导线或者柔性电路板实现电连接),电路板70根据压感组件60形变检测出笔尖10的书写端11的压力,从而根据笔尖10书写端11的压力控制书写端11的线条粗细。
[0054] 需要说明的是,笔尖10的压力检测包括但不限于上述方法。例如,还可以通过在笔尖10的书写端11内设置压力传感器,由压力传感器检测笔尖10的压力。
[0055] 本实施例中,参照图3B所示,触控笔100还包括多个电极,多个电极例如可以为第一发射电极41、接地电极43和第二发射电极42。第一发射电极41、接地电极43和第二发射电极42均与电路板70电连接。第一发射电极41可以位于笔尖10内且靠近书写端11,电路板70可以被配置为可以分别向第一发射电极41和第二发射电极42提供信号的控制板,第一发射电极41用于发射第一信号,当第一发射电极41靠近电子设备200的触摸屏201时,第一发射电极41与电子设备200的触摸屏201之间可以形成耦合电容,这样电子设备200可以接收到第一信号。因为触控笔100的笔尖设置有电极,触摸屏201集成有用于触摸传感的电极阵列。当触控笔100的笔尖距离触摸屏201较近时,由于触控笔100的电极140和触摸屏201的电极阵列之间存在绝缘物质(如空气、触摸屏上的玻璃),因此两者形成耦合电容,即触控笔100的电极140与触摸屏201的电极阵列可以通过耦合电容来传输信号。因此当电子设备200接收来自触控笔100的第一信号时,触摸屏201对应位置处的电容值会发生变化。据此,电子设备200可以基于触摸屏201上的电容值的变化,确定触控笔100(或触控笔100的笔尖)在触摸屏201的位置。其中,第二发射电极42用于发射第二信号,电子设备200根据接收到的第二信号可以判断触控笔100的倾斜角度。本申请实施例中,第二发射电极42可以位于笔杆20的内壁上。在一种示例中,第二发射电极42也可以位于主轴组件50上。
[0056] 接地电极43可以位于第一发射电极41和第二发射电极42之间,或者,接地电极43可以位于第一发射电极41和第二发射电极42的外周围,接地电极43用于降低第一发射电极41和第二发射电极42相互之间的耦合。
[0057] 当电子设备200接收来自触控笔100的第一信号时,触摸屏201对应位置处的电容值会发生变化。据此,电子设备200可以基于触摸屏201上的电容值的变化,确定触控笔100(或触控笔100的笔尖)在触摸屏201的位置。另外,电子设备200可以采用倾角检测算法中的双笔尖投影方法获取触控笔100的倾斜角度。其中,第一发射电极41和第二发射电极42在触控笔100中的位置不同,因此当电子设备200接收来自触控笔100的第一信号和第二信号时,触摸屏201上两个位置处的电容值会发生变化。电子设备200可以根据第一发射电极41和第二发射电极42之间的距离,以及触摸屏201上电容值发生变化后两个位置处之间的距离,获取触控笔100的倾斜角度,更为详细的获取触控笔100的倾斜角度可以参照现有技术中双笔尖投影方法的相关描述。
[0058] 本申请实施例中,参照图3B所示,触控笔100还包括:电池组件80,电池组件80用于向电路板70提供电源。其中,电池组件80可以包括锂离子电池,或者,电池组件80可以包括镍铬电池、碱性电池或镍氢电池等。在一种实施例中,电池组件80包括的电池可以为可充电电池或一次性电池,其中,当电池组件80包括的电池为可充电电池时,触控笔100可以通过无线充电方式对电池组件80中的电池进行充电。
[0059] 图4为本申请实施例提供的触控笔与电子设备交互的示意图,参照图4,电子设备200和触控笔100无线连接后,电子设备200可以通过电极阵列向触控笔100发送上行信号。
触控笔100可以通过接收电极接收该上行信号,且触控笔100通过发射电极(例如第一发射电极41和第二发射电极42)发射下行信号。下行信号包括上述的第一信号和第二信号,该下行信号即为打码信号。当触控笔100的笔尖10接触触摸屏201时,触摸屏201对应位置处的电容值会发生变化,电子设备200可以基于触摸屏201上的电容值,确定触控笔100的笔尖10在触摸屏201上的位置。在一种实施例中,上行信号和下行信号可以为方波信号。
[0060] 图5为本申请实施例提供的一种触控笔的硬件结构示意图。参照图5所示,触控笔100可以具有处理器110。处理器110可以包括用于支持触控笔100的操作的存储和处理电路。存储和处理电路可以包括诸如非易失性存储器的存储装置(例如,闪存存储器或构造为固态驱动器的其它电可编程只读存储器)、易失性存储器(例如,静态或动态随机存取存储器)等。处理器110中的处理电路可以用来控制触控笔100的操作。处理电路可以基于一个或多个微处理器、微控制器、数字信号处理器、基带处理器、电源管理单元、音频芯片、专用集成电路等。
[0061] 触控笔100中可以包括一个或多个传感器。例如,传感器可以包括压力传感器120。压力传感器120可以设置在触控笔100的书写端11(如图3B所示)。当然,压力传感器120还可以设在触控笔100的笔杆20内,这样,触控笔100的笔尖10一端受力后,笔尖10的另一端移动将力作用到压力传感器120。在一种实施例中,处理器110根据压力传感器120检测到的压力大小可以调整触控笔100的笔尖10书写时的线条粗细。
[0062] 触控笔100中可以包括压感芯片130。压感芯片130分别连接压力传感器120和处理器110。压感芯片130可以将压力传感器120检测到的压感数据由模拟信号转化为数字信号并上报给处理器110。
[0063] 本申请实施例中,触控笔100中可以包括一个或多个电极140(具体可以参照图3B中的描述),其中一个电极140可以位于触控笔100的书写端处,其中一个电极140可以位于笔尖10内,可以参照上述的相关描述。
[0064] 触控笔100中可以包括打码芯片150。打码芯片150分别连接电极140和处理器110。打码芯片150可以利用电极140中的发射电极发射下行信号,或利用电极140中的接收电极接收电子设备200触摸屏201发射的上行信号。在发射电极发射下行信号期间,该发射电极也可视为一种打码天线。
[0065] 处理器110可以用于运行触控笔100上的控制触控笔100的操作的软件。触控笔100的操作过程中,运行在处理器110上的软件可以处理传感器输入、按钮输入和来自其它装置的输入以监视触控笔100的移动和其它用户输入。在处理器110上运行的软件可以检测用户命令并且可以与电子设备200通信。
[0066] 为了支持触控笔100与电子设备200的无线通信,触控笔100可以包括无线模块。图8中以无线模块为蓝牙模块160为例进行说明。无线模块还可以为WI‑FI热点模块、WI‑FI点对点模块等。蓝牙模块160可以包括射频收发器,例如收发器。蓝牙模块160也可以包括一个或多个天线。收发器可以利用天线发射和/或接收无线信号,无线信号基于无线模块的类型,可以是蓝牙信号、无线局域网信号、诸如蜂窝电话信号的远程信号、近场通信信号或其它无线信号。
[0067] 应理解,本申请实施例中的电子设备200可以称为用户设备(user equipment,UE)、终端(terminal)等,例如,电子设备200可以为平板电脑(portable android device,PAD)、个人数字处理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备、车载设备或可穿戴设备,虚拟现实(virtual reality,VR)电子设备、增强现实(augmented reality,AR)电子设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等具有触控屏的移动终端或固定终端。本申请实施例中对电子设备的形态不做具体限定。
[0068] 图6为本申请实施例提供的一种电子设备200的结构示意图。参照图6,电子设备200可以包括多个子系统,这些子系统协作以执行、协调或监控电子设备200的一个或多个操作或功能。电子设备200包括处理器210、输入表面220、协调引擎230、无线接口240和显示器250。
[0069] 协调引擎230利用传感器层对输入表面220上的触控笔100进行定位,并使用本文所述的技术来估计触控笔100相对于输入表面220的平面的角位置。在一种实施例中,输入表面220可以称为触摸屏201。
[0070] 电子设备200还包括无线接口240,以促进电子设备200与触控笔100之间的电子通信。在一个实施方案中,电子设备200可被配置为经由低能量蓝牙通信接口或近场通信接口与触控笔100通信。在其他示例中,通信接口有利于电子设备200与外部通信网络、设备或平台之间的电子通信。
[0071] 显示器250可以位于输入表面220后方,或者可以与其集成一体,在许多情况下,用户操纵触控笔100与界面进行交互。
[0072] 对于本领域的技术人员而言将显而易见的是,上文关于电子设备200所呈现的具体细节中的一些细节可为实践特定的所述实施方案或其等同物所不需要的。类似地,其他电子设备可以包括更多数量的子系统、模块、部件等。在适当的情况下,一些子模块可以被实现为软件或硬件。因此,应当理解,上述描述并非旨在穷举或将本公开限制于本文所述的精确形式。相反,对于本领域的普通技术人员而言将显而易见的是,根据上述教导内容,许多修改和变型是可能的。
[0073] 基于图5和图6所示的结构,以下再结合图7和图8对电子设备和触控笔交互的过程进行说明。图7为本申请一个实施例适用的一种场景示意图,图8为本申请一个实施例适用的触控笔应用流程示意图,结合图7和图8所示,在该使用场景中可以包括触控笔100和电子设备200,以下该触控笔100以主动式电容笔为例进行说明,该电子设备以平板电脑为例进行说明。示例性的,当触控笔100和电子设备200建立蓝牙连接,即通过蓝牙建立触控笔100和电子设备200之间的通信通道,电子设备200屏幕的电极阵列周期性发送上行信号;当触控笔100的笔尖靠近电子设备200的屏幕时,触控笔100采集到来自于电子设备200的上行信号,即根据上行信号完成同步;触控笔100在每次采集到上行信号后,通过电极发送下行信号以及笔尖压感数据,即触控笔100周期性发送笔尖压感数据;当触控笔100的笔尖远离电子设备200的屏幕,触控笔100无法再通过电极采集到上行信号,因此结束同步,触控笔100不再发送下行信号和笔尖压感数据。
[0074] 这里的蓝牙连接方式可以为经典蓝牙的连接方式或低功耗蓝牙(Bluetooth Low Energy,BLE)的连接方式。在一种实施方式中,电子设备200的相应存储器中可以存储有用于唯一标识触控笔100的蓝牙地址。另外,该电子设备200的该存储器中还可以存储有与电子设备200之前成功配对过的触控笔100的连接数据。例如,该连接数据可以为与该电子设备200成功配对过的触控笔100的蓝牙地址。基于该连接数据,电子设备能够与该触控笔自动配对,而不必配置与其之间的连接,如进行合法性验证等。上述蓝牙地址可以为媒体访问控制(media access control,MAC)地址。电子设备200需要通过和触控笔100之间配对的过程来获取触控笔100的蓝牙地址。例如,用户可以主动控制触控笔100和电子设备200之间进行配对,使触控笔100发送广播,该广播可携带触控笔100的蓝牙地址和设备名称等,电子设备200搜索到触控笔100发送的广播后,显示触控笔100的设备名称选项,当用户点击电子设备200的屏幕上对应触控笔100的设备名称选项后,电子设备200接收到基于触控笔100的设备名称选项的确定操作,即可以与触控笔100之间进行蓝牙配对。然而这种配对方法需要用户的确定操作,比较繁琐,因此,电子设备200也可以通过其他通信方式获取到触控笔100的蓝牙地址以实现配对。比如,电子设备200与蓝牙键盘已经配对,且处于连接状态;触控笔100在不需要使用时可以吸附在蓝牙键盘的收纳部中,触控笔100通过线圈将自身的蓝牙地址发送给蓝牙键盘,同时触控笔100发送广播;蓝牙键盘通过私有的蓝牙数据通道,将触控笔100的蓝牙地址发送给电子设备200。之后,由电子设备200处理该私有通道信息的应用,在收到触控笔100的蓝牙地址后,上报给电子设备200中处理配对的应用;然后再由该应用触发界面上弹框让用户连接,或直接发起对触控笔100的连接,进而完成触控笔100与电子设备200之间的配对。这样,对于用户来说,无需繁琐的配对确认过程,只需要将触控笔100放入蓝牙键盘的收纳部中,即可以在无感地实现触控笔100与电子设备200之间的配对,之后,用户在需要使用触控笔100时,只需要从蓝牙键盘的收纳部中取出触控笔100,触控笔
100即可以和电子设备200建立蓝牙连接,用户可以直接使用触控笔100在电子设备200的屏幕上进行触控操作。
[0075] 图9A为触摸屏的电容值变化的示意图。当电子设备200接收来自触控笔100的第一发射电极41的第一信号时,触摸屏的电极阵列在对应位置处的电容值会发生变化。参照图9A,图9A中以电容值产生波峰表征触摸屏对应位置处的电容值发生变化,电子设备200可以基于触摸屏上的电容值的变化,确定触控笔100的笔尖的位置。另外,电子设备可以采用倾角检测算法中的双笔尖投影方法获取夹角。参照图9B,触控笔100中的第一发射电极41和第二发射电极42可以设置在触控笔的笔尖,第一发射电极41设置靠近笔尖的尖端,第二发射电极42相对于第一发射电极41远离笔尖的尖端。当电子设备200接收来自触控笔100的该第一信号以及该第二信号时,电子设备200的触摸屏两个位置处(如位置B和位置C)的电容值会发生变化,电子设备200可以基于第一电极和第二电极之间的距离,以及触摸屏两个位置处之间的距离,获取夹角,更为具体的双笔尖投影方法可以参照相关技术的具体描述。图9A以黑色圆点表征触控笔接触触摸屏的位置,图9B中以黑色圆点表征位置B和位置C。
[0076] 在一种实施例中,由于电子设备200和触控笔100是两个互相独立的系统,触控笔100并不知道电子设备200何时会进行下行信号采集,因此,电子设备200可以通过电极阵列周期性发送上行信号(同步信号)。以便于当触控笔100接收到该上行信号之后,基于上行信号在约定的时序发送下行信号,即实现了电子设备200和触控笔100之间的时序同步,使电子设备200可以在下行信号的采集时段采集到来自于触控笔100的下行信号,进而实现触控交互。例如,当电子设备200与触控笔100蓝牙连接成功时,电子设备200周期性发送上行信号,此时,当触控笔100距离电子设备200较近时,触控笔100的接收电极可以接收来自电子设备200发送的上行信号(同步信号),触控笔100基于该上行信号,控制电极140发送下行信号(包括第一信号),而当触控笔100没有接收到上行信号时,说明触控笔100距离电子设备
200较远,没有进行触控操作,因此不发送下行信号,以降低功耗。例如,如果用户将触控笔
100放在电子设备200的旁边,未通过触控笔100在电子设备200的屏幕上进行触控操作,由于触控笔100距离电子设备200较远,无法接收到来自于电子设备200发送的上行信号,因此,触控笔100不会发送下行信号,以降低功耗。但是,此时,如果用户拿起触控笔100开始在电子设备200上进行触控操作,那么,只有当触控笔100靠近电子设备200至一定程度,并接收到来自于电子设备200的上行信号后,才会触发发送下行信号,以实现与电子设备200之间的触控功能,这样可能会导致触控延迟。因此,在其他可能的实施方式中,电子设备200也可以通过蓝牙连接来发送上行信号至触控笔100,这样触控笔100在距离电子设备200较远(较远的距离下触控笔100无法接收到电子设备200通过电极阵列发送的信号)时,也可以通过蓝牙连接的方式接收到上行信号,以触发发送下行信号,可以降低触控延迟。例如,即便用户将触控笔100放在电子设备的旁边,电子设备200也可以通过蓝牙连接的方式向触控笔
100发送上行信号,而触控笔100会基于所接收到的上行信号来发送下行信号,当用户拿起触控笔100开始在电子设备200上进行触控操作时,只要触控笔100与电子设备200之间靠近到一定程度,电子设备200即可以接收到来自于触控笔100的下行信号,以实现触控交互功能,这样,可以使电子设备200对基于触控笔100的触控交互操作的响应更加及时,降低了触控延迟。在其他实施方式中,电子设备200还可以通过其他无线传输方式向触控笔100发送上行信号,并不限于通过蓝牙发送。在后续实施例中,仅以电子设备200通过电极阵列发送上行信号为例进行说明。
[0077] 图10为本申请实施例提供的电子设备和触控笔的信号同步时序图,如图10所示,在一种可能的实施方式中,电子设备200的屏幕刷新率为60Hz,屏幕刷新率是指每秒内电子设备200显示的画面的刷新次数。屏幕刷新率也可以称为显示频率或显示帧率。屏幕刷新率可以为60Hz、90Hz或120Hz。示例性的,当电子设备200与触控笔100建立无线连接,例如蓝牙连接。电子设备200周期性发送上行信号。当触控笔100采集到来自于电子设备200的上行信号,触控笔100的打码芯片可以在上行信号一个周期内,进行多次打码,用来显示用户触控的位置。该周期可以是屏幕刷新的周期,例如16.67ms。示例性的,触控笔100的打码芯片在一个周期内,可以打码7次,即向电子设备200发送7次下行信号。
[0078] 具体例如,电子设备200的刷新率为60Hz,表示电子设备200的屏幕每秒刷新60次画面,即每隔16.67ms(1000ms/60)刷新一次屏幕画面,刷新一次画面的时间即为一帧,即一帧为16.67ms。画面的刷新过程是通过向屏幕中像素写入数据电压的过程,对于屏幕中的一个像素,每次接收到数据电压后,即会基于最新接收到的数据电压来显示对应的灰度,直到下一次接收到更新的数据电压,呈阵列排布的像素发光显示组成整个屏幕画面。数据电压的写入过程一般是通过逐行扫描的过程实现的,从第一行像素至最后一行像素逐行扫描写入数据电压即完成了一次屏幕刷新。由于电子设备200中用于实现触控功能的电极阵列和用于实现显示功能的屏幕集成设置,因此,需要将数据写入的过程和通过电极阵列采集信号的过程分为不同的时段进行,以改善触控相关的信号对数据电压的写入造成不良影响。为了配合电子设备200的显示,电子设备200可以根据屏幕刷新率发送上行信号。例如,电子设备200的屏幕刷新率为60Hz,屏幕共有m行像素。在每帧时间(16.67ms)中,电子设备200首先通过电极阵列发送上行信号,在发送上行信号之后开始第一次像素扫描,第一次像素扫描为第1~n1行像素扫描,即对第1~n1行像素逐行写入数据电压,第1~n1行像素扫描的时长为a,之后电子设备200通过电极阵列执行第一次下行信号采集,采集时长为b,例如a+b=
2.08ms,然后再进行第二次像素扫描,即第n1+1~n2行像素扫描,扫描时长为a,之后电子设备200通过电极阵列执行第二次下行信号采集,采集时长为b,然后进行第三次像素扫描,即第n2+1~n3行像素扫描,扫描时长为a,之后电子设备200通过电极阵列执行第三次下行信号采集,采集时长为b,然后再进行第四次像素扫描,即第n3+1~n4行像素扫描,扫描时长为a+b+a=3.12ms,之后电子设备200通过电极阵列执行第四次下行信号采集,采集时长为b,然后依次交替进行像素扫描和下行信号采集,每次像素扫描时长为a,每次下行信号采集时长为b,其中,在第七次下行信号采集之后,执行八次像素扫描,完成第m行像素的扫描,即完成一次屏幕刷新,共用时16.67ms。上述16.67ms即为一帧时间,在一帧时间中,电子设备200分时执行像素扫描和下行信号采集,以降低两者之间的出现干扰的概率。在一帧结束之后,进入下一帧,电子设备200在每帧中均以相同的方式发送上行信号、进行像素扫描和下行信号采集,也就是说,一帧时间为发送上行信号的周期。
[0079] 对于触控笔100来说,其可以通过接收电极持续采集上行信号,当其通过接收电极采集到来自于电子设备200的上行信号时,一方面,说明触控笔100距离电子设备200的屏幕较近,需要发送下行信号,以便于和电子设备200交互实现触控功能,另一方面,由于电子设备200仅在特定的时段进行下行信号采集,因此,触控笔100根据采集到上行信号的时间实现与电子设备200之间的同步,以便于在对应的时段发送下行信号,使电子设备200能够采集到下行信号。例如,当触控笔100通过接收电极采集到来自于电子设备200的上行信号时,则在接收完该上行信号的时间点经过a时长之后执行第一次发送下行信号,发送下行信号包括通过第一发射电极发射第一信号以及通过第二发射电极发射第二信号,第一次发送下行信号的时长为b,这样,就可以保证电子设备200能够在执行第一次下行信号采集时采集到来自于触控笔100的下行信号,并且,可以降低触控笔100在电子设备200执行像素扫描的过程中发送下行信号的概率,以改善下行信号由于电容耦合而对电子设备200中像素的数据写入过程造成不良影响。类似地,触控笔100在第一次发送下行信号之后,会间隔a时长执行第二次发送下行信号,第二次发送下行信号的时长为b,然后,间隔a时长执行第三次发送下行信号,发送时长为b,然后间隔a+b+a=3.12ms时长后执行第四次发送下行信号,发送时长为b,然后间隔a时长依次执行第四至第七次发送下行信号,每次发送时长为b,任意两次发送下行信号之间的间隔为a。即使触控笔100将所采集到的上行信号的时间作为基准时间,基于该基准时间,根据约定好的时序执行七次发送下行信号的过程,以使每次发送下行信号均与电子设备200采集下行信号的时段对应。然后,如果用户仍在使用触控笔100在电子设备200上进行触控操作,那么,触控笔100仍会通过接收电极采集到来自于电子设备200的新的上行信号,触控笔100仍根据采集到上行信号的时间作为基准,根据约定好的时序执行发送下行信号的过程。也就是说,触控笔100每采集到一次来自于电子设备200的上行信号,均根据约定的时序执行七次发送下行信号的过程。如果用户使用触控笔100在电子设备200上持续进行触控操作,触控笔100均可以通过上述方式来实现与电子设备200之间的时序同步并且实现与电子设备200之间的触控交互功能。如果用户停止使用触控笔100,将触控笔100从电子设备200的屏幕表面拿起,即触控笔100远离电子设备200,那么,一方面触控笔100无法采集到来自于电子设备200的上行信号,因此在完成最后一轮七次发送下行信号的过程之后,则不会继续发送下行信号;另一方面电子设备200也无法采集到来自于触控笔
100的下行信号。
[0080] 需要说明的是,上述触控笔100和电子设备200之间的同步过程仅为在理想情况下的举例说明,在实际同步过程中,还可能需要考虑上行信号的传输时延和处理时延,以此来设置发送下行信号的时段。另外,电子设备200在一帧时间内执行七次下行信号采集仅为举例,具体可以根据需要设置,在一帧时间内采集下行信号的次数越多,即触控采样率越高。触控采样率越高,则触控灵敏度越高,例如用户在使用触控笔100进行书写时,更高的触控采样率可以给用户带来更好的跟手效果,电子设备200屏幕上的笔画能够更加及时的反映用户的书写动作;但是,由于触控采样的过程和像素扫描的过程需要分时进行,提高触控采样率则会压缩像素扫描的时间,因此,需要根据像素扫描所需要的时间,以及屏幕刷新率的需要,结合触控采样率的需求设置电子设备200在一帧时间内执行下行信号采集的次数。另外需要说明的是,在上述同步过程中,在上行信号的一个周期内,除了第三次采集下行信号和第四次采集下行信号之间的间隔为a+b+a之外,其他任意相邻两次采集下行信号之间的间隔均可以为a,第三次采集下行信号和第四次采集下行信号之间的间隔是预留给触控笔
100采集压感数据的时间,采集压感数据的过程会在后续内容中详细说明。另外,在其他可能的实施方式中,发送上行信号与第一次采集下行信号之间的间隔也可以不是a。
[0081] 上述实施例仅以电子设备200的屏幕刷新率为60Hz为例进行说明,在其他可能的实施方式中,电子设备200的屏幕刷新率例如为90Hz,此时,电子设备200的屏幕每隔11.11ms刷新一次画面,为了配合电子设备200的屏幕刷新率,电子设备200每隔11.11ms发送一次上行信号。在不同屏幕刷新率下,电子设备200在每帧时间内采集下行信号的次数可能不同,采集下行信号的持续时长b可能不同,两次采集下行信号之间的间隔时长可能不同,这些即代表了触控信号采集时序。在一种可能的实施方式中,电子设备200可能会动态切换屏幕刷新率,例如,在游戏场景下,切换为90Hz的较高屏幕刷新率,以保证游戏流程性,在非游戏场景下,切换为60Hz的较低屏幕刷新率,以降低功耗。这种情况下,针对不同的屏幕刷新率,具有相对应的下行信号采集时序。对于电子设备200来说,在不同屏幕刷新率下,需要根据刷新率调整上行信号的发送时序,例如当电子设备200的屏幕刷新率由60Hz切换为90Hz,电子设备200将原本每16.67ms发送一次上行信号改为每11.11ms发送一次上行信号,并且对应改变下行信号采集时序;对于触控笔100来说,由于电子设备200的屏幕刷新率切换会导致下行信号采集时序的改变,因此,需要知道电子设备200当前的屏幕刷新率,才能够适应性切换下行信号发送时序。例如,电子设备200可以在切换屏幕刷新率时通过蓝牙连接发送消息通知触控笔100,这样,触控笔100即可以知道电子设备200当前的屏幕刷新率,然后,当每次采集到上行信号时,即可以根据电子设备200当前的屏幕刷新率来基于对应的下行信号发送时序发送下行信号,以便于电子设备200能够同步采集到下行信号;又例如,由于电子设备200的屏幕刷新率切换之后,上行信号的发送周期也会改变,因此,触控笔
100可以根据相邻两次采集到的上行信号之间的时间间隔来确定电子设备200的屏幕刷新率,如果相邻两次采集到的上行信号之间的时间间隔为16.67ms,则确定电子设备200当前的屏幕刷新率为60Hz,如果相邻两次采集到的上行信号之间的时间间隔为11.11ms,则确定电子设备200当前的屏幕刷新率为90Hz,根据所确定的屏幕刷新率,采用对应的时序来发送下行信号,即可以使电子设备200同步采集到下行信号。
[0082] 在一些实施例中,为了解决发送下行信号和通过串口读取压感数据同时进行,读取的压感数据受电磁干扰而数据失真的问题,参照图10,触控笔100在上行信号的周期16.67ms内,触控笔100发送完第3次下行信号后,预留设定时长作为压感采集时隙供触控笔
100的压感芯片进行压感采集以及触控笔100的处理器通过串口读取该压感芯片采集到的压感数据。
[0083] 在一种可能实施的方式中,预留的该设定时长可以根据需要设置,例如设定时长为两段触控笔100发送的相邻两个下行信号之间的时长与一个下行信号占用的时长的总和,即,该预留的设定时长可以为a+b+a。示例性的,电子设备200的刷新率为60Hz,触控笔100在采集到上行信号时,在16.67ms内可以发送8次下行信号(即,进行8次打码),为降低受上述电磁干扰而导致处理器读取出的压感数据失真的概率,触控笔100在发送3次下行信号后,不立即进行第4次下行信号的发送(即,一个上行信号的周期16.67ms内实际发送7次下行信号),而是预留设定时长作为压感采集时隙供触控笔100的压感芯片进行压感采集以及触控笔100的处理器通过串口读取该压感芯片采集到的压感数据,在发送第3次下行信号并间隔设定时长后发送第4次下行信号。该预留的设定时长可以为3.12ms,触控笔100的处理器需要在预留的设定时间(3.12ms)以内通过串口读取该压感芯片采集到的压感数据,以降低通过串口读取压感数据的过程与发送第四次下行信号的过程存在交叠的概率,从而产生电磁干扰导致处理器读取到的压感数据失真。其中,触控笔100的压感芯片进行压感采集以及触控笔100的处理器通过串口读取该压感芯片采集到的压感数据的具体实现过程在后续内容中详细描述。
[0084] 本申请实施例提供一种数据传输方法,应用于触控笔100,其中,触控笔100与电子设备200蓝牙连接,且触控笔100采集到电子设备200发送的上行信号后,触控笔100的打码芯片发送下行信号并在预设时机向触控笔100的压感芯片发送压感采集请求。触控笔100的压感芯片可以被该压感采集请求唤醒,从而采集触控笔100的压力传感器的压感数据并提供给触控笔100的处理器。通过该方式可以改善触控笔100的处理器进行任务调度而导致的时延问题,从而使触控笔100的处理器能够在预留的设定时间内从压感芯片处读取到当前压感数据,降低触控笔100的打码同时进行压感数据的传输而造成电磁干扰从而使触控笔100的处理器读出的压感数据失真的概率。
[0085] 为实现触控笔的打码芯片可以向触控笔的压感芯片发送中断信号,参照图11,基于图5所示触控笔100的结构,该触控笔的打码芯片与压感芯片连接。打码芯片具有用于发送压感采集请求的设定输出引脚P1,打码芯片用于通过该设定输出引脚P1发送请求以触发进行压感数据的采集。压感芯片具有中断引脚P2,压感芯片用于基于中断引脚P2所获取的信号触发采集压感数据。打码芯片的设定输出引脚P1与压感芯片的中断引脚P2相连接,进而打码芯片通过该引脚之间的通信连接向压感芯片发送压感采集请求以触发进行压感数据的采集,具体触发流程在后续内容中详细描述。
[0086] 图12A为本申请实施例提供的触控笔压感采集时内部元件交互示意图,图12B为本申请一个实施例提供的数据传输方法的流程,结合图12A和图12B所示,触控笔100可以在下行信号发送期间的压感采集时隙内基于相应信号进行压感数据的采集和传输响应,即通过本申请实施例提供的一种数据传输方法发送压感数据至电子设备。本申请实施例提供的数据传输方法可以应用于图5和图11所示结构的触控笔,其中,该触控笔包括处理器110、压感芯片130以及打码芯片150,并且打码芯片的设定输出引脚P1与压感芯片的中断引脚P2相连接,以下基于图5和图11所示结构,结合图12A和图12B对该数据传输方法进行说明,该数据传输方法包括:
[0087] 步骤1101:触控笔100的打码芯片150通过中断的方式发送压感采集请求给触控笔100的压感芯片130。
[0088] 其中,该压感采集请求可以视为一种唤醒指令,具有唤醒功能,即,触控笔100的压感芯片130接收到触控笔100的打码芯片150发送的压感采集请求时被唤醒,进而触控笔100的压感芯片130被唤醒后执行压感采集任务。
[0089] 其中,压感采集请求即为中断信号,该中断信号旨在请求压感芯片130基于打码芯片150的请求作中断处理,压感芯片130响应打码芯片150的中断信号执行压感采集任务,示例性的,该压感采集任务包括压感芯片130采集触控笔100的压力传感器120检测到的笔尖的当前压感数据。
[0090] 其中,中断具体为在处理器执行程序的过程中,出现了某种紧急情况或异常的事件时,暂停正在执行的程序,转去处理该事件,并在处理完该事件之后返回断点处继续执行刚刚被暂停的程序,中断处理的流程包括:
[0091] (1)、发送终端请求:中断源向处理器发送中断请求信号(以下简称中断信号)。
[0092] (2)、中断响应:处理器根据中断源发送的中断信号进入中断响应阶段,并向中断源发送中断响应信号。
[0093] (3)、断点保护:处理器保存断点保护现场。
[0094] (4)、执行中断服务程序:处理器执行中断信号对应的程序。
[0095] (5)、中断返回:处理器恢复断点返回到被中断的主程序。
[0096] 上述中断处理过程适用在本申请实施例中时,当触控笔100的压感芯片130接收到触控笔100的打码芯片150发送的中断信号后,压感芯片130暂停执行当前正在执行的主程序,转入执行中断信号对应的程序,该中断信号对应的程序执行完毕之后压感芯片130即返回继续执行原来被中断的主程序。示例性的,触控笔100的压感芯片130正在执行程序A,当触控笔100的压感芯片130接收到打码芯片150发送的中断信号后,暂停执行程序A,转入执行该中断信号对应的程序,即,触控笔100的压感芯片130获取笔尖的压感数据,在压感芯片130获取到笔尖的压感数据后上报至触控笔100的处理器110。从而使触控笔100的处理器可以将该笔尖的压感数据读取至自身内存,其中具体获取方式在后续内容中具体描述。
[0097] 在一种实施方式中,步骤S1101的触发时机可以为打码芯片150在发送完预设次数的下行信号时。示例性的,触控笔100采集到上行信号时,控制打码芯片150发送7次下行信号,该触发时机可以为打码芯片150在发送完第3次下行信号时。在另一种实施方式中,该触发时机还可以为预设时间点,其中,可以基于触控笔100的内部时钟设定该预设时间点。例如,触控笔100采集到上行信号时经过3a+3b的时长恰好是打码芯片150发送完第3次下行信号的时间,因此,该触发时机可以为触控笔100采集到上行信号并经过3a+3b的时刻。
[0098] 需要说明的是,触控笔100的打码芯片150触发向触控笔100的压感芯片130发送中断信号的时机仅为举例,本申请实施例对此不做限定。例如,在其他可能的实施方式中,触控笔100的打码芯片150可以在第1次发送下行信号之后触发向触控笔100的压感芯片130发送中断信号,此时,可以在第1次发送下行信号和第2次发送下行信号之间预留设定时长来进行压感采集。另外,本申请实施例对于设定时长的具体值也不做限定,为了减少发送下行信号和通过串口读取压感数据同时进行的概率,设定时长大于其他任意相邻两次发送下行信号之间的间隔时长,但是为了保证下行信号的采样率,设定时长也不能过长,不然就会压缩电子设备200在一帧时间内对下行信号的采样次数。
[0099] 其中,步骤S1101的触发时机为打码芯片150在发送完预设次数的下行信号时,触控笔100可以对其打码芯片的下行信号的发送进行计次处理,在一种可能的实现方式中,触控笔100可以基于内置的计数器进行上述计次处理,即,在触控笔的打码芯片每发送一次下行信号后计数器的计数值加一,在发送完一帧内所有的下行信号后,触发计数器将计数值清零,并在进入下一个上行信号的周期后重新计次。在基于上述计次方式,可以在该计数器的计数值为计数阈值时,触发触控笔100的打码芯片向触控笔100的压感芯片130发送中断信号。示例性的,计数阈值为3,触控笔100在上行信号的周期16.67ms内,设定在发送完第3次下行信号后,触发触控笔100的打码芯片150向触控笔100的压感芯片130发送该中断信号。
[0100] 通过上述中断处理的方式可以保证一些程序执行时的实时性,例如,在第三次发送下行信号和第四次发送下行信号之间留给压感芯片采集并上报压感数据的时间(即预留的设定时间)有限,需要在有限时间内完成压感数据的上报,为了降低通过处理器唤醒压感芯片带来的时延,打码芯片150可以向该压感芯片130发送中断信号,从而使压感芯片130无需等待处理器的调度过程,直接根据来自于打码芯片150的中断信号执行压感数据的采集,以提高压感采集任务执行的高效性。
[0101] 该数据传输方法还包括:
[0102] 步骤1102:触控笔100的压感芯片130基于压感采集请求采集压感数据。
[0103] 其中,当压感芯片130接收到打码芯片150发送的中断信号(压感采集请求)后,可以停止当前运行的程序或任务,并执行压感采集任务,也可以理解为压感芯片130接收到中断信号后被唤醒,并做中断处理以执行压感采集任务。其中,执行压感采集任务可以理解为压感芯片130采集压力传感器120检测到的笔尖压感数据,并将该笔尖压感数据传输给处理器110。通过打码芯片150直接向压感芯片130发送该中断信号,使压感芯片130作中断处理以执行压感采集任务,可以降低通过触控笔100的处理器进行压感采集任务调度带来的时延,能够提高压感采集任务执行的高效性。
[0104] 步骤1103:触控笔100的处理器110获取压感芯片采集到的压感数据。
[0105] 其中,在压感芯片130采集到压力传感器120所检测的笔尖的当前压感数据后,触控笔100的处理器110可以进一步获取压感芯片130采集到的笔尖压感数据。触控笔100的压感芯片130与触控笔100的处理器之间通过串行接口连接,进而触控笔100的处理器110可以通过与压感芯片130之间的串行接口将压感芯片采集到的压感数据读取至自身内存。
[0106] 步骤1104:触控笔100的处理器110通过蓝牙将当前压感数据发送给电子设备200。
[0107] 其中,在处理器110将接收到的压感数据同步给电子设备200之前,触控笔100可以与电子设备200建立无线连接。通过该中断请求的方式可以提高触发压感采集及上报流程的实时性;更重要地,相比于图2B和图2C所示的相关技术中的压感采集的流程,本申请实施例提供的压感采集的触发方式可以降低图2B和图2C所示的相关技术中调度过程中存在的MCU受任务优先级、任务状态、任务上下文切换等多个因素影响导致出现的时延。在本申请实施例中,打码芯片150直接向压感芯片130发送压感采集请求,因此压感芯片130可以及时接收到来自于打码芯片150的压感采集请求,进而基于该请求信息执行相应的压感数据采集以及上报流程,在触控笔100的压感芯片130采集压感数据之前,无需经过处理器110的调度,因此即便处理器110具有待处理的任务,也不会对压感数据采集过程造成阻碍,因此提高了触控笔100与电子设备200之间的压感数据传输的实时性。另外,由于降低了压感数据采集的时延,使得触控笔100的处理器110通过与压感芯片130之间的串行接口将压感芯片采集到的压感数据读取至自身内存的过程更不容易与触控笔100发送下行信号的过程交叠,从而降低了触控笔100的处理器读出的压感数据失真的概率。
[0108] 在一种实施方式中,如图13A和图13B所示,触控笔100的压感芯片130基于压感采集请求采集到压感数据后,执行步骤1015,步骤1015为:向触控笔100的处理器110发送第一数据读取请求,该第一数据读取请求为一种中断信号,步骤1103具体为:触控笔100的处理器110基于第一数据读取请求通过与压感芯片130之间的串行接口将压感芯片130采集到的压感数据读取至自身内存。
[0109] 其中,触控笔100的压感芯片130具有设定输出引脚,压感芯片130的该设定输出引脚电连接于处理器110的中断引脚。压感芯片130用于通过该设定输出引脚发送该第一数据读取请求。触控笔100的处理器110具有中断引脚,处理器110用于基于中断引脚所获取的第一数据读取请求(中断信号)触发从中断源(即压感芯片130)读取压感数据至自身内存,具体地,处理器110可以在接收到第一数据读取请求后,做中断处理,该中断处理包括:暂停处理器110当前正在执行的程序或任务,并转为执行通过与压感芯片130之间的串行接口将压感芯片130采集到的压感数据读取至自身内存,并在读取到压感数据后返回执行被暂停的程序或任务。
[0110] 其中,触控笔100的处理器110基于第一数据读取请求从压感芯片130处读取压感数据时,处理器110可以将压感芯片130处具有目标标识的压感数据读取到自身内存。具体实现方式如下:
[0111] ①、触控笔100的压感芯片130与处理器110可以相互约定对压感数据设置标识的方式。
[0112] ②、触控笔100的压感芯片130基于压感采集请求采集到当前压感数据后,根据约定方式给当前压感数据设置标识。
[0113] ③、触控笔100的处理器110接收到第一数据读取请求后,将压感芯片130处具有目标标识的压感数据读取到自身内存。
[0114] 其中,触控笔100的压感芯片130与处理器110可以相互约定以顺序编号的方式对压感芯片130采集到的压感数据设置标识。示例性的,触控笔100的压感芯片130对前几次采集到的压感数据设置的编号为:00001、00002以及00003,当前,触控笔100的压感芯片130基于压感采集请求采集到当前压感数据后,根据约定方式给当前压感数据设置编号为00004,并向触控笔100的处理器110发送第一数据读取请求。触控笔100的处理器110接收到第一数据读取请求后,将压感芯片130处具有目标编号的压感数据读取到自身内存,其中,触控笔100的处理器110根据约定可以得知当前要读取的压感数据的编号应为00004,因此,触控笔
100的处理器110可以有目的性的将压感芯片130处编号为00004的压感数据读取到自身内存。触控笔100的压感芯片130与处理器110相互约定的方式可以包括但不限于上述以顺序编号的方式对压感芯片130采集到的压感数据设置标识。
[0115] 在另一种实施方式中,如图14A和图14B所示,触控笔100的压感芯片130基于压感采集请求采集到压感数据后,执行步骤1016,步骤1016为:向触控笔100的处理器110依次发送第二数据读取请求以及基于压感采集请求采集到的压感数据,该第二数据读取请求为一种中断信号,步骤1103具体为:触控笔100的处理器110基于第二数据读取请求通过与压感芯片130之间的串行接口将压感芯片130采集到的压感数据读取至自身内存。
[0116] 其中,触控笔100的压感芯片130具有设定输出引脚,压感芯片130的该设定输出引脚电连接于处理器110的中断引脚。压感芯片130用于通过该设定输出引脚发送该第二数据读取请求。压感芯片130发送该第二数据读取请求后,通过与触控笔100的处理器110之间的串口连接将本次采集到压感数据传输给触控笔100的处理器。
[0117] 具体地,处理器110可以在接收到第二数据读取请求后,做中断处理,该中断处理包括:暂停处理器110当前正在执行的程序或任务,并转为执行将压感芯片130通过二者间串口连接发送的压感数据读取至自身内存,并在读取完成后返回执行被暂停的程序或任务。在本实施方式中,触控笔100的压感芯片130在采集到压感数据后,通过向触控笔100的处理器发送中断信号(即该第二数据读取请求)并通过与处理器110之间的串口连接将本次采集到的压感数据传输给处理器110,该处理器110通过中断处理将串口连接传输的压感数据读取至自身内存,该处理器110可以较为快速地获取到压感数据,较低传输时延,从而能够进一步保证触控笔100的处理器在预留的设定时间内获取到压感数据。
[0118] 在另一种实施方式中,如图15A和图15B所示,触控笔100在接收到电子设备200发送的上行信号后,触控笔100的打码芯片150发送下行信号并在预设时机向所述压感芯片发送压感采集请求并向触控笔100的处理器110发送状态消息,也就是说,步骤1101具体包括:步骤1101a和步骤1101b,步骤1101a为:触控笔100的打码芯片150向压感芯片130发送压感采集请求,步骤1101b为:触控笔100的打码芯片150向触控笔100的处理器110发送状态消息。之后触控笔100的压感芯片130基于压感采集请求采集压力传感器的压感数据。步骤
1103具体包括:触控笔100的处理器110基于状态消息通过与压感芯片之间的串行接口将压感芯片采集到的压感数据读取至自身内存。
[0119] 在一个实施例中,触控笔100的处理器110接收到该状态消息之后,处理器110可以通过与压感芯片之间的串行接口在触控笔100的压感芯片处进行周期性读取,直至将具有目标标识的压感数据读取至自身内存。其中,处理器110读取具有目标标识的压感数据读取至自身内存的实现方式可以与上述实施方式中的相同或者类似,在此不再赘述。
[0120] 在另一实施例中,触控笔100的处理器110接收到该状态消息之后,开始计时,并在经过设定时间段后处理器110通过与压感芯片之间的串行接口,将压感芯片处具有目标标识的压感数据读取至自身内存。
[0121] 其中,压感芯片130的唤醒时间、压感芯片130采集压感数据的时间均可以预先确定,因此可以预先确定触控笔100的压感芯片130被唤醒所需的时间、压感芯片130执行压感数据的采集所需要的时间,根据所需时间确定该设定时间段,换言之,该设定时间段可以为触控笔100的压感芯片130被唤醒所需的时间与压感芯片130执行压感数据的采集所需要的时间的总时间。因此可以理解为,触控笔100的处理器110接收到该状态消息之后,并经过设定时间段后,此时处理器110视为压感芯片130已经采集到压感数据,进而处理器110可以通过与压感芯片之间的串行接口,将压感芯片处具有目标标识的压感数据读取至自身内存。其中,处理器110读取具有目标标识的压感数据读取至自身内存的实现方式可以与上述实施方式中的相同或者类似,在此不再赘述。
[0122] 在一种实施方式中,上述步骤1103具体可以为:处理器110通过串行接口将压感芯片130采集到的压力传感器120的压感数据读取至处理器110的内存。如果步骤1103的过程与打码过程同时发生,则压感数据通过串行接口传输的过程容易受到下行信号所产生的电磁干扰。而在本申请实施例中,由于在压感数据上报至处理器110之前,无需经过处理器110的调度,因此降低了压感数据采集和上报的时延,即降低了压感数据通过串行接口传输的过程中受到下行信号所产生的电磁干扰的概率。
[0123] 在一种实施方式中,触控笔100在发送压感数据至电子设备200之前,可以确定读取至内存的压感数据对应的笔尖压力值是否为0,若确定压感数据对应的笔尖压力值不为0,则处理器110通过与电子设备200之间的蓝牙连接将该压感数据发送给电子设备200;若确定压感数据对应的笔尖压力值为0,即确定本次压感采集确定触控笔100的笔尖无压力,示例性的,触控笔100的笔尖离开电子设备200的触摸屏,则处理器110不会将压感数据发送给电子设备200。
[0124] 在一种可能的实施方式中,处理器110将当前压感数据发送给电子设备200时,处理器110可以通过主动式电容笔与电子设备200之间的无线通信连接进行数据传输。其中,主动式电容笔和电子设备200之间的无线通信连接包括但不限于通过以下网络进行连接:WI‑FI热点网络、WI‑FI点对点(peer‑to‑peer,P2P)网络、蓝牙网络、zigbee网络或近场通信(near field communication,NFC)网络等近距离通信网络。以蓝牙连接为例,主动式电容笔通过蓝牙模块与电子设备200的无线接口240之间建立蓝牙传输通道,进而处理器110可以将当前压感数据通过蓝牙发送给电子设备200。平板可以根据主动式电容笔提供的笔尖压感数据进行相应控制,例如,在通过主动式电容笔在电子设备200屏幕上绘画的场景中,电子设备200可以根据压感数据控制主动式电容笔在电子设备200的屏幕上划写笔画的粗细程度。
[0125] 在一种实施方式中,本申请实施例提供的触控笔的打码芯片和压感芯片之间连接有通信链路。具体地,打码芯片150具有设定输出引脚,打码芯片150用于通过该设定输出引脚发送压感采集请求;压感芯片130具有中断引脚,压感芯片130用于基于中断引脚所获取的信号触发采集压力传感器120的压感数据并上报处理器110。打码芯片150的该设定输出引脚电连接于压感芯片130的中断引脚。通过两者之间的通信连接,可以实现在确定触控笔100与电子设备200的触摸屏201打码同步时向所述压感芯片中断发送所述压感采集请求的方式触发压感采集及上报流程,以提高压感数据同步的实时性。
[0126] 本申请再一个实施例还提供一种数据传输系统,该系统可以包括图5所示实施例提供的触控笔100以及一个或多个图6所示实施例提供的电子设备200。其中,该触控笔可以与一个或多个电子设备200同处于一个分布式系统。触控笔100在靠近任一电子设备200的触摸屏201后,可以与该触摸屏201实现打码同步,进而触控笔可以与电子设备进行相应交互,例如触控笔100通过在触摸屏201上进行点击、划写等操作向电子设备200输入相应控制信号。
[0127] 本申请再一个实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本申请任一实施例提供的数据传输方法。
[0128] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0129] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0130] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0131] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0132] 上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0133] 以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
[0134] 最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。