主动笔书写异常的处理方法、终端和存储介质与流程

文档序号:24304675发布日期:2021-03-17 00:57阅读:134来源:国知局
主动笔书写异常的处理方法、终端和存储介质与流程

本申请涉及智能笔技术领域,尤其涉及一种主动笔书写异常的处理方法、终端和存储介质。



背景技术:

现有采用预压方案的主动笔在校准的过程中会存在误差,当主动笔没有书写时,其内部的sensor(压力传感器)与放大器在一定时间内会受到温度或者结构件等影响,出现偏移现象,导致笔尖有一定的受力,从而导致检测到adc值变大,也即检测到的adc值会超过设定的门限值,此时,主动笔与屏幕未接触,但屏幕上会出现笔迹,这种现象称为“漏水现象”。现有的主动笔在出现“漏水现象”时,未得到有效的解决,因此,急需一种有效的方式解决采用预压方案的主动笔出现的“漏水现象”。



技术实现要素:

本申请实施例通过提供一种主动笔书写异常的处理方法、终端和存储介质,旨在解决主动笔与屏幕没有接触时,屏幕上会出现笔迹的问题。

为实现上述目的,本申请一方面提供一种主动笔书写异常的处理方法,所述主动笔书写异常的处理方法包括以下步骤:

在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写;

当检测到书写异常时,获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写,其中,所述设定帧数中的每一帧对应设定的时间;

当再次检测到书写异常时,获取所述笔尖的压力值,若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于所述第三归零基准值进行书写。

可选地,所述获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写的步骤包括:

获取所述笔尖在设定帧数中的压力平均值,若所述压力平均值满足第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值;

若最大第一压力平均值与最小第一压力平均值满足第二设定条件,则将所述最大第一压力平均值与所述最小第一压力平均值对应的平均值作为第二归零基准值;

根据所述第二归零基准值更新设定的门限值得到第一门限值,基于所述第一门限值进行书写。

可选地,所述获取所述笔尖在设定帧数中的压力平均值,若所述压力平均值满足第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值的步骤包括:

在上电校准窗口期结束或所述主动笔从休眠状态唤醒后,获取所述笔尖在第一个起始的设定帧数中的压力平均值;

若所述压力平均值与所述设定的门限值之间的比较值满足所述第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值。

可选地,所述若最大第一压力平均值与最小第一压力平均值满足第二设定条件,则将所述最大第一压力平均值与所述最小第一压力平均值对应的平均值作为第二归零基准值的步骤包括:

若最大第一压力平均值与最小第一压力平均值之间的比较值满足所述第二设定条件,则继续获取所述笔尖在多个所述设定帧数中分别对应的第二压力平均值;

若最大第二压力平均值与最小第二压力平均值之间的比较值满足所述第二设定条件,则将所述最大第二压力平均值与所述最小第二压力平均值对应的平均值作为所述第二归零基准值。

可选地,所述将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写的步骤包括:

获取所述第一压力值对应的平均值,将所述平均值与所述设定的门限值进行比较;

若所述平均值小于或大于所述设定的门限值,则将所述平均值作为所述第一归零基准值;

根据所述第一归零基准值更新所述设定的门限值得到第二门限值,基于所述第二门限值进行书写。

可选地,所述根据所述第一归零基准值更新所述设定的门限值得到第二门限值,基于所述第二门限值进行书写的步骤之后,包括:

在进入上电校准窗口期时,获取所述笔尖在多个所述设定帧数中分别对应的第三压力平均值;

若最大第三压力平均值与最小第三压力平均值之间的比较值满足所述第二设定条件,则将所述最大第三压力平均值与所述最小第三压力平均值对应的平均值作为第四归零基准值;或者,

若最大第三压力平均值与最小第三压力平均值之间的比较值未满足所述第二设定条件,则进入下一个周期。

可选地,所述若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于第三归零基准值进行书写的步骤包括:

若获取到的所述压力值小于归零基准值,则确定所述压力值为负值;

获取所述笔尖不受外力时所对应的第二压力值,将所述第二压力值作为所述第三归零基准值;

根据所述第三归零基准值更新所述设定的门限值得到第三门限值,基于所述第三门限值进行书写。

可选地,所述当再次检测到书写异常时,获取当前的压力值,若所述压力值为负值,则获取第二压力值,并将所述第二压力值作为第三归零基准值的步骤之后,包括:

