⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shizhong.lst

📁 51单片机时钟+秒表程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
 322   6      										if(date==31&&(month==4||month==6||month==9||month==11))
 323   6      										   {
 324   7      										  	date=1;
 325   7      											month++;
 326   7      											if(month==13)
 327   7      											 {
 328   8      											   month=1;
 329   8      											   nian++;
 330   8      											   if(nian==100)
 331   8      											   nian=0;
 332   8      											   display1(2,nian);
 333   8      											 }
 334   7      											   if(e==0)
 335   7      											   display1(5,month);
 336   7      										  }
 337   6      										if(date==32)
 338   6      										  {
 339   7      										  	date=1;
 340   7      											month++;
 341   7      											if(month==13)
 342   7      											 {
 343   8      											   month=1;
 344   8      											   nian++;
 345   8      											   if(nian==100)
 346   8      											   nian=0;
 347   8      											   display1(2,nian);
 348   8      											  }
 349   7      											   if(e==0)
 350   7      											   display1(5,month);
 351   7      										  }
 352   6      										  if(e==0)
 353   6      										  {
 354   7      										  display1(8,date);
 355   7      										  xianshi(i);
 356   7      										  }
 357   6      									}
 358   5      								}
 359   4      								if(e==0)
 360   4      								display(3,hour);
 361   4      							 }
 362   3      						if(e==0)
 363   3      						display(6,minute);
 364   3      					}
