标题: 单片机电子时钟 从00:00:00到24:00:00 [打印本页]

作者: qwexzr    时间: 2020-6-1 09:55
标题: 单片机电子时钟 从00:00:00到24:00:00
功能:程序启动时显示“00:00:00”,以后每隔1秒显示值加1。显示到23:59:59后,自动从“00”开始,如此无限往复 。
protues仿真图:
附件: 3.rar (47.87 KB, 下载次数: 9)

代码如下:
  1. #include <reg51.h>
  2. sbit P0_0=P0^0;
  3. unsigned char SEG[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
  4. unsigned char count=0,start=0;

  5. void delay(unsigned int time){
  6.           unsigned int j=0;
  7.           for(time=time;time>0;time--)
  8.              for(j=0;j<125;j++);
  9. }

  10. void LED() interrupt 0 {
  11.         P0_0=!P0_0;
  12. }
  13.         

  14. void SEG7() interrupt 2
  15.         {
  16.         count =count+1;
  17.         start=1;
  18.         if(count>99)
  19.                 count=1;
  20. }

  21. void main(){
  22.         unsigned char seg1=0,seg2=0;

  23.   P1=0x00;
  24.         P2=0xff;
  25.         TCON=0x05;
  26.         EA=1;
  27.         EX1=1;
  28.         EX0=1;
  29.         
  30. while(1){
  31.         
  32.         while (start==1)
  33.         {
  34.                 seg1=count%10;
  35.                 P1=0x02;
  36.                 P2=SEG[seg1];
  37.           delay(20);
  38.                
  39.                 seg2=count/10;
  40.                 P1=0x01;
  41.                 P2=SEG[seg2];
  42.                 delay(20);        
  43.         }
  44. }
  45. }
  46.         
复制代码








欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1