基于c51功能最全的电子钟程序lcd1602(编辑修改稿)内容摘要:

har(6,1,timestr[4])。 LCD_write_mand(0xc0+6)。 13 while(!key3)。 } } break。 case 3: if(0 == key2) //时加 1 的设置 { Delay1Ms(5)。 if(0 == key2) { hour++。 while(!key2)。 if(24 == hour) { hour = 0。 } timestr[1] = hour%10+39。 039。 timestr[0] = hour/10+39。 039。 LCD_write_char(2,1,timestr[0])。 LCD_write_char(3,1,timestr[1])。 LCD_write_mand(0xc0+3)。 } } if(0 == key3) //时减 1 的设置 { Delay1Ms(5)。 if(0 == key3) { while(!key3)。 hour。 if(hour 0) { hour = 23。 } timestr[1] = hour%10+39。 039。 timestr[0] = hour/10+39。 039。 LCD_write_char(2,1,timestr[0])。 LCD_write_char(3,1,timestr[1])。 LCD_write_mand(0xc0+3)。 } } break。 14 case 4: if(0 == key2) //日加 1 的设置 { Delay1Ms(5)。 if(0 == key2) { while(!key2)。 calculate = 1。 if(calculate == 1) { if(month==1|month==3|month==5|month==7|month==8|month==10|month==12) { day++。 if(day 31) { day=1。 } } if(month==4|month==6|month==9|month==11) { day++。 if(day 30) { day=1。 } } if(month == 2) { cal_year = 1。 while(cal_year == 1) { leap_year = ((year % 4 == 0 amp。 amp。 year % 100 != 0)||(year % 400 == 0))。 cal_year = 0。 } if(leap_year==1) { day++。 if(day 30) { day=1。 } 15 } else { day++。 if(day 29) { day=1。 } } } calculate = 0。 } daystr[9] = day%10+39。 039。 daystr[8] = day/10+39。 039。 LCD_write_char(10,0,daystr[8])。 LCD_write_char(11,0,daystr[9])。 LCD_write_mand(0x80+11)。 } } if(0 == key3) //日减 1 的设置 { Delay1Ms(5)。 if(0 == key3) { while(!key3)。 calculate = 1。 if(calculate == 1) { if(month==1|month==3|month==5|month==7|month==8|month==10|month==12) { day。 if(day == 0) { day=31。 } } if(month==4|month==6|month==9|month==11) { day。 if(day == 0) { 16 day=30。 } } if(month == 2) { cal_year = 1。 while(cal_year == 1) { leap_year = ((year % 4 == 0 amp。 amp。 year % 100 != 0)||(year % 400 == 0))。 cal_year = 0。 } if(leap_year==1) { day。 if(day == 0) { day=30。 } } else { day。 if(day == 0) { day=29。 } } } calculate = 0。 } daystr[9] = day%10+39。 039。 daystr[8] = day/10+39。 039。 LCD_write_char(10,0,daystr[8])。 LCD_write_char(11,0,daystr[9])。 LCD_write_mand(0x80+11)。 } } break。 case 5: if(0 == key2) //月加 1 的设置 { 17 Delay1Ms(5)。 if(0 == key2) { while(!key2)。 month++。 if(13 == month) { month = 1。 } daystr[6] = month%10+39。 039。 daystr[5] = month/10+39。 039。 LCD_write_char(7,0,daystr[5])。 LCD_write_char(8,0,daystr[6])。 LCD_write_mand(0x80+8)。 } } if(0 == key3) //月减 1 的设置 { Delay1Ms(5)。 if(0 == key3) { while(!key3)。 month。 if(month == 0) { month = 12。 } daystr[6] = month%10+39。 039。 daystr[5] = month/10+39。 039。 LCD_write_char(7,0,daystr[5])。 LCD_write_char(8,0,daystr[6])。 LCD_write_mand(0x80+8)。 } } break。 case 6: if(0 == key2) //年加 1 的设置 { Delay1Ms(5)。 if(0 == key2) { while(!key2)。 18 year++。 } daystr[3] = year%10+39。 039。 daystr[2] = year/10%10+39。 039。 daystr[1] = year/100%10+39。 039。 daystr[0] = year/1000+39。 039。 LCD_write_char(2,0,daystr[0])。 LCD_write_char(3,0,daystr[1])。 LCD_write_char(4,0,daystr[2])。 LCD_write_char(5,0,daystr[3])。 LCD_write_mand(0x80+5)。 } if (0 == key3) //年减 1 的设置 { Delay1Ms(5)。 if(0 == key3) { while(!key3)。 year。 if(year == 0) { year = 2020。 } daystr[3] = year%10+39。 039。 daystr[2] = year/10%10+39。 039。 daystr[1] = year/100%10+39。 039。 daystr[0] = year/1000+39。 039。 LCD_write_char(2,0,daystr[0])。 LCD_write_char(3,0,daystr[1])。 LCD_write_char(4,0,daystr[2])。 LCD_write_char(5,0,daystr[3])。 LCD_write_mand(0x80+5)。 } } break。 case 7: if(0 == key2) //星期加 1 的设置 { Delay1Ms(5)。 if。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。