首页 / 专利分类库 / 测时学 / 无线电控制的计时器[2013.01] / 一种确定时间的方法、装置、电子设备及存储介质

一种确定时间的方法、装置、电子设备及存储介质

申请号 CN202210237041.7 申请日 2022-03-10 公开(公告)号 CN114609891A 公开(公告)日 2022-06-10
申请人 深圳市轱辘车联数据技术有限公司; 发明人 刘均; 梅梦醒;
摘要 本 申请 适用于 电子 技术领域,提供了一种确定时间的方法、装置、电子设备及存储介质。该方法包括:在来自GPS模 块 的已知时间长度的第一目标脉冲 信号 持续期间进行计数,确定第一计数值,根据第一目标脉冲信号的时间长度以及第一计数值,确定任意一个计数值每增加一个单位数值所需的时间长度,由于本申请中的已知时间长度的第一目标脉冲信号来自GPS模块,因此该已知时间长度十分接近基于国际标准时间确定的第一目标脉冲信号的时间长度,则根据该任意一个计数值每增加一个单位数值所需的时间长度确定的某一段时间长度的精确度较高,且可以有效避免因环境变化造成的精确度较低的情况。
权利要求

1.一种确定时间的方法,其特征在于,包括:
S1:在来自GPS模的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值;
S2:根据所述第一目标脉冲信号的时间长度以及所述第一计数值,确定任意一个计数值每增加一个单位数值所需的时间长度。
2.如权利要求1所述的方法,其特征在于,所述在第一目标脉冲信号持续期间进行计数,确定第一计数值,包括:
在所述第一目标脉冲信号持续期间的第一时刻与第二时刻之间进行计数,确定所述第一计数值,所述第一时刻、所述第二时刻是所述第一目标脉冲信号发生跳变的时刻,所述第二时刻位于所述第一时刻之后。
3.如权利要求2所述的方法,其特征在于,所述第一时刻为检测到所述第一目标脉冲信号的上升沿时对应的时刻,或,检测到所述第一目标脉冲信号的下降沿时对应的时刻,所述第二时刻为检测到所述第一目标脉冲信号的上升沿时对应的时刻,或,检测到所述第一目标脉冲信号的下降沿时对应的时刻。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述在第一目标脉冲信号持续期间进行计数,确定第一计数值,包括:
如果在所述第一目标脉冲信号持续期间进行计数的过程中未发生中断,将在所述第一目标脉冲信号持续期间统计的计数值确定为所述第一计数值;或,
如果在所述第一目标脉冲信号持续期间进行计数的过程中发生了中断,根据预设的计数值、第二计数值、计数过程中的中断次数,确定所述第一计数值,所述第二计数值是在所述计数过程中的最后一次中断发生后统计的计数值,其中,在所述第一目标脉冲信号持续期间进行计数的过程中,当计数值等于预设的计数值时,中断发生。
5.如权利要求1所述的方法,其特征在于,在确定第一计数值之前,所述方法还包括:
在接收到来自所述GPS模块的指示信息之后,根据所述GPS模块在发送所述指示信息之后输出的脉冲信号,确定所述第一目标脉冲的起始时刻,所述指示信息指示所述GPS模块的定位有效。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述GPS模块的预设协议,获取第三时刻的时间参数;
根据所述第三时刻的时间参数、所述任意一个计数值每增加一个单位数值所需的时间长度、第三计数值,确定第四时刻的时间参数,所述第三计数值为在所述第三时刻至所述第四时刻期间统计的计数值。
7.如权利要求1至6中任一项所述的方法,其特征在于,在确定所述任意一个计数值每增加一个单位数值所需的时间长度之后,所述方法还包括:
每间隔预设的时间长度之后,循环执行S1至S2。
8.一种确定时间的装置,其特征在于,包括:
计数模块,用于在来自GPS模块的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值;
所述确定模块,还用于根据所述第一目标脉冲信号的时间长度以及所述第一计数值,确定任意一个计数值每增加一个单位数值所需的时间长度。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并能够在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至
7中任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法。

说明书全文

一种确定时间的方法、装置、电子设备及存储介质

技术领域