C51 COMPILER V6.12  SHIZHONG                                                               06/07/2010 16:00:45 PAGE 7   

 365   2      				if(e==0)
 366   2      				display(9,second);
 367   2      		   }
 368   1      }
 369          
 370          
 371          /****************按键功能程序****************/
 372          void keyscan()
 373          {
 374   1      	 if(mod==0)
 375   1      		{
 376   2      			delay(10);
 377   2      			if(mod==0)
 378   2      			{
 379   3      				while(mod==0);				  //松手检测,必须
 380   3      				a++;
 381   3      				if(a==1)
 382   3      				{
 383   4      					TR1=0;
 384   4      					lcd_com(0x80+2);
 385   4      					lcd_com(0x0f);
 386   4      				}
 387   3      				if(a==2)
 388   3      				{
 389   4      					lcd_com(0x80+5);
 390   4      					lcd_com(0x0f);
 391   4      				}
 392   3      				if(a==3)
 393   3      				{
 394   4      					lcd_com(0x80+8);
 395   4      					lcd_com(0x0f);
 396   4      				}
 397   3      				if(a==4)
 398   3      				{
 399   4      					lcd_com(0x80+12);
 400   4      					lcd_com(0x0f);
 401   4      				}
 402   3      				if(a==5)
 403   3      				{
 404   4      					lcd_com(0x80+0x40+3);
 405   4      					lcd_com(0x0f);
 406   4      				}
 407   3      				if(a==6)
 408   3      				{
 409   4      					lcd_com(0x80+0x40+6);
 410   4      					lcd_com(0x0f);
 411   4      				}
 412   3      				if(a==7)
 413   3      				{
 414   4      					lcd_com(0x80+0x40+9);
 415   4      					lcd_com(0x0f);
 416   4      				}
 417   3      				if(a>=8)
 418   3      				{
 419   4      				a=0;
 420   4      				TR1=1;
 421   4      				lcd_com(0x0c);
 422   4      				}
 423   3      			}
 424   2      		}
 425   1      	if(clo==0)
 426   1      		{
C51 COMPILER V6.12  SHIZHONG                                                               06/07/2010 16:00:45 PAGE 8   

 427   2      			delay(10);
 428   2      			if(clo==0)
 429   2      			{
 430   3                                                                                                                
             -                      				while(clo==0);				  //松手检测,必须
 431   3      				e++;
 432   3      				if(e==1)
 433   3      				{
 434   4      					lcd_com(0x01);
 435   4      					lcd_com(0x80);
 436   4      					for(num1=0;num1<8;num1++)
 437   4      					{
 438   5      						  lcd_dat(table1[num1]);
 439   5      					}
 440   4      					lcd_com(0x80);
 441   4      					lcd_com(0x0f);
 442   4      				}
 443   3      				if(e==2)
 444   3      				{
 445   4      					lcd_com(0x80+3);
 446   4      					lcd_com(0x0f);
 447   4      				}
 448   3      				if(e==3)
 449   3      				{
 450   4      					lcd_com(0x80+6);
 451   4      					lcd_com(0x0f);
 452   4      				}
 453   3      				if(e>=4)
 454   3      				{
 455   4      				e=0;
 456   4      				lcd_com(0x0c);
 457   4      				lcd_com(0x01);
 458   4      				lcd_com(0x80);
 459   4      				for(num=0;num<15;num++)
 460   4      					{
 461   5      						  lcd_dat(table[num]);
 462   5      					}
 463   4      				lcd_com(0x80+0x43);
 464   4      				for(num1=0;num1<8;num1++)
 465   4      					{
 466   5      						  lcd_dat(table1[num1]);
 467   5      					}
 468   4      				display1(2,nian);
 469   4      				display1(5,month);
 470   4      				display1(8,date);
 471   4      				display(3,hour);
 472   4      				display(6,minute);
 473   4      				display(9,second);
 474   4      				xianshi(i);
 475   4      				}
 476   3      			}
 477   2      		}
 478   1      	if(e!=0)
 479   1      	{
 480   2      		if(add==0)
 481   2      		{
 482   3      			delay(10);
 483   3      			if(add==0)
 484   3      			{
 485   4      				while(add==0);
 486   4      				if(e==1)
 487   4      				{
C51 COMPILER V6.12  SHIZHONG                                                               06/07/2010 16:00:45 PAGE 9   

 488   5      					hour2++ ;
 489   5      					if(hour2==24)
 490   5      					hour2=0;
 491   5      					display1(0,hour2);
 492   5      				}
 493   4      				if(e==2)
 494   4      					{
 495   5      						minute2++;
 496   5      						if(minute2==60)
 497   5      						minute2=0;
 498   5      						display1(3,minute2);
 499   5      					}
 500   4      				if(e==3)
 501   4      					{
 502   5      						second2++ ;
 503   5      						if(second2==60)
 504   5      						second2=0;
 505   5      						display1(6,second2);
 506   5      					}
 507   4      			}
 508   3      		}
 509   2      	}		
 510   1      	if(a!=0)
 511   1      	{
 512   2      		if(add==0)
 513   2      		{
 514   3      			delay(10);
 515   3      			if(add==0)
 516   3      			{
 517   4      				while(add==0);
 518   4      				if(a==1)
 519   4      				{
 520   5      					nian++;
 521   5      					if(nian==100)
 522   5      					nian=0;
 523   5      					display1(2,nian);
 524   5      				}
 525   4      				if(a==2)
 526   4      				{
 527   5      					month++;
 528   5      					if(month==13)
 529   5      					month=1;
 530   5      				    display1(5,month);
 531   5      				}
 532   4      				if(a==3)
 533   4      				{
 534   5      					date++;
 535   5      					if(date==32)
 536   5      					date=1;
 537   5      				    display1(8,date);
 538   5      				}
 539   4      				if(a==4)
 540   4      				{
 541   5      					i++;
 542   5      					if(i==7)
 543   5      					i=0;
 544   5      					xianshi(i);
 545   5      				}
 546   4      				if(a==5)
 547   4      				{
 548   5      					hour++ ;
 549   5      					if(hour==24)
C51 COMPILER V6.12  SHIZHONG                                                               06/07/2010 16:00:45 PAGE 10  

 550   5      					hour=0;
 551   5      					display(3,hour);
 552   5      				}
 553   4      				if(a==6)
 554   4      					{
 555   5      						minute++;
 556   5      						if(minute==60)
 557   5      						minute=0;
 558   5      						display(6,minute);
 559   5      					}
 560   4      				if(a==7)
 561   4      					{
 562   5      						second++ ;
 563   5      						if(second==60)
 564   5      						second=0;
 565   5      						display(9,second);
 566   5      					}
 567   4      			}
 568   3      		}
 569   2      	}		
 570   1      	if(swi==0)
 571   1      	{
 572   2      		delay(10);
 573   2      		if(swi==0)
 574   2      		{
 575   3      			while(swi==0);
 576   3      			b++;
 577   3      			if(b>=2)
 578   3      			{
 579   4      				b=0;
 580   4      			}
 581   3      		}
 582   2      	}
 583   1      	if(sec==0)
 584   1      	{
 585   2      		delay(10);
 586   2      		if(sec==0)
 587   2      		{
 588   3      			while(sec==0);
 589   3      			d++;
 590   3      			if(d==1)
 591   3      			{
 592   4      				TR1=0;
 593   4      				lcd_com(0x01);
 594   4      				lcd_com(0x80);
 595   4      				for(num1=0;num1<8;num1++)
 596   4      				{
 597   5      					  lcd_dat(table1[num1]);
 598   5      				}
 599   4      			}
 600   3      			if(d==2)
 601   3      			{
 602   4      				TR0=1;
 603   4      			}
 604   3      			if(d==3)
 605   3      			{
 606   4      				TR0=0;
 607   4      			}
 608   3      			if(d>=4)
 609   3      			{
 610   4      				d=0;
 611   4      				lowsec1=0;
C51 COMPILER V6.12  SHIZHONG                                                               06/07/2010 16:00:45 PAGE 11  

 612   4      				second1=0;
 613   4      				higsec1=0;
 614   4      				TR1=1;
 615   4      				lcd_com(0x01);
 616   4      				lcd_com(0x80);
 617   4      				for(num=0;num<15;num++)
 618   4      					{
 619   5      						  lcd_dat(table[num]);
 620   5      					}
 621   4      				lcd_com(0x80+0x43);
 622   4      				for(num1=0;num1<8;num1++)
 623   4      					{
 624   5      						  lcd_dat(table1[num1]);
 625   5      					}
 626   4      				display1(2,nian);
 627   4      				display1(5,month);
 628   4      				display1(8,date);
 629   4      				display(3,hour);
 630   4      				display(6,minute);
 631   4      				display(9,second);
 632   4      				xianshi(i);
 633   4      			}
 634   3      		}
 635   2      	}	 
 636   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1948    ----
   CONSTANT SIZE    =     64    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     24       4
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -