2019-07-25 12:20发布
dazalei 发表于 2016-9-28 19:53 哪里?
xuande 发表于 2016-6-10 09:50 不知道源码是什么样。 反正道理就是把新的时间写入对应的寄存器。 写之前应当先关闭,写入后再启动走时 ...
yyx112358 发表于 2016-6-10 11:43 设置完了之后需要启动rtc
最多设置5个标签!
http://www.openedv.com/thread-13912-1-1.html
不知道源码是什么样。
反正道理就是把新的时间写入对应的寄存器。
写之前应当先关闭,写入后再启动走时。
我想通过按键0来实现选择是改变年月日时分秒的其中一个(就像电子表那样),然后按键1没按一下让该选择的位加1。我试着用中断来写了,但按下按键时间就定在了按下的那一刻的时间,不知道是什么原因,是因为按键中断和rtc.c中的秒中断冲突吗?
while(1){
delay_ms(10);
if(WK_UP==1)
{ n=n+1;
if(n>6)
n=0;
switch(n)
{
case 1:
m=calendar.w_year;
break;
case 2:
m=calendar.w_month;
break;
case 3:
m=calendar.w_date;
break;
case 4:
m=calendar.hour;
break;
case 5:
m=calendar.min;
break;
case 6:
m=calendar.sec;
break;
}
l=n;
if(KEY0==0) {
m=m+1;
switch(l){
case 1:
RTC_Set(m,calendar.w_month,calendar.w_date,calendar.hour,calendar.min,calendar.sec);
break;
case 2:
RTC_Set(calendar.w_year,m,calendar.w_date,calendar.hour,calendar.min,calendar.sec);
break;
case 3:
RTC_Set(calendar.w_year,calendar.w_month,m,calendar.hour,calendar.min,calendar.sec);
break;
case 4:
RTC_Set(calendar.w_year,calendar.w_month,calendar.w_date,m,calendar.min,calendar.sec);
break;
case 5:
RTC_Set(calendar.w_year,calendar.w_month,calendar.w_date,calendar.hour,m,calendar.sec);
break;
case 6:
RTC_Set(calendar.w_year,calendar.w_month,calendar.w_date,calendar.hour,calendar.min,m);
break;
}
这样可以吗
启动rtc?rtc-_init()吗?
一周热门 更多>