[0001] 本申请属于电子技术领域,尤其涉及一种确定时间的方法、装置、电子设备及存储介质。

背景技术

[0002] 目前,在使用硬件设备确定某一段时间内的时间长度的过程中,通常根据硬件设备中的晶振震荡的频率来确定某一段时间内的时间长度,但是由于外界环境的变化(例如温度变化)会对晶振的震荡频率产生一定的影响,因此通过这种方式确定的某一段时间内的时间长度会存在较大的误差。发明内容
[0003] 本申请实施例提供了一种确定时间的方法、装置、电子设备及存储介质,可以解决提高确定时间的精确性的问题。
[0004] 第一方面,本申请实施例提供了一种确定时间的方法,该方法包括:S1:在来自GPS模的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值;S2:根据所述第一目标脉冲信号的时间长度以及所述第一计数值,确定任意一个计数值每增加一个单位数值所需的时间长度。
[0005] 在第一方面的一种可能的实现方式中,所述在来自GPS模块的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值,包括:在所述第一目标脉冲信号持续期间的第一时刻与第二时刻之间进行计数,确定所述第一计数值,所述第一时刻、所述第二时刻是所述第一目标脉冲信号发生跳变的时刻,所述第二时刻位于所述第一时刻之后。
[0006] 在第一方面的一种可能的实现方式中,所述第一时刻为检测到所述第一目标脉冲信号的上升沿时对应的时刻,或,检测到所述第一目标脉冲信号的下降沿时对应的时刻,所述第二时刻为检测到所述第一目标脉冲信号的上升沿时对应的时刻,或,检测到所述第一目标脉冲信号的下降沿时对应的时刻。
[0007] 在第一方面的一种可能的实现方式中,所述在来自GPS模块的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值,包括:如果在所述第一目标脉冲信号持续期间进行计数的过程中未发生中断,将在所述第一目标脉冲信号持续期间统计的计数值确定为所述第一计数值;或,如果在所述第一目标脉冲信号持续期间进行计数的过程中发生了中断,根据预设的计数值、第二计数值、计数过程中的中断次数,确定所述第一计数值,所述第二计数值是在所述计数过程中的最后一次中断发生后统计的计数值,其中,在所述第一目标脉冲信号持续期间进行计数的过程中,当计数值等于预设的计数值时,中断发生。
[0008] 在第一方面的一种可能的实现方式中,在确定第一计数值之前,所述方法还包括:在接收到来自所述GPS模块的指示信息之后,根据所述GPS模块在发送所述指示信息之后输出的脉冲信号,确定所述第一目标脉冲的起始时刻,所述指示信息指示所述GPS模块的定位有效。
[0009] 在第一方面的一种可能的实现方式中,所述方法还包括:根据所述GPS模块的预设协议,获取第三时刻的时间参数;根据所述第三时刻的时间参数、所述任意一个计数值每增加一个单位数值所需的时间长度、第三计数值,确定第四时刻的时间参数,所述第三计数值为在所述第三时刻至所述第四时刻期间统计的计数值。
[0010] 在第一方面的一种可能的实现方式中,在确定所述任意一个计数值每增加一个单位数值所需的时间长度之后,所述方法还包括:每间隔预设的时间长度之后,循环执行S1至S2。
[0011] 本申请通过在来自GPS模块的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值,并根据第一目标脉冲信号的长度以及第一计数值,确定出任意一个计数值每增加一个单位数值所需的时间长度,可以看到,在得到任意一个计数值每增加一个单位数值所需的时间长度之后,可以根据任意一个计数值每增加一个单位数值所需的时间长度、以及在待确定时间长度期间统计得到的计数值,从而对待确定时间长度进行确定。
[0012] 应理解,由于本申请中的已知时间长度的第一目标脉冲信号来自GPS模块,因此该已知时间长度十分接近基于国际标准时间(格林威治时间)确定的第一目标脉冲信号的时间长度,即,第一目标脉冲信号对应的已知时间长度的精确度较高,在该第一目标脉冲持续期间进行计数,得到第一计数值,根据该已知时间长度以及第一计数值,确定出的任意一个计数值每增加一个单位数值所需的时间长度的精确度较高。相对于现有技术中通过晶振震荡频率确定的任意一个计数值每增加一个单位数值所需的时间长度的技术方案,本申请确定出的任意一个计数值每增加一个单位数值所需的时间长度精确度较高。因此根据该任意一个计数值每增加一个单位数值所需的时间长度,确定增加若干个计数值对应的时间长度同样拥有较高的精确度。
[0013] 第二方面,本申请实施例提供了一种确定时间装置,该装置用于执行上述第一方面或第一方面的任一种可能的实现方式中的方法。具体地,该装置可以包括用于执行第一方面或第一方面的任一种可能的实现方式中确定时间的模块。
[0014] 第三方面,本申请实施例提供了一种确定时间设备,包括:存储器、通信接口、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述第一方面或第一方面中任一项所述的方法。
[0015] 第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述第一方面或第一方面中任一项所述的方法。
[0016] 第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在设备上运行时,使得设备执行时实现上述第一方面或第一方面中任一项所述的方法。
[0017] 可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。附图说明
[0018] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0019] 图1是本申请一实施例提供的确定时间的系统100示意图;
[0020] 图2是本申请一实施例提供的GPS模块输出的秒脉冲的示意图;
[0021] 图3是本申请实施例提供的确定时间的方法300的流程示意图;
[0022] 图4中的(a)图是本申请实施例提供的第一目标脉冲信号的示意图;
[0023] 图4中的(b)图是本申请实施例提供的另一第一目标脉冲信号的示意图;
[0024] 图4中的(c)图是本申请实施例提供的再一第一目标脉冲信号的示意图;
[0025] 图4中的(d)图是本申请实施例提供的再一第一目标脉冲信号的示意图;
[0026] 图4中的(e)图是本申请实施例提供的再一第一目标脉冲信号的示意图;
[0027] 图5是本申请实施例提供的确定时间装置500的结构示意图;
[0028] 图6是本申请实施例提供的确定时间的设备600的结构示意图。

