📄 retime.c
字号:
{
day_unitstore=0;
++day_decastore;
}
}
else if(day_numj==0)
{
day_numj=31;
day_unitstore=1;
day_decastore=0;
}
}
else if((month_unitstore|0xfe)!=0xff) //是偶数月,日为30天
{
if(month_unitstore==2) //是二月
{
if((--day_numo)!=0) //天数加到28?
{
if((++day_unitstore)==10)
{
day_unitstore=0;
++day_decastore;
}
}
else if(day_numo==0) //天数已经加到28
{
if(day_numoo==28)
{
day_numo=28;
day_unitstore=1;
day_decastore=0;
}
else if(day_numoo==29)
{
day_numo=29;
day_unitstore=1;
day_decastore=0;
}
}
}
else if(month_unitstore!=2) //不是二月
{
if((--day_numo)!=0)
{
if((++day_unitstore)==10)
{
day_unitstore=0;
++day_decastore;
}
}
else if(day_numo==0)
{
day_numo=30;
day_unitstore=1;
day_decastore=0;
}
}
}
}
else if(sixth_sure) //第六次按下确认键,倒计时位加
{
if((++retime_ustore)==10)
{
retime_ustore=0;
if((++retime_dstore)==10)
{
retime_dstore=0;
if((++retime_hstore)==10)
{
retime_hstore=0;
if((++retime_tstore)==10)retime_tstore=0;
}
}
}
}
}
/*******************************
减一键子程序
*******************************/
void dec_key(void)
{
if(first_sure) //第一次按下确认键,小时位减
{
if(shi_num!=24)
{
++shi_num;
if((--xiaoshi_ge)==255)
{
xiaoshi_ge=9;
if((--xiaoshi_shi)==255)
{
xiaoshi_shi=2;
xiaoshi_ge=3;
}
}
}
else if(shi_num==24)
{
shi_num=1;
xiaoshi_ge=3;
xiaoshi_shi=2;
}
}
else if(second_sure) //第二次按下确认键,分钟位减
{
if((--fenzhong_ge)==255)
{
fenzhong_ge=9;
if((--fenzhong_shi)==255)
{
fenzhong_shi=5;
}
}
}
else if(third_sure) //第三次按下确认键,年位减
{
if((--year_unitstore)==255)
{
year_unitstore=9;
if((--year_decastore)==255)
{
year_decastore=9;
if((--year_hundstore)==255)
{
year_hundstore=9;
if((--year_thoustore)==255)
{
year_thoustore=9;
}
}
}
}
}
else if(fourth_sure) //第四次按下确认键,月位减
{
if(month_num!=12)
{
++month_num;
if((--month_unitstore)==255)
{
month_unitstore=9;
--month_decastore;
}
}
else if(month_num==12)
{
month_num=1;
month_unitstore=2;
month_decastore=1;
}
}
else if(fifth_sure) //第五次按下确认键,日位减
{
if((month_unitstore|0xfe)==0xff) //是奇数月,日为31天
{
if((day_numj)!=31)
{
++day_numj;
if((--day_unitstore)==255)
{
day_unitstore=9;
--day_decastore;
}
}
else if(day_numj==31)
{
day_numj=1;
day_unitstore=1;
day_decastore=3;
}
}
else if((month_unitstore|0xfe)!=0xff) //是偶数月,日为30天
{
if(
month_unitstore==2) //是二月
{
if(day_numo!=day_numoo)
{
++day_numo;
if((--day_unitstore)==255)
{
day_unitstore=9;
--day_decastore;
}
}
else if(day_numo==day_numoo)
{
if(day_numoo==28)
{
day_numo=1;
day_unitstore=8;
day_decastore=2;
}
else if(day_numoo==29)
{
day_numo=1;
day_unitstore=9;
day_decastore=2;
}
}
}
else if(month_unitstore!=2) //不是二月
{
if(day_numooo!=30)
{
++day_numooo;
day_numo=day_numooo;
if((--day_unitstore)==255)
{
day_unitstore=9;
--day_decastore;
day_numo=day_numooo;
}
}
else if(day_numooo==30)
{
day_numooo=1;
day_unitstore=0;
day_decastore=3;
day_numo=day_numooo;
}
}
}
}
else if(sixth_sure) //第六次按下确认键,倒计时位减
{
if((--retime_ustore)==255)
{
retime_ustore=9;
if((--retime_dstore)==255)
{
retime_dstore=9;
if((--retime_hstore)==255)
{
retime_hstore=9;
if((--retime_tstore)==255)retime_tstore=9;
}
}
}
}
}
/*******************************
年位闪烁子程序
*******************************/
void year_flash(void)
{
unsigned char i;
if(third_sure)
{
year_thoustore=year_thousand;
year_hundstore=year_hundred;
year_decastore=year_decade;
year_unitstore=year_unit;
while(third_sure)
{
for(i=0;i<18;i++) //年位不显示,其它位都显示
{
year_thousand=10;
year_hundred=10;
year_decade=10;
year_unit=10;
fen_ge=fenzhong_ge;
fen_shi=fenzhong_shi;
display();
kbscan();
if(!third_sure)i=51; //如果不满足立即跳出
}
if(third_sure)
{
for(i=0;i<18;i++) //年位和其它位都显示
{
year_thousand=year_thoustore;
year_hundred=year_hundstore;
year_decade=year_decastore;
year_unit=year_unitstore;
fen_ge=fenzhong_ge;
fen_shi=fenzhong_shi;
display();
kbscan();
if(!third_sure)i=51; //如果不满足立即跳出
}
}
}
}
}
/*******************************
月位闪烁子程序
*******************************/
void month_flash(void)
{
unsigned char i;
if(TR0==0) //为日位润平年二月天数做准备
{
day_numo=judgement_leap();
day_numoo=day_numo;
}
if(fourth_sure)
{
month_unitstore=month_unit;
month_decastore=month_decade;
while(fourth_sure)
{
for(i=0;i<18;i++)
{
month_unit=10;
month_decade=10;
year_thousand=year_thoustore; //送原始数据避免取到不显示数据
year_hundred=year_hundstore;
year_decade=year_decastore;
year_unit=year_unitstore;
display();
kbscan();
if(!fourth_sure)i=51;
}
if(fourth_sure)
{
for(i=0;i<18;i++)
{
month_unit=month_unitstore;
month_decade=month_decastore;//送原始数据避免取到不显示数据
year_thousand=year_thoustore;
year_hundred=year_hundstore;
year_decade=year_decastore;
year_unit=year_unitstore;
display();
kbscan();
if(!fourth_sure)i=51;
}
}
}
}
}
/*******************************
日位闪烁子程序
*******************************/
void day_flash(void)
{
unsigned char i;
if(fifth_sure)
{
day_unitstore=day_unit;
day_decastore=day_decade;
while(fifth_sure)
{
for(i=0;i<18;i++)
{
day_unit=10;
day_decade=10;
month_unit=month_unitstore; //送原始数据避免取到不显示数据
month_decade=month_decastore;
year_thousand=year_thoustore;
year_hundred=year_hundstore;
year_decade=year_decastore;
year_unit=year_unitstore;
display();
kbscan();
if(!fifth_sure)i=51;
}
if(fifth_sure)
{
for(i=0;i<18;i++)
{
day_unit=day_unitstore;
day_decade=day_decastore;
month_unit=month_unitstore; //送原始数据避免取到不显示数据
month_decade=month_decastore;
year_thousand=year_thoustore;
year_hundred=year_hundstore;
year_decade=year_decastore;
year_unit=year_unitstore;
display();
kbscan();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -