传感器的时钟校准方法、装置、存储介质与电子设备与流程
- 国知局
- 2024-07-30 09:40:25
1.本公开涉及计算机技术领域,尤其涉及一种传感器的时钟校准方法、传感器的时钟校准装置、计算机可读存储介质与电子设备。背景技术:2.随着电子技术的发展,目前的电子设备大多安装有各种类型的传感器。例如,手机上普遍设有环境光传感器、指纹传感器、惯性传感器、温度传感器等。传感器通常内置有配套的mcu(micro-controller unit,微控制单元),用于执行传感器的程序指令,以实现对信号采集、数据处理等过程的控制。3.为了使mcu能够正常工作,传感器内部还需要通过振荡器来提供时钟信号。然而,由于传感器的时钟精度有限,容易导致传感器的输出存在误差。4.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域技术人员已知的现有技术的信息。技术实现要素:5.本公开提供一种传感器的时钟校准方法、传感器的时钟校准装置、计算机可读存储介质与电子设备,以至少在一定程度上提高传感器的时钟精度。6.根据本公开的第一方面,提供一种传感器的时钟校准方法,包括:在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值;根据所述第一时钟计数值与所述第一基准时间区间的时长,对所述待校准传感器的时钟进行校准。7.根据本公开的第二方面,提供一种传感器的时钟校准装置,包括:时钟计数值获取模块,被配置为在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值;时钟校准模块,被配置为根据所述第一时钟计数值与所述第一基准时间区间的时长,对所述待校准传感器的时钟进行校准。8.根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的传感器的时钟校准方法及其可能的实现方式。9.根据本公开的第四方面,提供一种电子设备,包括:处理器;存储器,用于存储所述处理器的可执行指令;待校准传感器;其中,所述处理器配置为经由执行所述可执行指令来执行上述第一方面的传感器的时钟校准方法及其可能的实现方式。10.本公开的技术方案具有以下有益效果:11.一方面,基于显示屏的te信号的第一基础时间区间对待校准传感器进行时钟计数,显示屏的te信号的时钟精度通常很高,由此计算待校准传感器的时钟频率,使得该时钟频率的精度接近于te信号的时钟精度,从而提高了待校准传感器的时钟精度。另一方面,本方案利用显示屏的te信号对待校准传感器进行时钟校准,无需设置外部时钟,因此实现成本较低。12.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明13.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施方式,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。14.图1示出本示例性实施方式中一种电子设备的结构示意图;15.图2示出本示例性实施方式中屏下光传感器的示意图;16.图3示出本示例性实施方式中一种传感器的时钟校准方法的流程图;17.图4示出本示例性实施方式中显示屏的te信号与待校准传感器的时钟信号的示意图;18.图5示出本示例性实施方式中确定第一基准时间区间的时长的流程图;19.图6示出本示例性实施方式中传感器的时钟校准方法的示意性流程图;20.图7示出本示例性实施方式中光传感器的采样时间的示意图;21.图8示出本示例性实施方式中一种传感器的时钟校准装置的结构示意图。具体实施方式22.现在将参考附图描述本公开的示例性实施方式。然而,示例性实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例。提供这些实施方式使得本公开将更加全面和完整,并将示例性实施方式的构思全面地传达给本领域技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。23.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。24.传感器的时钟信号通常由rc(电阻-电容)振荡器提供。其中,电阻、电容本身的精度有限,且rc振荡器容易受到温度、湿度变化的影响,这些因素导致时钟信号的频率(或周期)通常存在5%以上的误差,从而引起传感器输出结果的精度下降。25.鉴于上述问题,本公开的示例性实施方式提供一种传感器的时钟校准方法,用于对待校准传感器的时钟进行校准。该待校准传感器可以设置于电子设备上,因此,本示例性实施方式中的传感器的时钟校准方法可以由电子设备执行。下面对电子设备进行说明。26.本公开的示例性实施方式提供一种电子设备。一般的,该电子设备可以包括:处理器,存储器与待校准传感器。其中,存储器用于存储处理器的可执行指令;处理器配置为经由执行可执行指令来执行传感器的时钟校准方法,以对待校准传感器的时钟进行校准。27.在一种实施方式中,电子设备还可以包括显示屏,显示屏与待校准传感器之间设有用于传输te信号(tearing effect signal,显示刷新信号)的连接线路。由此,待校准传感器可以通过该连接线路直接获取te信号,以进行时钟校准,能够降低te信号从显示屏传输至待校准传感器的延迟,提高校准精度。28.在一种实施方式中,显示屏的te信号也可以通过处理器或总线等传输至待校准传感器。29.下面以图1中的移动终端100为例,对电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图1中的构造也能够应用于固定类型的设备。30.如图1所示,移动终端100具体可以包括:主处理器101、存储器102、总线103、显示屏104与待校准传感器105。31.主处理器101用于执行移动终端100的主要逻辑处理,例如可以运行移动终端100的操作系统与应用程序。主处理器101可以包括一个或多个处理单元,例如:主处理器101可以包括cpu(central processing unit,中央处理器)、ap(application processor,应用处理器)、调制解调处理器、gpu(graphics processing unit,图形处理器)、isp(image signal processor,图像信号处理器)、控制器、编码器、解码器、dsp(digital signal processor,数字信号处理器)、基带处理器和/或npu(neural-network processing unit,神经网络处理器)等。32.存储器102可以用于存储计算机可执行程序代码,可执行程序代码包括指令。主处理器101通过运行存储在存储器102的指令,执行移动终端100的各种功能应用以及数据处理。存储器102还可以存储应用数据,例如存储图像、音频、视频等文件。33.显示屏104用于实现移动终端100的显示功能,其可以根据主处理器101输出至显示屏104的显示数据显示相应的画面,如用户界面、图像、视频等。显示屏104可以包括显示面板1041与显示驱动1042。显示面板1041可以采用lcd(liquid crystal display,液晶显示屏),oled(organic light emitting diode,有机发光二极管),amoled(active-matrix organic light emitting diode,有源矩阵有机发光二极管),qled(quantum dot light emitting diodes,量子点发光二极管)等。显示驱动1042可以包括控制显示屏104时序动作的驱动电路,用于驱动显示面板1041显示画面。34.本示例性实施方式中,显示屏104可以基于te(tearing effect signal,显示刷新信号)信号进行显示内容的刷新。如果te信号的时钟精度较低,则可能导致显示画面的异常,影响用户体验。因此,为了保证te信号具有较高的时钟精度,显示屏104内部可以采用高精度的晶体振荡器来产生时钟信号,其误差通常在10ppm(即0.001%)量级。35.待校准传感器105可以是移动终端100的任意传感器,如环境光传感器、指纹传感器、惯性传感器、温度传感器等。待校准传感器105可以包括微控制单元1051,用于执行待校准传感器105的程序指令,以实现对信号采集、数据处理等过程的控制。36.移动终端100的各组件之间可以通过总线103与i/o接口形成连接。例如,主处理器101与显示屏104之间可以通过dsi(display serial interface,显示串行接口)连接,主处理器101与待校准传感器105之间可以通过i2c(inter-integrated circuit,集成电路)总线接口或gpio(general-purpose input/output,通用输入输出)接口连接。37.应当理解,移动终端100还可以包括图1中未示出的组件,如通信单元、摄像单元、电源管理单元、音频单元等。主处理器101、存储器102、显示屏104、待校准传感器105中的任意一个或多个还可以包括图1中未示出的组件。例如,显示屏104还可以包括显示处理器,其可以是显示屏104内置的mcu或者tcon(timing controller,时序控制器,又称逻辑板);待校准传感器105还可以包括用于产生时钟信号的振荡器,如rc振荡器、lc振荡器等,该振荡器也可以内置于微控制单元1051中。38.在一种实施方式中,可以在显示屏104与待校准传感器105之间设置用于传输te信号的连接线路。示例性的,可以将显示驱动1042连接至待校准传感器105的感测引脚,使得微控制单元1051可以获取显示驱动1042输出的te信号。39.在一种实施方式中,移动终端100也可以不包括显示屏104,通过连接外部显示屏,获取该外部显示屏的te信号,以用于对待校准传感器105进行时钟校准。40.在一种实施方式中,待校准传感器105可以设置于显示屏104之下,例如待校准传感器105可以是屏下光传感器、屏下指纹传感器等。这样有利于提高移动终端100的屏占比。41.图2示出了屏下光传感器的示意图,如可以是手机、平板电脑等设备上的屏下光传感器。将屏下光传感器设置于显示屏下,可以节约手机正面的空间,以提高屏占比,甚至能够实现全面屏。如图2所示,屏下光传感器可以安装在手机的主板上,其上方依次为框架、泡棉和显示面板。主板可以是pcb板(printed circuit board,印制电路板),通常还设有主处理器、存储器等组件。图2所示的框架可以是手机的中框,用于连接手机的正面与背面两部分。泡棉可以起到减震、缓冲的作用,用于保护显示面板与其他组件。在框架与泡棉中,可以在屏下光传感器的正上方设置开孔,而显示面板通常是透明材料,这样光线可以透过显示面板入射到屏下光传感器上,使得屏下光传感器对光信号进行感测。通过本示例性实施方式中的传感器的时钟校准方法,可以提高该屏下光传感器的精度。42.屏下光传感器可以包括但不限于:环境光传感器、色温传感器、光谱传感器等。43.本示例性实施方式中,可以由上述移动终端100的主处理器101或微控制单元1051执行传感器的时钟校准方法。下面结合图3对传感器的时钟校准方法进行说明。44.图3示出了传感器的时钟校准方法的示例性流程,可以包括以下步骤s310至s320:45.步骤s310,在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值;46.步骤s320,根据第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准。47.基于上述方法,一方面,基于显示屏的te信号的第一基础时间区间对待校准传感器进行时钟计数,显示屏的te信号的时钟精度通常很高,由此计算待校准传感器的时钟频率,使得该时钟频率的精度接近于te信号的时钟精度,从而提高了待校准传感器的时钟精度。另一方面,本方案利用显示屏的te信号对待校准传感器进行时钟校准,无需设置外部时钟,因此实现成本较低。48.下面对图3中的每个步骤进行具体说明。49.参考图3,在步骤s310中,在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值。50.te信号为周期性的信号。第一基准时间区间用于为待校准传感器的时钟计数提供基准时长。由于te信号的时钟精度很高,基于te信号确定一段时间区间,该时间区间的精度也很高,因此可作为第一基准时间区间。可以将te信号任意一段可感知的时间区间作为第一基准时间区间,即第一基准时间区间的起始时间点与结束时间点可以是te信号发生变化的任意时间点。示例性的,可以将te信号中任意整数个周期作为第一基准时间区间,也可以将te信号的一个周期内的高电平时间段或低电平时间段作为第一基准时间区间,等等。51.在第一基准时间区间内,待校准传感器内部的计数器可以基于待校准传感器的时钟信号进行计数,每经过一个周期计数值加一,在第一基准时间区间结束时,得到第一时钟计数值。52.在一种实施方式中,第一基准时间区间可以包括:te信号的相邻两个上升沿之间的时间区间,或者te信号的相邻两个下降沿之间的时间区间。相邻两个上升沿或下降沿之间的时间区间即一个完整的周期。通过上升沿或下降沿来确定第一基准时间区间的开始与结束,可以使待校准传感器在检测到上升沿或下降沿时开始计数或停止计数,有利于进行准确计数。53.图4示出了显示屏的te信号与待校准传感器的时钟信号的示意图。假设te信号的频率fte为60hz,则相邻两个上升沿或相邻两个下降沿之间的时间区间为一个第一基准时间区间t1,其时长为16.667ms。以下降沿为例,当待校准传感器探测到te信号的下降沿时,或者更具体地,当待校准传感器内的微控制单元探测到te信号的下降沿时,计数器开始计数。计数器的频率等于待校准传感器的时钟频率f0,如待校准传感器采用rc振荡器,则rc时钟频率一般为500khz~2mhz。当待校准传感器探测到te信号的下一个下降沿时,或者更具体地,当待校准传感器内的微控制单元探测到te信号的下一个下降沿时,计数器停止计数,记录此时计数器的数据为第一时钟计数值c1。54.继续参考图3,在步骤s320中,根据第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准。55.其中,根据第一时钟计数值与第一基准时间区间的时长,可以计算出待校准传感器的时钟参数。本示例性实施方式中,待校准传感器的时钟参数可以包括时钟频率或时钟周期,两者本质上均为时钟信号的间隔情况,且在得到其中一者的情况下很容易计算出另一者,本文中以时钟频率为例进行说明。56.在一种实施方式中,可以参考以下公式来计算待校准传感器的时钟频率:57.f0=c1/t1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(1)58.其中,f0表示待校准传感器的时钟频率,是待校准传感器当前实际的时钟频率,c1表示第一时钟计数值,t1表示第一基准时间区间的时长。由此,以te信号的第一基准时间区间的时长为基准,计算出待校准传感器的时钟频率,该时钟频率的精度接近于te信号的时钟精度,相比于待校准传感器设定的时钟频率,能够更为准确地反映待校准传感器的时钟信号的实际情况。59.在一种实施方式中,可以将计算出的待校准传感器的时钟频率作为时钟校准结果,可以无需对待校准传感器进行时钟调整。60.在一种实施方式中,还可以根据计算出的待校准传感器的时钟频率,对待校准传感器进行时钟调整。例如,在时钟频率偏离于期望的频率值或频率范围的情况下,可以对待校准传感器内部的振荡器进行相应调整,如调整rc振荡器的电阻或电容值,以改变时钟频率,并在调整后再次通过步骤s310与s320确定待校准传感器的时钟频率,直到其等于期望的频率值或处于期望的频率范围。61.由此,完成对待校准传感器的时钟进行校准,使待校准传感器的时钟精度接近于显示屏的te信号的时钟精度,从而提高了待校准传感器的时钟精度。62.基于步骤s320可知,为了计算待校准传感器的时钟频率,以进行时钟校准,需要得到两个参数:第一时钟计数值,与第一基准时间区间的时长。下面对这两个参数做进一步说明:63.(一)第一时钟计数值64.在步骤s310中,可以在第一基准时间区间内对待校准传感器的时钟信号计时,以得到第一时钟计数值。然而,第一时钟计数值可能存在误差。例如,待校准传感器探测te信号的上升沿或下降沿时存在抖动,导致待校准传感器实际计数的区间不完全等于第一基准时间区间,造成第一时钟计数值的误差。考虑到这种情况,在一种实施方式中,上述在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值,可以包括以下步骤:65.分别获取多个第一基准时间区间内所述待校准传感器的第一时钟计数值。66.例如,可以在连续的m个第一基准时间区间内分别对待校准传感器进行时钟计数,得到m个第一时钟计数值,m为不小于2的正整数。67.相应的,上述根据第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准,可以包括以下步骤:68.根据上述多个第一基准时间区间内的第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准。69.具体地,根据上述m个第一时钟计数值,可以采用其平均值、中值、众数等统计指标来计算待校准传感器的时钟频率,或者对m个第一时钟计数值剔除离群值或异常波动值,对保留下的第一时钟计数值统计其平均值、中值、众数等,以计算待校准传感器的时钟频率。70.在一种实施方式中,可以根据多个第一基准时间区间内的第一时钟计数值的平均值与第一基准时间区间的时长,对待校准传感器的时钟进行校准。例如,在公式(1)中,可以将c1替换为多个第一基准时间区间内的第一时钟计数值的平均值c1_mean,即待校准传感器的时钟频率f0=c1_mean/t1。71.由此,根据多个第一基准时间区间内的第一时钟计数值来计算时钟频率,能够降低单个第一基准时间区间内第一时钟计数值的误差对时钟校准的影响,提高时钟校准结果的准确性。72.在一种实施方式中,在分别获取多个第一基准时间区间内所述待校准传感器的第一时钟计数值的情况下,传感器的时钟校准方法还可以包括以下步骤:73.若多个第一基准时间区间内的第一时钟计数值满足稳定性条件,则保留该多个第一基准时间区间内的第一时钟计数值;74.若多个第一基准时间区间内的第一时钟计数值不满足稳定性条件,则丢弃该多个第一基准时间区间内的第一时钟计数值。75.其中,稳定性条件用于衡量多个第一基准时间区间内的第一时钟计数值是否稳定,可以根据实际需求来具体设置。76.在一种实施方式中,可以通过以下方式确定第一时钟计数值是否满足稳定性条件:77.根据多个第一基准时间区间内的第一时钟计数值计算其数值稳定区间,例如该数值稳定区间可以是c0_mean±e,c0_mean表示多个第一基准时间区间内的第一时钟计数值的平均值,当然也可以替换为中值、众数等,e表示允许的误差率,如可以是1%、0.5%等。若多个第一基准时间区间内的第一时钟计数值中,处于该数值稳定区间内的比例达到预设比例,则确定第一时钟计数值满足稳定性条件。预设比例可以根据实际情况设定,如可以是100%、90%等。示例性的,e为1%。预设比例为100%,则多个第一基准时间区间内的第一时钟计数值均处于c0_mean±1%以内时,确定第一时钟计数值满足稳定性条件。78.若上述多个第一基准时间区间内的第一时钟计数值满足稳定性条件,可以保留该多个第一时钟计数值,进而,根据该多个第一时钟计数值的平均值与第一基准时间区间的时长,对待校准传感器的时钟进行校准,从而保证时钟校准的准确性。若上述多个第一基准时间区间内的第一时钟计数值不满足稳定性条件,则可以认为该第一时钟计数值存在检测波动,可信度不高,可以予以丢弃,并可以重新采集第一时钟计数值。由此,利用稳定性条件对第一时钟计数值进行筛选,以保留在多个第一基准时间区间内均较为稳定的第一时钟计数值,能够降低检测过程的波动、误差等对时钟校准的影响。79.在一种实施方式中,也可以在获取每个第一基准时间区间内的第一时钟计数值后,判断该第一时钟计数值是否满足稳定性条件,若满足,则保留该第一时钟计数值,以用于后续的计算,若不满足,则丢弃该第一时钟计数值,并采集下个第一基准时间区间内的第一时钟计数值。其中,针对单个第一基准时间区间内的第一时钟计数值的稳定性条件可以包括:第一时钟计数值处于数值稳定区间内,数值稳定区间如可以是前面多个第一基准时间区间内的第一时钟计数值的平均值、中值、众数等±误差率。80.(二)第一基准时间区间的时长81.在一种实施方式中,第一基准时间区间的时长可以是已知的参数。例如,te信号的频率固定为基准频率,如60hz,则可以根据基准频率确定第一基准时间区间的时长,如t1=1s/60hz=16.667ms。82.在一种实施方式中,参考图5所示,可以通过以下步骤s510和s520来确定第一基准时间区间的时长:83.步骤s510,根据第一时钟计数值与待校准传感器的参考时钟参数,确定te信号的实际频率。84.其中,待校准传感器的参考时钟参数可以是设置的时钟参数、理论的时钟参数或经过预校准的时钟参数,可以包括参考时钟频率、参考时钟周期。随着待校准传感器使用环境的变化、内部信号的波动,实际时钟参数很容易偏离于参考时钟参数,因此参考时钟参数可以仅作为理论上的参考,用于计算实际时钟参数。实际时钟参数即通过步骤s320所确定的时钟参数。85.根据第一时钟计数值与待校准传感器的参考时钟参数,可以计算te信号的实际频率,参考以下公式:86.fte≈fref/c1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(2)87.其中,fte表示显示屏的te信号的实际频率,fref表示待校准传感器的参考时钟频率,c1表示第一时钟计数值。由于参考时钟频率与实际频率存在偏差的概率较高,因此公式(2)中为“≈”。88.在一种实施方式中,te信号的实际频率可以是某个基础频率(如30hz、24hz等)的整数倍。由此,在计算fref/c1后,将计算出的数值映射到最接近的基础频率的整数倍,从而得到te信号的实际频率。89.在一种实施方式中,显示屏的te信号的时钟精度较高,te信号的频率不会发生明显抖动,其如果发生变化,也通常是在多个预设频率中动态变化。例如,目前手机显示屏的刷新频率有60hz、90hz、120hz等,手机可以根据当前的使用场景调整在60hz、90hz、120hz中动态调整刷新频率,即表示te信号的频率会在60hz、90hz、120hz这几个预设频率中动态变化。考虑到te信号的频率动态变化的情况,在步骤s310中,在te信号的频率可在多个预设频率中动态变化的情况下,获取在te信号的第一基准时间区间内待校准传感器的第一时钟计数值。相应的,步骤s510可以进一步包括以下步骤:90.根据第一时钟计数值与待校准传感器的参考时钟参数,确定te信号的当前频率参考值;91.通过将te信号的当前频率参考值与多个预设频率进行比对,以确定te信号的实际频率。92.其中,te信号的当前频率参考值即第一时钟计数值与待校准传感器的参考时钟参数直接计算的结果,如上述fref/c1。将te信号的当前频率参考值与多个预设频率进行比对,如将fref/c1与60hz、90hz、120hz进行比对,以确定te信号的实际频率。93.在一种实施方式中,可以以te信号的当前频率参考值最接近的那个预设频率作为te信号的实际频率。94.在一种实施方式中,可以比对te信号的当前频率参考值是否落入某个预设频率的误差区间,如误差区间可以是预设频率±5%(也可以是其他误差率值),若落入误差区间,则确定该预设频率为te信号的实际频率。95.由此,在te信号的频率在多个预设频率中动态变化的情况下,可以根据第一时钟计数值与待校准传感器的参考时钟参数计算出te信号的实际频率,进而实时更新待校准传感器的相关底层代码(如驱动层的代码),无需从系统上层获取显示屏的设置信息来确定te信号的实际频率。例如,待校准传感器内部的mcu在获取第一时钟计数值的情况下,可以通过执行步骤s510,快速确定te信号的实际频率,并进行后续的计算与校准,而无需与主处理器进行通信以获取te信号的实际频率,从而减少通信的延时与负载消耗。96.步骤s520,根据te信号的实际频率确定第一基准时间区间的时长。97.可以将te信号的实际频率转换为第一基准时间区间的时长。例如,第一基准时间区间为te信号的一个完整周期,则可以根据te信号的实际频率计算出实际的周期时长,即为第一基准时间区间的时长。98.以上说明了如何得到第一时钟计数值与第一基准时间区间的时长。在得到这两个参数的情况下,可以通过步骤s320完成对待校准传感器的时钟校准。99.在一种实施方式中,步骤s310与s320可以是对待校准传感器的时钟进行预校准的流程,也可以是对待校准传感器的时钟进行动态校准的流程。100.其中,预校准可以是实际使用前的校准,例如可以是在电子设备或待校准传感器出厂前所进行的校准。动态校准可以是实际使用中的校准,在实际使用过程中,随着使用环境的变化、待校准传感器内部信号的波动,待校准传感器的时钟频率通常也会发生变化或波动中,例如在手机长时间使用、内部温度上升的情况下,rc振荡器输出的时钟信号会发生波动。并且te信号的频率也可以在多个预设频率中动态变化。因此,通过步骤s310与s320对待校准传感器进行实时或周期性地时钟校准,可以防止随使用时间的累积,待校准传感器的时钟信号的误差不断增大,同时可以使待校准传感器的时钟适应显示屏等其他组件的动态变化情况,以确定合适的时钟频率。101.在一种实施方式中,若步骤s310与s320是动态校准的流程,则传感器的时钟校准方法还可以包括预校准的流程,预校准的流程可以包括以下步骤:102.在te信号的频率固定为基准频率的情况下,获取在te信号的第二基准时间区间内待校准传感器的第二时钟计数值;103.根据第二时钟计数值与第二基准时间区间的时长,对待校准传感器的时钟进行校准,以得到待校准传感器的参考时钟参数。104.其中,基准频率可以是一个已知的固定频率,如可以是上述多个预设频率中的某一个,当然也可以是预设频率之外的频率。例如,基准频率可以是60hz,在手机出厂前,厂商可以采用60hz的基准频率进行待校准传感器的时钟预校准。第二基准时间区间用于在预校准中为待校准传感器的时钟计数提供基准时长,其可以是te信号在基准频率下的任意一段可感知的时间区间,如可以将te信号中任意整数个周期,或者一个周期内的高电平时间段或低电平时间段,等等。第二基准时间区间与第一基准时间区间可以相同,也可以不同,例如,两者均为te信号中相邻两个上升沿之间的时间区间或相邻两个下降沿之间的时间区间。根据te信号的基准频率,可以确定第二基准时间区间的时长。第二时钟计数值是待校准传感器在第二基准时间区间内的时钟计数值。105.根据第二时钟计数值与第二基准时间区间的时长,可以计算出待校准传感器在预校准阶段的时钟参数。在一种实施方式中,可以将该预校准阶段的时钟参数作为待校准传感器的参考时钟参数。在一种实施方式中,还可以根据该预校准阶段的时钟参数对待校准传感器进行时钟调整,具体可以参考步骤s320中的时钟调整。调整后的时钟参数为参考时钟参数。在后续的动态校准阶段中,可以以参考时钟参数作为参考,计算te信号的实际频率。106.应当理解,本示例性实施方式中,第一基准时间区间、第一时钟计数值与第二基准时间区间、第二时钟计数值之间的区别,主要在于前者用于动态校准的流程,后者用于预校准的流程,参数本身的含义相同,并且参数值也可以相同。107.基于预校准加动态校准的双重校准流程,可以确保待校准传感器在实际使用前(如出厂时)具备较高的时钟精度,以及在实际使用中保持较高的时钟精度。108.图6示出了本示例性实施方式中传感器的时钟校准方法的示意性流程,该流程包括预校准与动态校准两部分。其中,预校准流程包括:109.步骤s601,将te信号的频率固定为基准频率,如60hz,并确定第二基准时间区间的时长t2;110.步骤s602,待校准传感器探测到te信号的第一个下降沿,开始计数;111.步骤s603,待校准传感器探测到下一个下降沿,停止计数,记录第二时钟计数值c2,并重新开始计数;112.步骤s604,判断计数是否达到n次,即是否在连续n个第二基准时间区间内记录了n个第二时钟计数值c2,若是,则执行步骤s605,若否,则跳转至步骤s603;n为不小于2的正整数,如可以为10;113.步骤s605,对n个第二时钟计数值c2计算平均值c2_mean;114.步骤s606,根据第二时钟计数值的平均值与第二基准时间区间的时长,计算待校准传感器的参考时钟频率,计算公式为fref=c2_mean/t2;115.步骤s607,根据参考时钟频率对待校准传感器的积分时间、延迟时间等与时钟信号相关的参数进行配置。116.动态校准流程包括:117.步骤s608,在te信号的频率动态变化的情况下,实时监测te信号的下降沿,以在第一基准时间区间内进行计数,读取第一时钟计数值c1,te信号一般在多个预设频率中动态变化,如60hz、90hz、120hz;118.步骤s609,根据第一时钟计数值与参考时钟频率计算te信号的当前频率参考值fte',计算公式为fte'=c1/fref,其中c1也可以替换为多个第一基准时间区间内的第一时钟计数值的统计指标,如平均值、中值、众数等;119.步骤s610,将te信号的当前频率参考值与te信号的预设频率进行比对,以确定te信号的实际频率fte;120.步骤s611,判断c1是否稳定,可以对单个第一基准时间区间内的c1逐个进行判断,也可以对多个第一基准时间区间内的c1进行统一判断,若是,则执行步骤s612,若否,则执行步骤s613;121.步骤s612,累积m个c1后,计算m个c1的平均值c1_mean;m为不小于2的正整数,如可以为100;122.步骤s613,丢弃c1的数据,并重新采集;123.步骤s614,根据c1_mean与fte进行时钟校准,如可以根据公式f0=c1_mean/t1=c1_mean·fte来计算待校准传感器的时钟频率,该时钟频率表示待校准传感器当前实际的时钟频率,也可以在待校准传感器当前实际的频率偏离于期望的频率值或频率范围的情况下,对待校准传感器进行时钟调整,得到调整后的时钟频率f1_cal;124.步骤s615,结合f1_cal以及fte,动态切换不同的频率算法,并进行对应的底层配置。125.在一种实施方式中,待校准传感器可以是设置于显示屏之下的光传感器,如环境光传感器、色温传感器、光谱传感器等。在一种实施方式中,传感器的时钟校准方法还可以包括以下步骤:126.在对光传感器的时钟进行校准后,根据光传感器的时钟校准结果,配置光传感器的采样时间。127.其中,光传感器设置于显示屏之下,其不仅会接收到来自外部环境的光线,也会接收到来自显示屏的漏光。为了消除显示屏的漏光对光传感器感测环境光的影响,可以设置光传感器在显示屏“黑帧”的时间段内对环境光进行采样。128.在一种实施方式中,参考图7所示,显示屏可以采用pwm(pulse width modulation,脉冲宽度调制)调光模式。pwm调光模式是指通过显示屏的亮灭交替来改变显示屏的亮度的方式。在pwm调光模式下,显示屏根据pwm信号的变化,不停地在点亮和熄灭状态之间切换,pwm信号为高电平时,显示屏点亮,pwm信号为低电平时,显示屏熄灭。熄灭状态持续时间越长,显示屏给人的视觉感受是亮度越低,熄灭状态持续时间越短,显示屏给人的视觉感受是亮度越高。由此,在显示屏熄灭的时间段内,光传感器对光信号进行采样,所采集的完全为环境光信息。光传感器的采样单位时间通常是光传感器时钟周期的整数倍。可以将光传感器的积分采样时间划分为als1(als是ambient light sensor即环境光传感器的缩写)与als2。可以看出,als1与pwm信号同步,其完全落在pwm信号的低电平时间段内,该时间段即显示屏熄灭的时间段,因此als1内的采样信号不包括显示屏的漏光,可以仅获取als1内的采样信号。129.为了准确配置光传感器的采样时间,如配置上述als1与als2,需要得到光传感器的时钟频率。若采用光传感器本身设置的时钟频率,其精度有限,容易导致所配置的采样时间不准确,如与显示屏的pwm信号不同步,使得光传感器同时采集到环境光与显示屏漏光,影响光传感器输出结果的准确性。而采用本示例性实施方式中的时钟校准方法对光传感器进行时钟校准后,可以准确得到其时钟频率,并由此对采样时间进行精准配置,有利于提高采样光传感器输出结果的准确性。130.需要说明的是,本示例性实施方式中,配置光传感器的采样时间的方式不限于图7所示的方式。例如,可以配置als1超出pwm信号的低电平时间段,根据als1与als2内的采样信号计算出纯环境光的信息,该方式也需要准确得到光传感器的时钟频率。131.本公开的示例性实施方式还提供一种传感器的时钟校准装置。参考图8所示,该传感器的时钟校准装置800可以包括:132.时钟计数值获取模块810,被配置为在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值;133.时钟校准模块820,被配置为根据第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准。134.在一种实施方式中,装置800还可以包括te信号参数计算模块,被配置为:135.根据第一时钟计数值与待校准传感器的参考时钟参数,确定te信号的实际频率;136.根据te信号的实际频率确定第一基准时间区间的时长。137.在一种实施方式中,上述在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值,包括:138.在te信号的频率可在多个预设频率中动态变化的情况下,获取在te信号的第一基准时间区间内待校准传感器的第一时钟计数值;139.上述根据第一时钟计数值与待校准传感器的参考时钟参数,确定te信号的实际频率,包括:140.根据第一时钟计数值与待校准传感器的参考时钟参数,确定te信号的当前频率参考值;141.通过将te信号的当前频率参考值与多个预设频率进行比对,以确定te信号的实际频率。142.在一种实施方式中,时钟计数值获取模块810,还被配置为:在te信号的频率固定为基准频率的情况下,获取在te信号的第二基准时间区间内待校准传感器的第二时钟计数值;143.时钟校准模块820,还被配置为:根据第二时钟计数值与第二基准时间区间的时长,对待校准传感器的时钟进行校准,以得到待校准传感器的参考时钟参数。144.在一种实施方式中,上述在显示屏的te信号的第一基准时间区间内,获取待校准传感器的第一时钟计数值,包括:145.分别获取多个第一基准时间区间内待校准传感器的第一时钟计数值;146.时钟校准模块820,还被配置为:147.在根据第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准前,若多个第一基准时间区间内的第一时钟计数值满足稳定性条件,则保留多个第一基准时间区间内的第一时钟计数值;若多个第一基准时间区间内的第一时钟计数值不满足稳定性条件,则丢弃多个第一基准时间区间内的第一时钟计数值。148.在一种实施方式中,上述根据第一时钟计数值与第一基准时间区间的时长,对待校准传感器的时钟进行校准,包括:149.根据多个第一基准时间区间内的第一时钟计数值的平均值与第一基准时间区间的时长,对待校准传感器的时钟进行校准。150.在一种实施方式中,第一基准时间区间包括:te信号的相邻两个上升沿之间的时间区间,或者te信号的相邻两个下降沿之间的时间区间。151.在一种实施方式中,待校准传感器包括设置于显示屏之下的光传感器。152.在一种实施方式中,装置800还可以包括采样时间配置模块,被配置为:在待校准传感器的时钟校准后,根据光传感器的时钟校准结果,配置光传感器的采样时间。153.上述装置中各部分的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。154.本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。在一种可选的实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。155.程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。156.计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。157.可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。158.可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。159.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。160.本领域技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。161.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。
本文地址:https://www.jishuxx.com/zhuanli/20240730/150417.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表