具体实施方式

[0029] 以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
[0030] 应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0031] 还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0032] 如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0033] 另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0034] 在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0035] 当需要确定出精确的一段时间长度时,例如,当使用采样频率较高的采样器采集信号进行分析时,为了获取到的一定数量的采样数据,需要确定出与之匹配的高精度的时间长度。又例如,当需要获取到精确的时间参数时,同样需要根据确定出精确的计时值,从而确定需要的时间参数。
[0036] 目前,在确定某一段时间的时间长度的过程中,通常使用计时器确定出的计数值转换为对应的时间长度,从而确定出对应的时间。应理解,在通过计时器进行计数过程中,计数值是根据晶振振荡器的频率确定的,然而,晶振频率容易受到外界的环境影响而发生变化,例如,当温度发生明显变化时,晶振频率也会随之发生变化,这种情况会导致每增加1个计数值时,不同温度下对应的时间长度不同。例如,在温度为25°时,计时器确定的1个计数值对应的时间长度为10微秒,然而当温度上升至35°时,计时器确定的1个计数值不再对应10微秒的时间长度。在这种情况下,通过计时器得到的计数值确定的时间会存在较大的误差,且计时的时间越长,误差越大。基于以上发现,本申请实施例提供一种确定时间的方法,根据来自GPS模块的已知时间长度的第一目标脉冲信号,并在第一目标脉冲信号内进行计数,确定出第一计数值,在根据第一目标脉冲信号的时间长度以及第一计数值,由于基于GPS模块发出的脉冲信号确定的时间长度十分接近基于国际标准时间(格林威治时间)确定的时间长度,因此第一目标脉冲信号的时间长度是精确的,因此可以根据在第一目标脉冲信号的时间长度内统计的计数值,确定出一个计数值对应的精确的时间长度,以解决现有技术中,确定某一段时间内的时间长度时会存在误差的问题。
[0037] 图1示出的是本申请实施例提供的一种确定时间系统100。该系统100包括:GPS模块101和计时器模块102。
[0038] 在一些实施例中,计时器模块102与GPS模块101之间建立通信连接,计时器模块102可以直接获取到来自GPS模块的已知时间长度的第一目标脉冲信号。
[0039] 在一些实施例中,计时器模块102中存在可以捕捉到脉冲突变的接口,其该接口与GPS模块101与之间建立通信连接。
[0040] 在一些实施例中,计时器模块102可以是单片机中的定时器,计时器模块102的接口为单片机中的定时器上的一个引脚,且该引脚可以捕捉到脉冲信号的某一时刻。
[0041] 例如,定时器上的引脚可以捕捉到脉冲信号发生跳变的时刻,脉冲信号发生跳变的时刻可以是脉冲信号的上升沿或者下降沿对应的时刻。
[0042] 在本申请的一些实施例中,GPS模块101可以输出如图2所示的秒脉冲信号,当GPS模块101输出秒脉冲信号,且秒脉冲信号发生突变时,定时器的引脚可以及时的捕捉到信号发生突变的时刻,并从捕捉到信号突变的时刻开始计数,从而确定出脉冲信号长度对应的精确的计数值。
[0043] 示例性的,本申请的实施例仅以GPS模块101为例进行说明,在实际应用的过程中,GPS模块101也可以是其他可以输出已知的时间长度的脉冲信号的模块,其中已知的时间长度与世界国际标准世界确定的该脉冲信号的时间长度误差较小。
[0044] 图3示出了本申请实施例提供的确定时间的方法300,应用于上述图1所示的确定时间的系统,可由计时器模块102的软件和/或硬件实现。如图3所示,该方法包括步骤S301至S302。各个步骤的具体实现原理如下:
[0045] S301,在来自GPS模块的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值,其中第一目标脉冲信号为GPS模块输出的脉冲信号。
[0046] 示例性的,第一目标脉冲信号是由GPS模块输出的脉冲信号,第一目标脉冲可以是GPS模块发出的脉冲信号中的其中一个周期的脉冲信号,也可以是GPS模块发出的脉冲信号中的已知时间长度的一段脉冲信号,即,第一目标脉冲信号的时间长度是已知的。
[0047] 示例性的,在第一目标脉冲信号持续期间进行计数,确定的第一计数值为在该第一目标脉冲信号的时间长度下对应的计数值。
[0048] 示例性的,在第一目标脉冲信号持续期间进行计数时,可以从计数值为0开始计数,结束计数之后得到的计数值为第一计数值,也可以从任意计数值开始继续计数,将在第一目标脉冲信号持续期间增加的计数值确定为第一计数值。
[0049] S302,根据第一目标脉冲信号的时间长度以及第一计数值,确定任意一个计数值每增加一个单位数值所需的时间长度。
[0050] 在一些实施例中,由于第一计数值为在该第一目标脉冲信号的时间长度下对应的计数值,因此可以根据第一目标脉冲信号的时间长度以及第一计数值,确定出任意一个计数值每增加一个单位数值所需的时间长度。
[0051] 示例性的,第一目标脉冲信号的时间长度为1秒,而在第一目标脉冲信号持续期间确定出的第一计数值为9990,则说明在1秒的时间内增加的计数值为9990,根据第一目标脉冲信号的时间长度以及第一计数值,可以确定任意一个计数值每增加一个单位数值所需的时间长度为100.1001微秒。
[0052] 应理解,例如,当计数值设置1秒内增加的计数值为10000时,表示计数值从零开始增加,增加到10000,对应的时间长度为1秒,然而根据本申请实施例所提出的方法,确定出的1秒内进行计数统计得到的计数值为9990,在这种情况下,可以看到计时器的计数值由于晶振频率变慢,导致在1秒的时间内实际的计数值相较于设置的计数值变小了10个计数值。即,根据设置在1秒内进行计数,统计的计数值为10000,则任意一个计数值每增加一个单位数值所需的时间长度为100微秒,而实际上在1秒内进行计数,统计的计数值为9990,则得到的任意一个计数值每增加一个单位数值所需的时间长度应该是100.1001微秒。
[0053] 示例性的,在根据第一脉冲信号的时间长度以及第一计数值确定任意一个计数值每增加一个单位数值所需的时间长度时,也可以直接确定任意一个计数值每增加指定个单位数值所需的时间长度,例如,确定任意一个计数值每增加两个单位数值所需的时间长度,或,确定任意一个计数值每增加十个单位数值所需的时间长度。
[0054] 在一些实施例中,当一个计数值对应的时间长度用于根据计数值确定时间长度时,若计数值从0增加至10000时,根据计时器的晶振频率设置的1个计数值对应的时间长度为100微秒,得到的时间长度为1000000微秒,而实际上根据上述得到的1个计数值对应的时间长度为100.1001微秒,因此得到实际的时间长度应该为1001001微秒。
[0055] 由此可见,根据设置值得到的时间长度出现了较为大的误差值。而本申请可以根据第一目标脉冲信号获取到精确的时间长度以及该时间长度对应的计数值,进而获取到任意一个计数值每增加一个单位数值所需的时间长度,因此可以根据统计得到的计数值,确定出精确的时间。
[0056] 应理解,本实施例仅以计数值从0增加至10000为例进行说明,在实际的应用过程中,当计数值从第一时刻的第一时刻对应的计数值开始增加,在第二时刻结束计数,得到第二时刻对应的计数值,则可以根据在第一时刻到第二时刻之间增加的计数值确定出第一时刻到第二时刻对应的时间长度。
[0057] 在上述图3所示的确定时间的实施例的基础上,步骤S302中在第一目标脉冲信号持续期间进行计数,确定第一计数值的步骤具体可以通过以下方式实现:
[0058] 在第一目标脉冲信号持续期间的第一时刻与第二时刻之间进行计数,确定第一计数值,其中第一时刻、第二时刻是第一目标脉冲信号发生跳变的时刻,且第二时刻位于第一时刻之后。
[0059] 应理解,当脉冲信号的幅值突然发生变化时,可以认为脉冲信号发生了跳变,例如,脉冲信号的幅值在一段时间内保持5V不变,当脉冲信号的突然增加至7V,或脉冲信号的幅值突然减小至2V时,认为脉冲信号发生了跳变。又例如,脉冲信号的幅值按照一定的规律每秒减少1V,当脉冲信号的幅值突然增加时,认为脉冲信号发生了跳变。
[0060] 在一些实施例中,第一时刻可以是检测到第一目标脉冲信号的上升沿对应的时刻,或检测第一目标脉冲信号的下降沿对应的时刻,第二时刻可以是检测到第一目标脉冲信号的上升沿对应的时刻,或检测第一目标脉冲信号的下降沿对应的时刻,且第二时刻位于第一时刻之后。
[0061] 示例性的,在第一时刻是检测到第一目标脉冲信号的上升沿对应的时刻,第二时刻是检测到第一目标脉冲信号的下降沿对应的时刻的情况下,得到的第一目标脉冲信号为如图4中的(a)图所示的脉冲信号,应理解,由于GPS模块输出的脉冲信号为秒脉冲信号,因此一个周期内的脉冲信号对应的时间长度为1秒。而秒脉冲信号对应的占空比为二分之一,也即,在一个周期的脉冲信号中,脉冲信号在高电平期间持续的时间长度为0.5秒,脉冲信号在低电平期间持续的时间长度为0.5秒。则可以看到,如图4中的(a)图所示的脉冲信号为一个周期内的脉冲信号中,高电平持续期间的脉冲信号,则在该第一目标脉冲信号持续期间进行计数,确定出第一计数值。其中,确定出的第一计数值为在时间长度t1为0.5秒内统计的计数值。
[0062] 示例性的,在第一时刻是检测到第一目标脉冲信号的下降沿升沿对应的时刻,第二时刻是检测到第一目标脉冲信号的上升沿对应的时刻的情况下,得到的第一目标脉冲信号可以是如图4中的(b)图所示的脉冲信号,应理解,由于GPS模块输出的脉冲信号为秒脉冲信号,因此一个周期内的脉冲信号对应的时间长度为1秒。而秒脉冲信号对应的占空比为二分之一,也即,在一个周期的脉冲信号中,脉冲信号在高电平期间持续的时间长度为0.5秒,脉冲信号在低电平期间持续的时间长度为0.5秒。则可以看到,如图4中的(b)图所示的脉冲信号为一个周期内的脉冲信号中,低电平持续期间的脉冲信号,则在该第一目标脉冲信号持续期间进行计数,可以确定出第一计数值。其中,确定出的第一计数值为在时间长度t2为0.5秒内统计的计数值。
[0063] 示例性的,在第一时刻与第二时刻是检测到第一目标脉冲信号的上升沿对应的时刻的情况下,得到的第一目标脉冲信号可以是如图4中的(c)图所示的脉冲信号,应理解,由于GPS模块输出的脉冲信号为秒脉冲信号。则可以看到,如图4中的(c)图所示的脉冲信号为一个周期内的脉冲信号,则在该第一目标脉冲信号持续期间进行计数,可以确定出第一计数值。其中,确定出的第一计数值为在时间长度t3为1秒内统计的计数值。
[0064] 示例性的,在第一时刻与第二时刻是检测到第一目标脉冲信号的下降沿对应的时刻的情况下,得到的第一目标脉冲信号可以是如图4中的(d)图所示的脉冲信号,应理解,由于GPS模块输出的脉冲信号为秒脉冲信号。则可以看到,如图4中的(d)图所示的脉冲信号为一个周期内的脉冲信号,则在该第一目标脉冲信号持续期间进行计数,则可以确定出第一计数值。其中,确定出的第一计数值为在时间长度t4为1秒内统计的计数值。
[0065] 示例性的,第一时刻可以是第i次检测到的第一目标脉冲信号的上升沿对应的时刻,第二时刻可以是第i+2次检测到的第一目标脉冲信号的上升沿第一的时刻,在这种情况下,得到的第一目标脉冲信号可以是如图4中的(e)图所示的脉冲信号,应理解,由于GPS模块输出的脉冲信号为秒脉冲信号,因此一个周期内的脉冲信号对应的时间长度为1秒。则可以看到,如图4中的(e)图所示的脉冲信号为两个周期内的脉冲信号,则在该第一目标脉冲信号持续期间进行计数,确定出的第一计数值为在时间长度t5为2秒内统计的计数值。
[0066] 在一些实施例中,在第一目标脉冲信号持续期间进行计数,确定第一计数值时,可以通过以下的方式确定第一计数值:
[0067] 应理解,对定时器进行设置后可以得到一个预设的计数值,根据定时器的设置可以得到当计数值从0增加了预设的计数值时,定时器认为在这个期间的时间长度为1秒,因此当计数值增加到了预设的计数值时,会产生中断,定时器根据产生的中断信号则认为时间长度增加了1秒。当定时器发生中断后,计数值从0开始重新进行计数。
[0068] 例如,以预设的计数值为10000进行说明,当计数值增加至10000时,会发生中断,若继续增加计数值,则视为当前的计数值为溢出的状态,在这种情况下,计数值从0开始重新增加。则发生溢出后,需要根据预设的计数值、中断的次数、中断后统计的计数值去确定实际的计数值。
[0069] 因此,在对第一目标脉冲信号持续期间进行计数时,得到的计数值可能是溢出后得到的计数值,也有可能是未溢出得到的计数值。即,在第一目标脉冲信号持续期间进行计数的过程中未发生中断的情况下,在对第一目标脉冲信号持续期间进行计数,可以将统计得到的计数值直接确定为第一计数值。
[0070] 示例性的,在第一目标脉冲信号持续期间进行计数的过程中,当计数值增加至预设的计数值时,会发生中断的现象,并重新从0开始计数,将最后一次中断之后统计的计数值确定为第二计数值。在这种情况下,可以根据预设的计数值、第二计数值、计数过程中的中断次数,确定第一计数值。
[0071] 例如,预设的计数值为10000,则当计数值到达10000时,会发生中断并重新从0开始计数,若计数过程中仅发生了一次中断,则统计第一次中断后的第二计数值为10,则将第二计数值与预设的计数值相加得到的计数值10010确定为第一计数值。
[0072] 又例如,预设的计数值为10000,第一计数值为9990时,第一计数值未超过预设的计数值,因此不会发生中断,在计数过程中未发生中断的情况下,可以将第一计数值9990直接确定为第一计数值。
[0073] 在一些实施例中,在步骤S301之前,本申请实施例还包括以下步骤:
[0074] 在接收到来自GPS模块的指示信息之后,再根据GPS模块在发送指示信息之后输出的脉冲信号,确定第一目标脉冲信号的起始时刻。
[0075] 应理解,由于在GPS模块上电后的短时间内,GPS模块处于未定的状态,即GPS模块的定位不是有效的状态,因此GPS模块不会输出脉冲信号,或输出的脉冲信号为不规律的脉冲信号,当GPS模块定位成功之后,会输出一个表示当前时刻的GPS模块定位有效的指示信息,表示当前GPS模块输出的脉冲信号为标准的秒脉冲信号,而本申请需要的是GPS输出的标准的秒脉冲信号。因此,在接收到来自GPS模块的指示信息之后,则可以根据GPS模块在输出指示信息之后输出的脉冲信号,确定第一目标脉冲信号的起始时刻。
[0076] 可选的,当GPS模块定位有效时,会输出一个表示当前时刻的GPS模块定位有效的指示信息,当GPS模块定位无效时,会输出一个表示当前时刻的GPS模块定位无效的指示信息。
[0077] 例如,当GPS模块输出的信息为A时,认为GPS模块输出了表示当前时刻的GPS模块定位有效的指示信息,当GPS模块输出的信息为V时,则表示当前时刻的GPS模块定位无效,因此认为GPS模块未输出一个表示当前时刻的GPS模块定位有效的指示信息。
[0078] 在一些实施例中,本申请实施例还可以包括以下步骤:
[0079] 示例性的,可以根据GPS模块的预设协议,获取到第三时刻的时间参数,再根据第三时刻的时间参数、在步骤S302中确定的任意一个计数值每增加一个单位数值所需的时间长度、以及第三计数值,确定第三时刻的时间参数,其中第三计数值为在第三时刻至第四时刻期间进行计数的过程中统计的计数值。
[0080] 可选的,第三时刻可以是根据GPS模块的预设协议获取的实时的时间参数。
[0081] 可选的,GPS模块的预设协议可以是美国国家海洋电子协会(National Marine Electronics Association,NMEA)协议。
[0082] 例如,在步骤S302中确定的任意一个计数值每增加一个单位数值所需的时间长度为任意一个计数值每增加一个单位数值所需的时间长度为80微秒,根据GPS模块的预设协议,获取到的实时时间参数为2021年1月1日17点10分10秒,将2021年1月1日17点10分10秒作为第三时刻,从第三时刻开始计数,并在第四时刻停止计数,统计在第三时刻至第四时刻期间统计的计数值,得到计数值为9123,可以得到第三时刻到第四时刻对应的时间长度为729840微秒,则第四时刻的时间参数为2021年1月1日17点10分10秒729毫秒840微秒。
[0083] 在一些实施例中,在确定任意一个计数值每增加一个单位数值所需的时间长度之后,本申请实施例还包括以下步骤:
[0084] 每隔预设的时间长度之后,循环执行步骤S101至步骤S102。
[0085] 应理解,由于外界环境随时可能在发生变化,因此在确定任意一个计数值每增加一个计数单位所需的时间长度在之后,因为受到外界环境的影响,例如温度变化导致计时器内的晶振频率发生变化,导致计数值每增加一个计数单位所需的时间长度发生变化,则需要再次执行步骤S101至步骤S102,重新确定计数值每增加一个计数单位所需的时间长度,防止在确定时间的过程中由于环境变化带来的误差。进一步提高了计时器在任意时刻的工作过程中,确定出的时间的精确度。
[0086] 例如,预设的时间长度为5分钟,在13:00时刻,执行步骤S101至步骤S102得到一个计数值每增加一个计数单位所需的时间长度为90微秒,则在13:00到13:05期间,可以根据一个计数值每增加一个计数单位所需的时间长度为90微秒对时间进行确定,在13:05时刻,再次执行步骤S101至步骤S102,得到一个计数值每增加一个计数单位所需的时间长度为85微秒,则在13:05到13:10期间,可以根据一个计数值每增加一个计数单位所需的时间长度为85微秒对时间进行确定,在之后每隔5分钟(例如13:15时刻、13:20时刻等),循环执行一次步骤S101至步骤S102,并根据重新确定的一个计数值每增加一个计数单位所需的时间长度对时间进行确定。
[0087] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
[0088] 对应于上述图3所示的确定时间的方法,图5示出的是本申请实施例提供的一种确定时间装置500,包括:
[0089] 计数模块501,用于在来自GPS模块的已知时间长度的第一目标脉冲信号持续期间进行计数,确定第一计数值。
[0090] 确定模块502,用于根据所述第一目标脉冲信号的时间长度以及所述第一计数值,确定任意一个计数值每增加一个单位数值所需的时间长度。
[0091] 可选的,计数模块501还用于在所述第一目标脉冲信号持续期间的第一时刻与第二时刻之间进行计数,确定所述第一计数值,所述第一时刻是所述第一目标脉冲信号发生跳变的时刻,所述第二时刻是所述第一目标脉冲信号发生跳变的时刻,所述第二时刻位于所述第一时刻之后。
[0092] 可选的,计数模块501还用于在第一目标脉冲信号持续期间进行计数期间未发生中断的情况下,将第一计数值确定为所述第一计数值,所述第一计数值是在所述计数过程中未发生中断时统计的计数值;或,在第一目标脉冲信号持续期间进行计数期间发生中断的情况下,根据所述预设的计数值、第二计数值、计数过程中的中断次数,确定所述第一计数值,所述第二计数值是在所述计数过程中的最后一次中断后统计的计数值,其中,在所述第一目标脉冲信号持续期间进行计数时,计数值等于预设的计数值时,中断发生。
[0093] 可选的,所述第一时刻为检测到所述第一目标脉冲信号的上升沿时对应的时刻,或,检测到所述第一目标脉冲信号的下降沿时对应的时刻,所述第二时刻为检测到所述第一目标脉冲信号的上升沿时对应的时刻,或,检测到所述第一目标脉冲信号的下降沿时对应的时刻。
[0094] 可选的,在确定第一计数值之前,所述确定模块502,还用于在接收到来自所述GPS模块的指示信息之后,根据所述GPS模块输出的脉冲信号,确定所述第一目标脉冲的初始时刻,所述指示信息指示所述GPS模块的定位有效。
[0095] 可选的,所述装置500还包括获取模块503,所述获取模块503用于根据所述GPS模块的预设协议,获取第三时刻的时间参数。
[0096] 可选的,所述确定模块502还用于根据所述第三时刻的时间参数、所述任意一个计数值每增加一个单位数值所需的时间长度、第三计数值,确定第四时刻的时间参数,所述第三计数值为所述第三时刻到所述第四时刻期间统计的计数值。
[0097] 可选的,所述方法还包括循环模块,用于在确定所述任意一个计数值每增加一个单位数值所需的时间长度之后,每间隔预设的时间长度之后,循环执行S1至S2。
[0098] 可以理解的是,以上实施例中的各种实施方式和实施方式组合及其有益效果同样适用于本实施例,这里不再赘述。
[0099] 图6为本申请实施例提供的一种确定时间设备的结构示意图。如图6所示,其中设备600包括处理器601、存储器602、通信接口603和总线604。其中,处理器601、存储器602、通信接口603通过总线604进行通信,也可以通过无线传输等其他手段实现通信。该存储器602用于存储指令,该处理器601用于执行该存储器602存储的指令。该存储器602存储程序代码6021,且处理器601可以调用存储器602中存储的程序代码6021执行图3所示的确定时间的方法。
[0100] 应理解,在本申请实施例中,处理器601可以是CPU,处理器601还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
[0101] 该存储器602可以包括只读存储器随机存取存储器,并向处理器601提供指令和数据。存储器602还可以包括非易失性随机存取存储器。该存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read‑only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
[0102] 该总线604除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图6中将各种总线都标为总线604。
[0103] 本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
[0104] 本申请实施例提供了一种计算机程序产品,当计算机程序产品在设备上运行时,使得设备执行时实现可实现上述各个方法实施例中的步骤。
[0105] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
[0106] 需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0107] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0108] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0109] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0110] 在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0111] 上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0112] 以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
QQ群二维码
意见反馈