Current location - Plastic Surgery and Aesthetics Network - Plastic surgery and medical aesthetics - Simulation of traffic light control at intersection based on microcontroller
Simulation of traffic light control at intersection based on microcontroller

include?//

#define?uint?unsigned?int//Macro definition

#define?uchar?unsigned?char //Macro definition

sbit?xg=P3^0;?//Bit definition

sbit?xy=P3^1;

sbit?xr= P3^2;

sbit?yg=P3^3;

sbit?yy=P3^4;

sbit?yr=P3^5;< /p>

sbit?led1=P2^0;?

sbit?led2=P2^1;

uint?mun,sun;?//16-bit integer variable

uchar?x,y,z,aa,bb;?//8-bit character variable

uchar?tab[]=

{0x3F, 0x06,0x5B,0x4F,0x66,

0x6D,0x7D,0x07,0x7F,0x6F,0x3f};

void?init();

void? outled();

void?delay();

void?main()//main function

{?init();

while(1)

{ for(y=6;y!=3;outled()?)

{yy=0;yr=0;xg=0 ;xy=0;xr=1;yg=1;}? for(y=3;y!=0;outled())

{/*xr=!xr;*/yy=1 ;yg=0;} for(y=9;y!=3;outled()) {?yy=0;?xr=0;?yr=1;xg=1;}? for(y=3;y !=0;outled())

{/*yr=!yr;*/xy=1;xg=0;} }?

}

void?delay()//Delay sub-function

{ for(x=255;x>0;x--);

}?

void?init?()//Timed interrupt initialization

{ TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0= 1;

TR0=1;

}

void?timer0()?interrupt?1//Interrupt timing function

{ TH0=(65536-50000)/256; TL0=(65536-50000)%256;

z++;

if(z==20) {z=0;?if (y>0)?{y--;} }

}

void?outled()?//Display sub-function

{? aa= y/10; bb=y%10; P0=tab[bb]; led1=0; delay(); led1=1; P0=tab[aa]; led2=0; delay(); led2=1;

}

/The program is written in C language, and the circuit diagram is as shown in the attached picture. If you are satisfied, don’t forget to give it a rating!!