在所述主动笔处于无压力的情况下,每间隔设定时间通过所述压力传感器检测所述笔尖的压力值;

将检测到的所述压力值进行刷新。

此外,为实现上述目的,本申请另一方面还提供一种终端,所述终端包括存储器、处理器及存储在存储器上并在处理器上运行的主动笔书写异常的处理程序,所述处理器执行所述主动笔书写异常的处理程序时实现如上所述主动笔书写异常的处理方法的步骤。

此外,为实现上述目的,本申请另一方面还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有主动笔书写异常的处理程序,所述主动笔书写异常的处理程序被处理器执行时实现如上所述主动笔书写异常的处理方法的步骤。

本实施例在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将第一压力值作为第一归零基准值;当检测到书写异常时,获取笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值;当再次检测到书写异常时,获取笔尖的压力值,若压力值为负值,则获取笔尖的第二压力值,并将第二压力值作为第三归零基准值,其中,基于归零基准值对应的门限值进行书写。在主动笔没有重力传感器的情况下,通过上电校准、恒压校准以及负值更新等操作,解决了主动笔与屏幕没有接触时,屏幕上会出现笔迹的问题,保证了书写的正常进行。

附图说明

图1为本申请实施例方案涉及的硬件运行环境的终端结构示意图;

图2为本申请主动笔书写异常的处理方法第一实施例的流程示意图;

图3为本申请主动笔书写异常的处理方法第二实施例的流程示意图;

图4为本申请主动笔书写异常的处理方法中将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写的流程示意图;

图5为本申请主动笔书写异常的处理方法中根据所述第一归零基准值更新所述设定的门限值得到第二门限值,基于所述第二门限值进行书写的步骤之后的流程示意图;

图6为本申请主动笔书写异常的处理方法中获取所述笔尖在设定帧数中的压力平均值,若所述压力平均值满足第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值的流程示意图;

图7为本申请主动笔书写异常的处理方法中若最大第一压力平均值与最小第一压力平均值满足第二设定条件,则将所述最大第一压力平均值与所述最小第一压力平均值对应的平均值作为第二归零基准值的流程示意图;

图8为本申请主动笔书写异常的处理方法中若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于第三归零基准值进行书写的流程示意图。

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

本申请实施例的主要解决方案是:在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写;当检测到书写异常时,获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写,其中,所述设定帧数中的每一帧对应设定的时间;当再次检测到书写异常时,获取所述笔尖的压力值,若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于所述第三归零基准值进行书写。

由于现有采用预压方案的主动笔会存在“漏水现象”,导致主动笔与屏幕没有接触时,屏幕上会出现笔迹,同时该问题未能得到有效的解决。本申请在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将第一压力值作为第一归零基准值;当检测到书写异常时,获取笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值;当再次检测到书写异常时,获取笔尖的压力值,若压力值为负值,则获取笔尖的第二压力值,并将第二压力值作为第三归零基准值,其中,基于归零基准值对应的门限值进行书写。在主动笔没有重力传感器的情况下,通过上电校准、恒压校准以及负值更新等操作,解决了主动笔与屏幕没有接触时,屏幕上会出现笔迹的问题,保证了书写的正常进行。

如图1所示,图1为本申请实施例方案涉及的硬件运行环境的终端结构示意图。

如图1所示,该终端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,终端还可以包括摄像头、rf(radiofrequency,射频)电路,传感器、遥控器、音频电路、wifi模块、检测器等等。当然,所述终端还可配置陀螺仪、气压计、湿度计、温度传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及主动笔书写异常的处理程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中主动笔书写异常的处理程序,并执行以下操作:

在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写;

当检测到书写异常时,获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写,其中,所述设定帧数中的每一帧对应设定的时间;

当再次检测到书写异常时,获取所述笔尖的压力值,若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于所述第三归零基准值进行书写。

参考图2,图2为本申请主动笔书写异常的处理方法第一实施例的流程示意图。

本申请实施例提供了主动笔书写异常的处理方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

主动笔书写异常的处理方法包括:

步骤s10,在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写;

本实施例提供的方法的应用环境为应用在采用预压方案的主动笔中,且该主动笔没有设置重力传感器,采用预压方案的主动笔是指带玻璃光圈的sensor(压力传感器)和tpu接触在一起,称为预压,若带玻璃光圈的sensor(压力传感器)和tpu没有接触在一起,则称为非预压。其中,采用预压方案的主动笔会存在“漏水现象”,即在主动笔与屏幕没有接触时,笔迹在屏幕上显示。进一步造成“漏水现象”的原因包括:重压屏幕后抬起、用力向外拔笔芯、旋转笔芯、用力甩笔、上电池旋紧后盖、硬件老化、温漂等等。

