一种可以自定义时间长度的实时时钟装置的制作方法

文档序号:6264148阅读:384来源:国知局
专利名称:一种可以自定义时间长度的实时时钟装置的制作方法
技术领域
本实用新型涉及气象测量领域,具体涉及一种可以自定义时间长度的实时时钟装置。
背景技术
目前,公知的实时时钟装置,都存在一个基本的定时器,通过这个定时器的自加来实现年、月、日、时、分、秒的自增运算。现在所有这些时钟电路都有一个局限性就是时间长度固定,如普通年有365天、闰年有366天、1年有12个月、1个月有( 到31)天,1天有 24小时、1个小时有60分钟、1分钟有60秒。这些约定俗成的时间长度是根据地球自转与公转周期算出来的,对于其他星球如水星、金星、火星等星球这些年、月、日就不再合适了,如果空间探测器发射到这些星球后,完全按照地球时钟安排探测任务,必然会存在诸多不便。 比如,火星探测器要探测早晨太阳升起时、晚上太阳落下时的气象状态。如果按照地球时钟运行必然存在时间上繁琐的换算与计算,如果火星探测器能有一种单独的火星时钟装置来计算火星时间,将会大大降低探测器处理时间计划的繁琐性。因此,提供一种结构简单、精度高的可以自定义时间长度的实时时钟装置,对于地球以外的星球的探测设备意义重大。
发明内容为了克服现有实时时钟装置时间长度固定且无法更改的不足,本实用新型提供一种可以自定义时间长度的实时时钟装置,不仅可以设置成地球的时间长度,而且可以设置成任意的时间长度,以适用于具有固定自转和公转周期的星球。本实用新型解决技术问题所采用的技术方案如下一种可以自定义时间长度的实时时钟装置,包括高精度晶振、47位计数器、电池、 低功耗单片机、IIC双向串行总线、SPI串行外设接口和UART异步全双工串口 ;所述高精度晶振与47位计数器相连,其为47位计数器提供计数频率;所述电池与47位计数器相连, 其为47位计数器提供电源;所述低功耗单片机与47位计数器相连,其用于对47位计数器计数值的读取与写入;所述IIC双向串行总线、SPI串行外设接口和UART异步全双工串口这三种通信模块均与低功耗单片机相连,外部设备通过上述三种通信模块读取时钟装置的实时时间。上述低功耗单片机包括32位整形数据模块、设置系数模块、转换系数模块和读取系数模块,32位整形数据模块、设置系数模块、读取系数模块均与转换系数模块相连;所述 32位整形数据模块存储通过47位定时器的值换算出来的以秒为单位的从公元2000年以后的时间数据;所述转换系数模块包含年系数parameter_year、月系数parameterjnonth、 曰系数 parameter_day> 小时系数 parameter_hour、分系数 parameter_minute、禾少系数 parameter_second六类系数,其用于将32位整形数据转换成非地球时间长度的时间或者将非地球时间长度的时间转换成32位整形数据;所述设置系数模块用于改写上述六类系数,所述读取系数模块用于读取上述六类系数。[0007]本实用新型的有益效果是该装置简单、灵活性高,可以设置成其它时间长度,在其它存在固定自转和公转周期的星球上使用。

图1是本实用新型一种可以自定义时间长度的实时时钟装置的结构框图。图2是本实用新型中的低功耗单片机结构框图。
具体实施方式
以下结合附图和实施例对本实用新型做进一步详细说明。如图1所示,本实用新型一种可以自定义时间长度的实时时钟装置,包括高精度晶振、47位计数器、电池、低功耗单片机、IIC双向串行总线、SPI串行外设接口和UART异步全双工串口。所述47位定时器的最大定时时间为137地球年,所述高精度晶振的频率为 32.768KHZ。32. 768KHZ高精度晶振振荡在一秒钟时间内使47位计数器计数自增了 65536个数,65536代表了 16位二进制全是1的情况。换句话说,每经过1秒钟,47位计数器的第17 位计数位都将自增1。由此可以认为从17位到47位之间的数据位,可以代表从2000地球年到2137地球年时间。这样就可以把从17位到47位之间的数据存储到一个32位整形数据模块中进行运算了。低功耗单片机在大部分时间都在空闲模式下运行,在该模式下只有一个定时器,3 个中断源和部分RAM供电,其他外设全部关闭,以便节省功耗。单片机的不掉电RAM中存储了一个专有32位整形变量,用来保存以秒为单位最新的时间。单片机内部定时器每隔0. 1 秒产生一次中断并唤醒单片机进入全速模式,这时候单片机读取47位计数器的值,把17位到47位的值和上次保存的32位整形变量进行比较。如果无变化立刻进入空闲模式,如果有变化说明秒数自增,需要调用转换系数模块进行从秒到自定义时间(年、月、日、时、分、秒) 的转换。转换完毕把当前47位计数器17位到47位的值覆盖到专有32位整形变量存储位置,然后立刻进入空闲模式,此过程需要时间约为6ms。外部设备可以通过三种通信方式和该设备连接,(I)IIC双向串口总线,串行外设接口,C3)UART异步全双工串口。每种通信方式都是被动的,只有通过3个中断源唤醒CPU引入全速运行模式,从而进行读取或写入时间、转换系数等操作。如图2所示,32位整形数据通过转换系数模块和自定义时间(年、月、日、时、分、 秒、分)的相互转换可逆。设定32位整形数据定义为UINT32,自定义时间TIME。首先定义出几个宏,这几个宏分别代表自定义时间TIME(年、月、日、时、分、秒、 分)包含的秒数。这几个宏根据6类转换系数自动算出来。如果不考虑闰年、月份天数差异,这几个宏分别是 SECOND = lXparameter_second, MINUTE = SECONDXparameter, minute, HOUR = MINUTEXparameter_hour, DAY = HOURXparameter_day, MONTH = DAYXparameter_month, YEAR = DAYXparameter_year。如果考虑到闰年、月份天数差异,这几个宏分别是SECOND = 1 Xparameter_second,MINUTE = SECOND X parameter_minute, HOUR =MINUTEX parameter_hour, DAY = HOUR X parameter_day, MONTHn = DAYX parameter_monthn( 据月份的不同 M0NTHn、parameter_monthn 各有不同),
YEARnormal= YjMONTHn, YEAReap = ±Mmmn+、’ Year311 = 1 1
mXYEAR_al+YEARleap,其中η为用户定义一年月份个数,YEARnormal为普通年包含的秒数,
YEARleap为闰年包含的秒数,k为普通年和闰年的秒数差异,m表示闰年的周期,即每经过m
年产生一个闰年。YEAIiall表示每一个闰年周期内普通年和闰年秒数之和。从UINT32到自定义时间TIME的转换,可以按照如下方法如果不考虑闰年、月份天数差异,直接用UINT32除以YEAR,商当做年。上步骤结果的余数部分继续除以MONTH,商当做月。上步骤结果的余数部分继续除以DAY,商当做日。上步骤结果的余数部分继续除以 HOUR,商当做时。上步骤结果的余数继续除以MINUTE,商当做分。上步骤结果的余数部分继续除以SECOND,结果当做秒。如果考虑闰年、月份天数差异,运算方法如下首先UINT32除以YEARall算出的余数,若该余数小于YEARleap,说明UINT32代表的时间是在闰年中。若该余数大于YEARnmial,说明UINT32代表的时间在普通年中。之后根据年份的不同分别进行对应年、月、日、时、分的计算。其方法是和定义的6类宏做差比较,最终算出对应时间。从自定义时间到UINT32的转换较简单,如果不考虑闰年、月份天数差异。UINT32 =年 XYEAR+月 XMONTH+ 日 XDAY+时 XHOUR+分 XMINUTE+秒 XSECOND。如果考虑闰
年、月份天数差异,首先需要判断出TIME包含多少个YEARall,S卩^^的商,用该商乘以
m
YEARall算出SUMl,SUMl=(取整)yg^j!^,之后算出在TIME跨过最近闰年周
期内包含的整年秒数之和SUM2,最后根据不同月份算出月、日、分、秒累加和SUM3,最终算出 UINT32 = SUM1+SUM2+SUM3。
权利要求1.一种可以自定义时间长度的实时时钟装置,其特征在于,该装置包括高精度晶振、47 位计数器、电池、低功耗单片机、Iic双向串行总线、SPI串行外设接口和UART异步全双工串口 ;所述高精度晶振与47位计数器相连,其为47位计数器提供计数频率;所述电池与47 位计数器相连,其为47位计数器提供电源;所述低功耗单片机与47位计数器相连,其用于对47位计数器计数值的读取与写入;所述IIC双向串行总线、SPI串行外设接口和UART异步全双工串口这三种通信模块均与低功耗单片机相连,外部设备通过上述三种通信模块读取时钟装置的实时时间。
2.如权利要求1所述的一种可以自定义时间长度的实时时钟装置,其特征在于,所述低功耗单片机包括32位整形数据模块、设置系数模块、转换系数模块和读取系数模块,32 位整形数据模块、设置系数模块、读取系数模块均与转换系数模块相连;所述32位整形数据模块存储通过47位定时器的值换算出来的以秒为单位的从公元2000年以后的时间数据;所述转换系数模块包含年系数、月系数、日系数、小时系数、分系数和秒系数六类系数, 其用于将32位整形数据转换成非地球时间长度的时间或者将非地球时间长度的时间转换成32位整形数据;所述设置系数模块用于改写上述六类系数,所述读取系数模块用于读取上述六类系数。
3.如权利要求1所述的一种可以自定义时间长度的实时时钟装置,其特征在于,所述 47位定时器的最大定时时间为137地球年,所述高精度晶振的频率为32. 768KHZ。
专利摘要一种可以自定义时间长度的实时时钟装置涉及气象测量领域,该装置包括高精度晶振、47位计数器、电池、低功耗单片机、IIC双向串行总线、SPI串行外设接口和UART异步全双工串口;所述高精度晶振、电池、低功耗单片机均与47位计数器相连,高精度晶振为47位计数器提供计数频率;电池为47位计数器提供电源;低功耗单片机用于对47位计数器计数值的读取与写入;IIC双向串行总线、SPI串行外设接口和UART异步全双工串口这三种通信模块均与低功耗单片机相连,外部设备通过上述三种通信模块读取时钟装置的实时时间。本实用新型的有益效果是该装置简单、灵活性高,可设置成其它时间长度,用于存在固定自转和公转周期的星球。
文档编号G04G9/00GK202196278SQ201120321718
公开日2012年4月18日 申请日期2011年8月30日 优先权日2011年8月30日
发明者张月清, 张禹瑄, 王刚, 王启万, 胡玮通 申请人:长春希迈气象科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1