LCDMEM[1]=digit[(day)/10];
LCDMEM[2]=digit[(month)];
LCDMEM[3]=digit[(month)/10];
LCDMEM[4]=digit[year];
LCDMEM[5]=digit[(year/10)];
}
if(function_ping1==1)//天闪烁
{
if(twinkle_num==0)
{
LCDMEM[0]=digit[day];
LCDMEM[1]=digit[day/10];
}
else
{
LCDMEM[0]=0;
LCDMEM[1]=0;
}
LCDMEM[2]=digit[(month)];
LCDMEM[3]=digit[(month)/10];
LCDMEM[4]=digit[year];
LCDMEM[5]=digit[(year/10)];
}
if(function_ping1==2)//月闪烁
{
if(twinkle_num==0)
{
LCDMEM[2]=digit[(month)];
LCDMEM[3]=digit[(month)/10];
}
else
{
LCDMEM[2]=0;
LCDMEM[3]=0;
}
LCDMEM[0]=digit[day];
LCDMEM[1]=digit[day/10];
LCDMEM[4]=digit[year];
LCDMEM[5]=digit[(year/10)];
}
if(function_ping1==3)//年闪烁
{
if(twinkle_num==0)
{
LCDMEM[4]=digit[year];
LCDMEM[5]=digit[(year/10)];
}
else
{
LCDMEM[4]=0;
LCDMEM[5]=0;
}
LCDMEM[0]=digit[(day)];
LCDMEM[1]=digit[(day)/10];
LCDMEM[2]=digit[(month)];
LCDMEM[3]=digit[(month)/10];
}
}
if(change_ping==2)
{
if(function_ping3==0)//正常显示
{
LCDMEM[0]=digit[nao_sec];
LCDMEM[1]=digit[nao_sec/10];
LCDMEM[2]=digit[nao_min];
LCDMEM[3]=digit[nao_min/10];
LCDMEM[4]=digit[nao_hour];
LCDMEM[5]=digit[nao_hour/10];
}
if(function_ping3==1)//闹钟秒闪烁
{
if(twinkle_num==0)
{
LCDMEM[0]=digit[nao_sec];
LCDMEM[1]=digit[nao_sec/10];
}
else
{
LCDMEM[0]=0;
LCDMEM[1]=0;
}
LCDMEM[2]=digit[nao_min];
LCDMEM[3]=digit[nao_min/10];
LCDMEM[4]=digit[nao_hour];
LCDMEM[5]=digit[nao_hour/10];
}
if(function_ping3==2)//闹钟分闪烁
{
if(twinkle_num==0)
{
LCDMEM[2]=digit[nao_min];
LCDMEM[3]=digit[nao_min/10];
}
else
{
LCDMEM[2]=0;
LCDMEM[3]=0;
}
LCDMEM[0]=digit[nao_sec];
LCDMEM[1]=digit[nao_sec/10];
LCDMEM[4]=digit[nao_hour];
LCDMEM[5]=digit[nao_hour/10];
}
if(function_ping3==3)//闹钟小时闪烁
{
if(twinkle_num==0)
{
LCDMEM[4]=digit[nao_hour];
LCDMEM[5]=digit[nao_hour/10];
}
else
{
LCDMEM[4]=0;
LCDMEM[5]=0;
}
LCDMEM[0]=digit[nao_sec];
LCDMEM[1]=digit[nao_sec/10];
LCDMEM[2]=digit[nao_min];
LCDMEM[3]=digit[nao_min/10];
}
}
}
#pragmavector=BASICTIMER_VECTOR
__interruptvoidbasic_timer(void)
{
if(clock_flag==1)//闹钟存在
P1OUT^=BIT0;//LED闪烁
if(clock_flag==2)//闹钟清除
P1OUT&=~BIT0;//关闭LED
cnt++;//1s计数器加
if(cnt==4)//是否等于4
{
rtc();//秒加一
cnt=0;//清零
}
change_num++;//换屏计数器
twinkle_num=~twinkle_num;//闪烁标志位
if(change_num==60)//屏幕切换计数器到时复位
{
change_num=0;//
}
if(((change_num>0)&&(change_num20)||(change_num==0))||((ping_flag==1)&&(flag==1)))
{
if((ping_flag==1)&&(flag==1))//按键时在第一屏
{
change_num=20;//切换到第二屏
flag=0;//按键标志位清零
}
change_ping=0;//第一屏
num_flag=1;//屏切换标志位1
}
if(((change_num>20)&&(change_num40)||(change_num==20))||((ping_flag==2)&&(flag==1)))
{
if((ping_flag==2)&&(flag==1))//按键时在第二屏
{
change_num=40;//切换到第三屏
flag=0;
}
change_ping=1;//第二屏
num_flag=2;//屏切换标志位2
}
if(((change_num>40)&&(change_num60)||(change_num==40))||((ping_flag==3)&&(flag==1)))
{
if((ping_flag==3)&&(flag==1))//按键时在第二屏
{
change_num=0;//切换到第1屏
flag=0;
}
change_ping=2;//第三屏
num_flag=3;//屏切换标志位3
}
}