主动笔也叫电容式触控笔(stylus),通过笔芯前端与tp(触控面板)之间的耦合电容进行工作,故称电容触控笔;其中,主动笔中设有压力传感器,该压力传感器用于检测主动笔对触控屏产生的压力,从而可以使主动笔检测用户书写力度的变化,并使触控屏根据书写力度的变化来改变笔迹的粗细。

在正常情况下,主动笔没有进行书写时,sensor(压力传感器)所受到的压力是没有变化的,即adc值没有变化,但由于主动笔存在校准误差、温漂等原因,从而会出现“漏水现象”,此时,主动笔笔芯在没有受到外力的情况下,检测到的adc值大于设定的门限值,因此,主动笔在上电时,需要先进行上电校准。具体地,主动笔电池在上电的瞬间会记录当前的压力值,控制压力传感器通过10帧采集10个adc值,其中,一帧的时间为15.0134ms,即每间隔15.0134ms采集一个adc值,将采集到的10个adc值进行取平均,并将平均值作为第一归零基准值。例如:采集到的adc值至为a1,a2,....a10,进一步计算采集到的adc值的平均值,如(a1+a2+....a10)/10得到平均值b1,将平均值b1作为第一归零基准值,并基于该第一归零基准值进行书写。

进一步地,主动笔还预先设置有对应的adc门限值(压力门限值),在书写的过程中,所使用的压力需要超过该门限值才可以出水,例如设置30个adc作为门限值,对应的书写克重为10g或25g。在计算得到10个adc值的平均值后,需要将平均值与门限值进行比较,以确定是否需要进行校准操作,参考图4,所述将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写的步骤包括:

步骤s11,获取所述第一压力值对应的平均值,将所述平均值与所述设定的门限值进行比较;

步骤s12,若所述平均值小于或大于所述设定的门限值,则将所述平均值作为所述第一归零基准值;

步骤s13,根据所述第一归零基准值更新所述设定的门限值得到第二门限值,基于所述第二门限值进行书写。

将当前计算得到的平均值与设定的门限值进行比较,若平均值小于或大于设定的门限值,则说明当前差异比较大,需要进行基准值更新。在一实施例中,若当前计算到的平均值为10个adc,而门限值为30个adc,则说明当前差异比较大,将10作为第一归零基准值,即将10看作是0进行处理,并更新门限值,将门限值更新为40个adc,即在归零处理的基础上加上预先设置的门限值30得到40个adc;其中,平均值与门限值之间的差值没变,只是将门限值往上抬高了,也就是说,平均值与原门限值之间的差值为20,将平均值10看出是0处理后,对应的平均值为20,更新后的门限值为40,两者的差值依旧是20,也即,两者的差值没有发生变化。基于更新后的门限值进行书写,如更新后的门限值为40,则用户书写时的压力值需要大于40个adc。

进一步地,若新的主动笔在上电校准后,建议在5s/10s/30s过后再次进行压力值校准,参考图5,所述根据所述第一归零基准值更新所述设定的门限值得到第二门限值,基于所述第二门限值进行书写的步骤之后,包括:

步骤s14,在进入上电校准窗口期时,获取所述笔尖在多个所述设定帧数中分别对应的第三压力平均值;

步骤s15,若最大第三压力平均值与最小第三压力平均值之间的比较值满足所述第二设定条件,则将所述最大第三压力平均值与所述最小第三压力平均值对应的平均值作为第四归零基准值;

步骤s16,若最大第三压力平均值与最小第三压力平均值之间的比较值未满足所述第二设定条件,则进入下一个周期。

在一实施例中,主动笔从第11帧开始进入上电校准窗口期,连续获取20个10帧的(即3.00268s)的adc值,分别计算每个10帧adc值对应的第三压力平均值,若最大第三压力平均值(bmax)与最小第三压力平均值(bmin)之间的比较值满足第二设定条件,即|bmax-bmin|<5unit,则将最大第三压力平均值与最小第三压力平均值对应的平均值作为第四归零基准值,即以(bmax+bmin)/2作为归零基准值。若第三压力平均值中的最大第三压力平均值与最小第三压力平均值之间的比较值不满足第二设定条件,即|bmax-bmin|>5unit,则放弃该组数据,重新进入下一个3s周期。其中,整个上电校准窗口期维持在30.0268s。

