有四个状态0,1,2,3
数码管为2位7段共阳数码管,可以通过修改i,j的值进而修改倒计时的长短。
不当地方,敬请批评指正!

   图一:十字路口交通灯

  图二:状态0
  绿灯:0x42
   红灯:0xbd

  图三:状态1
  绿灯:0x25
 红灯:0xda

  图四:状态2
  绿灯:0x90
  红灯:0x6f

   图五:状态3
  绿灯:0x2c
  红灯:0xd3


#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit ge=P0^6;
sbit shi=P0^7;
sbit d0=P0^0;
sbit d1=P0^1;
sbit d2=P0^2;
void delay(uint z)
{
 uint x,y;
 for(x=z;x>0;x--)
 for(y=113;y>0;y--);
}
void shu0()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=0;
 d1=0;
 d2=1;
 delay(1);
 d0=1;
 d1=0;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu1()
{
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu2()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=0;
 d1=0;
 d2=1;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu3()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu4()
{
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=1;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu5()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=1;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu6()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=0;
 d1=0;
 d2=1;
 delay(1);
 d0=1;
 d1=0;
 d2=1;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu7()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void shu8()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=0;
 d1=0;
 d2=1;
 delay(1);
 d0=1;
 d1=0;
 d2=1;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
}
void shu9()
{
 d0=0;
 d1=0;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=0;
 delay(1);
 d0=0;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=1;
 d2=0;
 delay(1);
 d0=1;
 d1=0;
 d2=1;
 delay(1);
 d0=0;
 d1=1;
 d2=1;
 delay(1);
 _nop_();
 _nop_();
 _nop_();
 delay(1);
}
void display(uchar p)
{
 switch(p)
 {
 case 0:shu0();break;
 case 1:shu1();break;
 case 2:shu2();break;
 case 3:shu3();break;
 case 4:shu4();break;
 case 5:shu5();break;
 case 6:shu6();break;
 case 7:shu7();break;
 case 8:shu8();break;
 case 9:shu9();break;
 }
}
void chushihua()
{
 ge=0;
 shi=0;
}
void main()
{
 uchar p,m,n,i,j;
 chushihua();
 i=9;  //状态0
 j=3;
 while(1)
 {
 n=76;
 while(n)
 {
 n--;
 P1=0x42;
 P2=0xbd;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(i==0x00)
 {
 i=0x0a;
 j=j-1;
 }
 while(j==0x00&&i<=0x03)
 {
 while(1)
 {
 m=40;
 while(m)
 {
 m--;
 P1=0x00;
 P2=0xbd;
 P3=0x42;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 p=40;
 while(p)
 {
 p--;
 P1=0x00;
 P2=0xbd;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(j==0x00&&i==0x00)
 {
 i=9;//状态1
 j=2;
 while(1)
 {
 n=76;
 while(n)
 {
 n--;
 P1=0x25;
 P2=0xda;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(i==0x00)
 {
 i=0x0a;
 j=j-1;
 }
 while(j==0x00&&i<=0x03)
 {
 while(1)
 {
 m=40;
 while(m)
 {
 m--;
 P1=0x00;
 P2=0xda;
 P3=0x25;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 p=40;
 while(p)
 {
 p--;
 P1=0x00;
 P2=0xda;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(j==0x00&&i==0x00)
 {
 i=9;  //状态2
 j=3;
 while(1)
 {
 n=76;
 while(n)
 {
 n--;
 P1=0x90;
 P2=0x6f;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(i==0x00)
 {
 i=0x0a;
 j=j-1;
 }
 while(j==0x00&&i<=0x03)
 {
 while(1)
 {
 m=40;
 while(m)
 {
 m--;
 P1=0x00;
 P2=0x6f;
 P3=0x90;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 p=40;
 while(p)
 {
 p--;
 P1=0x00;
 P2=0x6f;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(j==0x00&&i==0x00)
 {
 i=9; //状态3
 j=2;
 while(1)
 {
 n=76;
 while(n)
 {
 n--;
 P1=0x2c;
 P2=0xd3;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(i==0x00)
 {
 i=0x0a;
 j=j-1;
 }
 while(j==0x00&&i<=0x03)
 {
 while(1)
 {
 m=40;
 while(m)
 {
 m--;
 P1=0x00;
 P2=0xd3;
 P3=0x2c;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 p=40;
 while(p)
 {
 p--;
 P1=0x00;
 P2=0xd3;
 P3=0x00;
 ge=1;
 display(i);
 ge=0;
 shi=1;
 display(j);
 shi=0;
 }
 if(j==0x00&&i==0x00)
 {
 return;
 }
 i--;
 }
 }
 i--;
 }
 }
 i--;
 }
 }
 i--;
 }
 }
 i--;
 }
 }
 i--;
 }
 }
 i--;
 }
 }
 i--;
 }
}
				
				
								数码管为2位7段共阳数码管,可以通过修改i,j的值进而修改倒计时的长短。
不当地方,敬请批评指正!







#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit ge=P0^6;
sbit shi=P0^7;
sbit d0=P0^0;
sbit d1=P0^1;
sbit d2=P0^2;
void delay(uint z)
{
}
void shu0()
{
}
void shu1()
{
}
void shu2()
{
}
void shu3()
{
}
void shu4()
{
}
void shu5()
{
}
void shu6()
{
}
void shu7()
{
}
void shu8()
{
}
void shu9()
{
}
void display(uchar p)
{
}
void chushihua()
{
}
void main()
{
}

                
APP下载
登录
                                



                                    
                                    
                                    
                                
                                    
                                
                                    
                                
                                    
                                
热门文章
                    
                            
                            
                            
                            
                            
                            
                            


