系统时间的校正方法、装置、终端及路由器的制造方法

文档序号:9202493阅读:403来源:国知局
系统时间的校正方法、装置、终端及路由器的制造方法
【技术领域】
[0001]本公开涉及网络通信技术领域,尤其涉及一种系统时间的校正方法、装置、终端及路由器。
【背景技术】
[0002]为了降低系统的功耗,目前常用的做法是使设备的MCU(Microcontroller Unit,微控制单元)在没有业务需要处理时进入休眠状态,在有业务需要处理时再从休眠状态中醒来。
[0003]相关技术中,许多嵌入式系统的时间都依赖于系统systiCk(心跳计时器),即系统计时时钟。但是在MCU进入休眠状态时,CPU (Central Processing Unit,中央处理单元)和外设控制器的时钟都会停止,也就是说,心跳计时器也会停止工作,那么当MCU从休眠状态醒来时,这时的时钟就是错误的,从而会导致一些控制逻辑上的错误。

【发明内容】

[0004]本公开提供了一种系统时间的校正方法、装置、终端及路由器,以解决相关技术中在设备进入休眠时,系统时钟会停止,设备从休眠状态醒来之后的系统时间不准确带来的冋题。
[0005]根据本公开实施例的第一方面,提供一种系统时间的校正方法,包括:
[0006]从休眠状态醒来时,通过读取系统时间以外的方式获取当前时间信息;
[0007]基于所述当前时间信息校正当前系统时间。
[0008]可选的,所述从休眠状态醒来之前,所述方法还包括:
[0009]获取要进入休眠状态的时间信息;
[0010]基于所述要进入休眠状态的时间信息设置实时时钟的起始计数值;
[0011]在进入休眠状态时,所述实时时钟基于所述起始计数值开始计数。
[0012]可选的,所述通过读取系统时间以外的方式获取当前时间信息,包括:
[0013]读取所述实时时钟基于所述起始计数值开始计数得到的当前计数值;
[0014]根据所述当前计数值得到当前时间信息。
[0015]可选的,所述进入休眠状态之前,所述方法还包括:
[0016]获取要进入休眠状态的时间信息;
[0017]获取要进入所述休眠状态的休眠时间长度;
[0018]对应的存储所述要进入休眠状态的时间信息及所述休眠时间长度。
[0019]可选的,所述通过读取系统时间以外的方式获取当前时间信息,包括:
[0020]读取存储的所述要进入休眠状态的时间信息及所述休眠时间长度;
[0021]基于所述要进入休眠状态的时间信息及所述休眠时间长度计算得出当前时间信息。
[0022]可选的,所述获取要进入休眠状态的时间信息包括:
[0023]读取要进入休眠状态时的系统时间作为要进入休眠状态的时间信息。
[0024]可选的,所述获取要进入休眠状态的时间信息,包括:
[0025]在要进入休眠状态时,向通过网络连接的设备发送时间获取请求;
[0026]接收所述设备基于所述时间获取请求返回的要进入休眠状态的时间信息。
[0027]可选的,所述获取要进入休眠状态的时间信息,包括:
[0028]在要进入休眠状态时,向卫星发送时间请求信息;
[0029]基于所述卫星返回的授时信息,得到要进入休眠状态的时间信息。
[0030]可选的,所述通过读取系统时间以外的方式获取当前时间信息,包括:
[0031]向通过网络连接的设备发送时间获取请求;
[0032]接收所述设备基于所述时间获取请求返回的当前时间信息。
[0033]可选的,所述通过读取系统时间以外的方式获取当前时间信息,包括:
[0034]向卫星发送时间请求信息;
[0035]基于所述卫星返回的授时信息,得到当前时间信息。
[0036]可选的,所述基于所述当前时间信息校正当前系统时间,包括:
[0037]将所述当前系统时间修改为所述当前时间信息。
[0038]根据本公开实施例的第二方面,提供一种系统时间的校正装置,包括:
[0039]当前时间信息获取模块,用于从休眠状态醒来时,通过读取系统时间以外的方式获取当前时间?目息;
[0040]系统时间校正模块,用于基于所述当前时间信息校正当前系统时间。
[0041]可选的,所述装置还包括:
[0042]第一休眠时间获取模块,用于获取要进入休眠状态的时间信息;
[0043]设置模块,用于基于所述要进入休眠状态的时间信息设置实时时钟的起始计数值;
[0044]计数模块,用于在进入休眠状态时,所述实时时钟基于所述起始计数值开始计数。
[0045]可选的,所述当前时间信息获取模块包括:
[0046]第一读取子模块,用于读取所述实时时钟基于所述起始计数值开始计数得到的当前计数值;
[0047]第一时间信息得到子模块,用于根据所述当前计数值得到当前时间信息。
[0048]可选的,所述装置还包括:
[0049]第二休眠时间获取模块,用于获取要进入休眠状态的时间信息;
[0050]休眠时间长度获取模块,用于获取要进入所述休眠状态的休眠时间长度;
[0051]存储模块,用于对应的存储所述要进入休眠状态的时间信息及所述休眠时间长度。
[0052]可选的,所述当前时间信息获取模块包括:
[0053]第二读取子模块,用于读取存储的所述要进入休眠状态的时间信息及所述休眠时间长度;
[0054]计算子模块,用于基于所述要进入休眠状态的时间信息及所述休眠时间长度计算得出当前时间信息。
[0055]可选的,所述休眠时间获取模块包括:
[0056]系统时间读取子模块,用于读取要进入休眠状态时的系统时间作为要进入休眠状态的时间?目息。
[0057]可选的,所述休眠时间获取模块包括:
[0058]第一时间获取请求发送子模块,用于在要进入休眠状态时,向通过网络连接的设备发送时间获取请求;
[0059]第一时间信息接收子模块,用于接收所述设备基于所述时间获取请求返回的要进入休眠状态的时间信息。
[0060]可选的,所述休眠时间获取模块包括:
[0061]第一时间请求信息发送子模块,用于在要进入休眠状态时,向卫星发送时间请求信息;
[0062]第二时间信息得到子模块,用于基于所述卫星返回的授时信息,得到要进入休眠状态的时间信息。
[0063]可选的,所述当前时间信息获取模块包括:
[0064]第二时间获取请求发送子模块,用于向通过网络连接的设备发送时间获取请求;
[0065]第二时间信息接收子模块,用于接收所述设备基于所述时间获取请求返回的当前时间信息。
[0066]可选的,所述当前时间信息获取模块包括:
[0067]第二时间请求信息发送子模块,用于向卫星发送时间请求信息;
[0068]第三时间信息得到子模块,用于基于所述卫星返回的授时信息,得到当前时间信息。
[0069]可选的,所述系统时间校正模块包括:
[0070]修改子模块,用于将所述当前系统时间修改为所述当前时间信息。
[0071]根据本公开实施例的第三方面,提供一种终端,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:
[0072]从休眠状态醒来时,通过读取系统时间以外的方式获取当前时间信息;
[0073]基于所述当前时间信息校正当前系统时间。
[0074]根据本公开实施例的第四方面,提供一种路由器,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:
[0075]从休眠状态醒来时,通过读取系统时间以外的方式获取当前时间信息;
[0076]基于所述当前时间信息校正当前系统时间。
[0077]本公开的实施例提供的技术方案可以包括以下有益效果:
[0078]本公开中终端或路
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1