步骤s20,当检测到书写异常时,获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写,其中,所述设定帧数中的每一帧对应设定的时间;

主动笔在进行上电校准后,会检测是否出现“漏水现象”,若出现“漏水现象”,则进行恒压校准操作,通过连续获取设定帧数(如20帧)对应的压力平均值,判断该压力平均值是否满足第一设定条件,若满足,则在连续获取多个设定帧数(如10个20帧)分别对应的第一压力平均值,从该第一压力平均值中获取最大第一压力平均值(bmax)与最小第一压力平均值(bmin)进行比较得到比较值;若该比较值满足第二设定条件,则将最大第一压力平均值(bmax)与最小第一压力平均值(bmin)之间的平均值作为第二归零基准值,并基于该第二归零基准值进行书写。其中,mpp每个协议帧长度为15.0134ms,adc可读取的每个单位为1unit,设定的门限值为a。

进一步地,参考图6,所述获取所述笔尖在设定帧数中的压力平均值,若所述压力平均值满足第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值的步骤包括:

步骤s21,在上电校准窗口期结束或所述主动笔从休眠状态唤醒后,获取所述笔尖在第一个起始的设定帧数中的压力平均值;

步骤s22,若所述压力平均值与所述设定的门限值之间的比较值满足所述第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值。

恒压以每15s或30s为一个大周期(具体需要看功耗表现),在进行恒压校准时,需要确定该恒压校准的起始位置,本实施例在上电校准窗口期结束或者主动笔从休眠状态唤醒后,主动笔开始进入恒压校准操作,具体地,在第一个起始的20帧取20个adc值,计算20个adc值对应的压力平均值b1,若压力平均值b1与设定的门限值a之间的比较值满足第一设定条件,即|b1-a|>5unit,则再连续取10个20帧的adc值,并分别计算每个20帧对应的第一压力平均值,得到b2,b3…b10;若压力平均值b1与设定的门限值a之间的比较值不满足第一设定条件,即|b1-a|<5unit,则主动笔不做校准,等待大周期完成后开启新的探测周期。

进一步地,参考图7,所述若最大第一压力平均值与最小第一压力平均值满足第二设定条件,则将所述最大第一压力平均值与所述最小第一压力平均值对应的平均值作为第二归零基准值的步骤包括:

步骤s23,若最大第一压力平均值与最小第一压力平均值之间的比较值满足所述第二设定条件,则继续获取所述笔尖在多个所述设定帧数中分别对应的第二压力平均值;

步骤s24,若最大第二压力平均值与最小第二压力平均值之间的比较值满足所述第二设定条件,则将所述最大第二压力平均值与所述最小第二压力平均值对应的平均值作为所述第二归零基准值。

若最大第一压力平均值(bmax)与最小第一压力平均值(bmin)之间的比较值满足第二设定条件,即|bmax-bmin|<5unit,则连续获取20个20帧的adc值,并分别计算每个20帧对应的第二压力平均值,得到b12,b13…b20(如果是15s的大周期,则连续获取10个20帧);若第二压力平均值中的最大第二压力平均值与最小第二压力平均值之间的比较值满足第二设定条件,即|bmax-bmin|<5unit,则将两者之间的平均值作为归零基准值,即以(bmax+bmin)/2作为归零基准值,例如:(bmax+bmin)/2为10,则以10作为归零基准值,也即将10看作0进行处理,并更新设定的门限值a,更新后的门限值(a+10)。若第二压力平均值中的最大第二压力平均值与最小第二压力平均值之间的比较值不满足第二设定条件,即|bmax-bmin|>5unit,则停止检测,直到下一个大周期。

步骤s30,当再次检测到书写异常时,获取所述笔尖的压力值,若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于所述第三归零基准值进行书写。

主动笔在进行压力归零后,会继续检测是否出现“漏水现象”,若出现“漏水现象”,则检测当前的adc值,若检测到的adc值为负值,则说明当前主动笔处于卡死状态或者用户使用物品压住笔芯等,导致主动笔受力比较大。获取主动笔恢复正常状态后的第二压力值,将该第二压力值进行归零处理,并更新对应的门限值。参考图8,所述若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于第三归零基准值进行书写的步骤包括:

