金牌会员
 
- 积分
- 1238
- 金钱
- 1238
- 注册时间
- 2013-1-9
- 在线时间
- 121 小时
|

楼主 |
发表于 2016-9-14 07:07:56
|
显示全部楼层
把RTC的实验例程稍作修改,取消RTC中断,用按键修改calendar.w_month,while循环中不停获取新的时间,是同样的现象,时间按照修改后的时间走,RESET后又恢复以前的时间。
while(1)
{
Key_Num = KEY_Scan(0);
RTC_Get();//更新时间
if(t!=calendar.sec)
{
t=calendar.sec;
LCD_ShowNum(60,130,calendar.w_year,4,16);
LCD_ShowNum(100,130,calendar.w_month,2,16);
LCD_ShowNum(124,130,calendar.w_date,2,16);
switch(calendar.week)
{
case 0:
LCD_ShowString(60,148,200,16,16,"Sunday ");
break;
case 1:
LCD_ShowString(60,148,200,16,16,"Monday ");
break;
case 2:
LCD_ShowString(60,148,200,16,16,"Tuesday ");
break;
case 3:
LCD_ShowString(60,148,200,16,16,"Wednesday");
break;
case 4:
LCD_ShowString(60,148,200,16,16,"Thursday ");
break;
case 5:
LCD_ShowString(60,148,200,16,16,"Friday ");
break;
case 6:
LCD_ShowString(60,148,200,16,16,"Saturday ");
break;
}
LCD_ShowNum(60,162,calendar.hour,2,16);
LCD_ShowNum(84,162,calendar.min,2,16);
LCD_ShowNum(108,162,calendar.sec,2,16);
LED0=!LED0;
}
delay_ms(10);
switch(Key_Num)
{
case 2: calendar.w_month = calendar.w_month-1;break;
case 4: calendar.w_month = calendar.w_month+1;break;
}
}
|
|