《51单片机实现简单交通灯》由会员分享,可在线阅读,更多相关《51单片机实现简单交通灯(14页珍藏版)》请在金锄头文库上搜索。
1、incudc#deline uint unsigned ini #dcfine uchar unsigned char sbil MR二PP3;sbit MY=P1A4;sbit MG二Pl巧;sbit SR=PIAO;sbitSY=PlAl;sbit SG=PlA2;uchar code du_code| |=Ox3F,Ox06,Ox5B,Ox4FTOx66J)x6D,Ox7DJ)x07,Ox7F1Ox6F;# / 14uchar num;uchar second20=20, second 12=12, second4=4; bit flag=O;void delayms(uint x)ui
2、nt y;for(;x0;x)for(y=l 10;y0;y);void initial()TMOD=OxO I;TH0=(65536-50000 )/256;TL0=(65536-50000)%256;EA=I;ETO二1;TRO=1;void state 1 ()while(second20)MR=1;MY=1;MG=O;SR=O;SY=I;SG=1;if(flag=l) llag=O;second20-;卩 2=0x re;PO=du_code second20/10; delayms(2);P2=0xfd;P0=du_codesecond20% 10;delayms 2);P2=0xf
3、b;PO=du_code (second20+4)/10; delayms(2);P2=0xf7;P0=du_code(second20+4)% IOJ; delayms12); second20-2();void state2()while second4)MR=1;MY=O;MG=1;SY=1;SG=1; if(llag=l iSR=SR;tlag=O; second4;P2=0xfc;P0=du_codesecond4/10;delayms(2);P2=0xfd;P0=du_codesecond4% IOJ;delayms(2);P2=0xfb;P0=du_codesecond4/10;
4、 dclayms(2);P2=0x 门;P0=ducode| second4% 10;delayms(2sccond4=4;void statc3( |whiles second 12)MR=0;MY=1;MG=1;SR=1;SY=1;SG=0;if(flag=l)flag=0; second 12;# / 14P2=0xfe;PO=du_code (second 12+4)/10;dclayms(2);P2=0xfd;P0=du_code(second 12+4)% 10; dclayms(2);P2=0xfb;P0=du_codel second 12/10; delayms(2);P2=
5、0xf7;P0=du_code second 12% 10; delay ms (2);second 12= 12;void slatc4()( whilc(sccond4)MY=1;MG=1;SR=1;SY=0;SG=I;if(flag=l)MR=MR; flag=O; second4-;P2=0xfe;P0=du_codesecond4/101; delayms(2);P2=0xfd;P0=du_codesecond4% 10; delayms(2);P2=0xfb;P0=du_codcsccond4/10J;delayms(2);P2=0xf7;P0=du_codcsecond4% 10
6、; delayms(2);second4=4;Ivoid niain()initialO;while(I)state 1 ();statc2();state3();# / 14state4();void limerOO interrupt 1T HO=(65536-50000)/256;TL0=(65536-50000)%256;num+;if(r)um=20)num=0;flag= I;叫-REDU2讥詩33aILHi-iyRP1dl卫LJqaHlaHiHl*1TAllOAL2RI旳FWALE&A pl .Q 12 PI低罩PI JP五PO O AJ PD.I 4PQ.2 AD2PQ.3 AJXJ 叫M P0 5 AD5 P0 6 AW PO-7 AD7FJ 1 Ag P2 2 A1Q P2 3A11 P2-4-A12 P3 5A13 壮亦】 P2 7 A1 5PJ.O KS(O P3.M-7XDFJ.4 1DP3.ST8-:H4歸耶r