delaynms(30); if(miu==0) {
while(!miu); bcd_dec(1,min); min--;
if(min==-1)min=59;
write_DS1307(1,dec_bcd(min)); } } }
if(a==3) {
if(add==0) {
delaynms(30); if(add==0) {
while(!add); bcd_dec(2,hour); hour++;
if(hour==24)hour=0;
write_DS1307(2,dec_bcd(hour)); } }
if(miu==0) {
delaynms(30); if(miu==0) {
while(!miu); bcd_dec(2,hour); hour--;
if(hour==-1)hour=23;
write_DS1307(2,dec_bcd(hour)); } } }
if(a==4) {
if(add==0) {
delaynms(30); if(add==0)
{
while(!add);
bcd_dec(3,week); week++; if(week==8)week=1; write_DS1307(3,dec_bcd(week)); } }
if(miu==0) {
delaynms(30); if(miu==0) {
while(!miu); bcd_dec(3,week); week--;
if(week==0)week=7;
write_DS1307(3,dec_bcd(week)); } } }
if(a==5) {
if(add==0) {
delaynms(30); if(add==0) {
while(!add); bcd_dec(4,day); day++;
if(day==32)day=1;
write_DS1307(4,dec_bcd(day)); } }
if(miu==0) {
delaynms(30); if(miu==0) {
while(!miu);bcd_dec(4,day); day--;
if(day==0)day=31;
write_DS1307(4,dec_bcd(day)); } } }
if(a==6) {
if(add==0) {
delaynms(30); if(add==0) {
while(!add);
bcd_dec(5,month); month++; if(month==13)month=1; write_DS1307(5,dec_bcd(month)); } }
if(miu==0) {
delaynms(30); if(miu==0) {
while(!miu);bcd_dec(5,month); month--;
if(month==0)month=12;
write_DS1307(5,dec_bcd(month)); } } }
if(a==7) {
if(add==0) {
delaynms(30); if(add==0) {
while(!add); bcd_dec(6,year); year++; if(year==99)year=0; write_DS1307(6,dec_bcd(year)); } }
if(miu==0) {
delaynms(30); if(miu==0) {
while(!miu); year--;
if(year==-1)year=99; bcd_dec(6,year);
write_DS1307(6,dec_bcd(year)); } } } READ_DS1307(0,7);//读DS1307 }
//====闹钟按键设置 else if(M==2) { f++; flag=1; if(f==1) { a=0; LCD_WRITE(LINE2+1,COM);//显示上次闹铃时间 BCD(hourt); LCD_WRITE(SW+'0',DAT); LCD_WRITE(GW+'0',DAT); LCD_WRITE(LINE2+4,COM); BCD(mint); LCD_WRITE(SW+'0',DAT); LCD_WRITE(GW+'0',DAT); LCD_WRITE(LINE2+7,COM); BCD(sect); LCD_WRITE(SW+'0',DAT); LCD_WRITE(GW+'0',DAT); }
if(set==0) //设置时间 {
delaynms(30); if(set==0) {
while(!set);
a++; if(a==4) a=0; } }
guangbiao();//光标定位,闪烁 if(a==1) {
if(add==0) {
delaynms(30); if(add==0) {
while(!add); sect++; if(sect==60) sect=0; BCD(sect); LCD_WRITE(LINE2+7,COM); LCD_WRITE(SW+0x30,DAT); LCD_WRITE(GW+0x30,DAT); } }
if(miu==0) {
delaynms(30); if(miu==0) {
while(!miu);
sect--;
if(sect==-1)sect=59; BCD(sect); LCD_WRITE(LINE2+7,COM); LCD_WRITE(SW+0x30,DAT); LCD_WRITE(GW+0x30,DAT); } } }
if(a==2) {
if(add==0) {
//显示十位//显示个位//显示十位//显示个位