[求助] 在stm32上做可调时电子钟,在哪里修改时间

小百合wlq   2012-5-14 19:55 楼主
我按照例程上的实时时钟程序,在lcd上显示了时间。
发现更新时间的函数是从以前某个时间点(比如1979年*月*日,貌似是固定的)开始算起,接受一个秒数,用这个秒数计算+查表得出对应的年月日时分秒(用一个结构体表示,里面分别有年月日时分秒)的显示方式。
利用秒中断来更新时间,也就是当前显示的秒数和系统的秒进行比较,如果不相同,就更新一次。

我想通过按键来改时间。比如说改分钟。我在时间的这个结构体里修改了分钟的值,可是回到正常模式后一旦接受了秒中断,时间又变回原来的值了

这怎么办?还是本来就不应该在那个时间结构体里该?

我想到的笨方法就是把我想改成的时间换算成秒数,再赋给系统更新时间的函数。但这要考虑闰年、月,相当麻烦,应该不至于用这么笨的方法吧?

回复评论 (1)

首先,时间的显示是基于RTC中32位的计数器
其次,其他人写的开始时间1979 - 00-00为unix的时间戳
你要想修改时间
就要修改RTC中的计数器
或者自己冲信写一个程序
这个网上应该很多的
点赞  2012-5-18 07:24
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复