步骤s31,若获取到的所述压力值小于归零基准值,则确定所述压力值为负值;

步骤s32,获取所述笔尖不受外力时所对应的第二压力值,将所述第二压力值作为所述第三归零基准值;

步骤s33,根据所述第三归零基准值更新所述设定的门限值得到第三门限值,基于所述第三门限值进行书写。

主动笔在设定最大预压值(半成品烧录阶段的归零绝对值+2unit)情况下的adc采样值为c,当归零基准值大于c时,认为此时forcesensor有恒定的额外压力,在下一个时刻的获取到的压力值小于归零基准值时,立即将归零基准值调整为当前获取到的压力值,即第二压力值,使得负值更新为实时更新,且可以连续更新。在一实施例中,在预压方案中,pcba(半成品)阶段的预压到adc值若为30,此时30是看作0处理了,当检测到此时实际值为35,则多出的5个adc值认为是外力产生的,即受到的压力值为负值。例如:设主动笔开始的压力sensor的门限adc值为30,当笔芯卡死或学生用书压住笔芯,此时笔芯受力会比较大,如mcu检测到adc值为200,把200进行归零处理(即在30门限值的基础上,增加到230门限值才能出水)。当笔芯不卡死(回弹)或学生打开书笔芯不受力,此时mcu检测到adc值可能只有10,如果不把10作为基准值,这样就需要很大得力让笔芯受力,才能出水,即要超过230adc值才能出水。因此,需要将笔芯不受力后检测到的adc值作为归零基准值,即以10作为归零基准值,其对应的门限值为40,此时,用户书写的adc值超过40即可出水。

本申请实施例在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将第一压力值作为第一归零基准值;当检测到书写异常时,获取笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值;当再次检测到书写异常时,获取笔尖的压力值,若压力值为负值,则获取笔尖的第二压力值,并将第二压力值作为第三归零基准值,其中,基于归零基准值对应的门限值进行书写。在主动笔没有重力传感器的情况下,通过上电校准、恒压校准以及负值更新等操作,解决了主动笔与屏幕没有接触时,屏幕上会出现笔迹的问题,保证了书写的正常进行。

进一步地,参考图3,提出本申请主动笔书写异常的处理方法第二实施例。

所述主动笔书写异常的处理方法第二实施例与所述主动笔书写异常的处理方法第一实施例的区别在于,所述当再次检测到书写异常时,获取当前的压力值,若所述压力值为负值,则获取第二压力值,并将所述第二压力值作为第三归零基准值的步骤之后,包括:

步骤s33,在所述主动笔处于无压力的情况下,每间隔设定时间通过所述压力传感器检测所述笔尖的压力值;

步骤s34,将检测到的所述压力值进行刷新。

主动笔在没有受到外力的情况下,每间隔第一设定时间(如200ms)通过压力传感器检测压力值,并将获取到的压力值进行刷新,其目的是解决pcb板温漂问题和环境温度差异问题。

本实施例在无压力的情况下,每间隔一段时间检测压力值并进行刷新,使得可以及时解决pcb板温漂问题和环境温度差异问题。

本申请还提出一种主动笔书写异常的处理装置,在一实施例中,所述主动笔书写异常的处理装置包括存储器、处理器及存储在存储器上并可在处理器上运行的主动笔书写异常的处理程序,主动笔书写异常的处理程序被处理器执行时实现以下步骤:

在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写;

当检测到书写异常时,获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写,其中,所述设定帧数中的每一帧对应设定的时间;

当再次检测到书写异常时,获取所述笔尖的压力值,若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于所述第三归零基准值进行书写。

在一实施例中,所述主动笔书写异常的处理装置包括获取模块,第一检测模块和第二检测模块;

所述获取模块,用于在主动笔上电时,通过压力传感器获取笔尖的第一压力值,并将所述第一压力值作为第一归零基准值,基于所述第一归零基准值进行书写;

所述第一检测模块,用于当检测到书写异常时,获取所述笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值,基于所述第二归零基准值进行书写,其中,所述设定帧数中的每一帧对应设定的时间;

所述第二检测模块,用于当再次检测到书写异常时,获取所述笔尖的压力值,若所述压力值为负值,则获取所述笔尖的第二压力值,并将所述第二压力值作为第三归零基准值,基于所述第三归零基准值进行书写。

