STM32的RTC实时时间问题

2024-11-29 08:47:25
推荐回答(3个)
回答1:

char *wday[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
time_t timep;
struct tm *p;
time(&timep);
p=localtime(&timep); /*取得当地时间*/

把这个加到RTC初始化下配置时间里面试试

printf ("%d%d%d ", (1900+p->tm_year),( 1+p->tm_mon), p->tm_mday);
printf("%s%d:%d:%d\n", wday[p->tm_wday],p->tm_hour, p->tm_min, p->tm_sec);
把这个放到RTC秒中断的服务函数里面试试
我也不会 不知道能不能给你点提示 ~ ~

回答2:

RTC就是Real-Time Clock,原理上说就是主板需要一个电池给南桥里的计时器和CMOS部分供电。同时也会给晶振供电使其发出实时时钟为时间提供基准计时

回答3:

你要先设置stm32 RTC 时间,网上有历程,在不断电情况下,RTC会自动跑,需要的时候就读取寄存器的信息