进一步地,所述第一检测模块包括获取单元,判断单元和更新单元;

所述获取单元,用于获取所述笔尖在设定帧数中的压力平均值,若所述压力平均值满足第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值;

所述判断单元,用于若最大第一压力平均值与最小第一压力平均值满足第二设定条件,则将所述最大第一压力平均值与所述最小第一压力平均值对应的平均值作为第二归零基准值:

所述更新单元,用于根据所述第二归零基准值更新设定的门限值得到第一门限值,基于所述第一门限值进行书写。

进一步地,所述获取单元包括获取子单元和判断子单元;

所述获取子单元,用于在上电校准窗口期结束或所述主动笔从休眠状态唤醒后,获取所述笔尖在第一个起始的设定帧数中的压力平均值;

所述判断子单元,用于若所述压力平均值与所述设定的门限值之间的比较值满足所述第一设定条件,则获取所述笔尖在多个所述设定帧数中分别对应的第一压力平均值。

进一步地,所述判断单元包括判断子单元;

所述判断子单元,用于若最大第一压力平均值与最小第一压力平均值之间的比较值满足所述第二设定条件,则继续获取所述笔尖在多个所述设定帧数中分别对应的第二压力平均值;

所述判断子单元,还用于若最大第二压力平均值与最小第二压力平均值之间的比较值满足所述第二设定条件,则将所述最大第二压力平均值与所述最小第二压力平均值对应的平均值作为所述第二归零基准值;

进一步地,所述获取模块包括获取单元,判断单元和更新单元;

所述获取单元,用于获取所述第一压力值对应的平均值,将所述平均值与所述设定的门限值进行比较;

所述判断单元,用于若所述平均值小于或大于所述设定的门限值,则将所述平均值作为所述第一归零基准值

所述更新单元,用于根据所述第一归零基准值更新所述设定的门限值得到第二门限值,基于所述第二门限值进行书写。

进一步地,所述更新单元还包括获取子单元和判断子单元;

所述获取子单元,用于在进入上电校准窗口期时,获取所述笔尖在多个所述设定帧数中分别对应的第三压力平均值;

所述判断子单元,用于若最大第三压力平均值与最小第三压力平均值之间的比较值满足所述第二设定条件,则将所述最大第三压力平均值与所述最小第三压力平均值对应的平均值作为第四归零基准值;

所述判断子单元,还用于若最大第三压力平均值与最小第三压力平均值之间的比较值未满足所述第二设定条件,则进入下一个周期。

进一步地,所述第二检测模块包括判断单元,获取单元和更新单元;

所述判断单元,用于若获取到的所述压力值小于归零基准值,则确定所述压力值为负值;

所述获取单元,用于获取所述笔尖不受外力时所对应的第二压力值,将所述第二压力值作为所述第三归零基准值;

所述更新单元,用于根据所述第三归零基准值更新所述设定的门限值得到第三门限值,基于所述第三门限值进行书写。

进一步地,所述第二检测模块还包括检测单元和刷新单元;

所述检测单元,用于在所述主动笔处于无压力的情况下,每间隔设定时间通过所述压力传感器检测所述笔尖的压力值;

所述刷新单元,用于将检测到的所述压力值进行刷新。

上述的主动笔书写异常的处理装置各个模块功能的实现与上述方法实施例中的过程相似,在此不再一一赘述。

此外,本申请还提供一种终端,所述终端包括存储器、处理器及存储在存储器上并在处理器上运行的主动笔书写异常的处理程序,所述终端通过压力传感器获取笔尖的第一压力值,并将第一压力值作为第一归零基准值;当检测到书写异常时,获取笔尖在设定帧数中的压力平均值,将最大压力平均值与最小压力平均值对应的平均值作为第二归零基准值;当再次检测到书写异常时,获取笔尖的压力值,若压力值为负值,则获取笔尖的第二压力值,并将第二压力值作为第三归零基准值,其中,基于归零基准值对应的门限值进行书写。在主动笔没有重力传感器的情况下,通过上电校准、恒压校准以及负值更新等操作,解决了主动笔与屏幕没有接触时,屏幕上会出现笔迹的问题,保证了书写的正常进行。

此外,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有主动笔书写异常的处理程序,所述主动笔书写异常的处理程序被处理器执行时实现如上所述主动笔书写异常的处理方法的步骤。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本申请可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

尽管已描述了本申请的可选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括可选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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