今天晚上12點(diǎn)準(zhǔn)備睡覺,突然睡不著覺,腦子里想的都是單片機(jī),呵呵,可能感覺來了吧,起來畫圖,編程序,搞到現(xiàn)在,嘿嘿,功夫不負(fù)有心人吧,弄了兩三天的交通燈程序終于差不多完成了,就是調(diào)試時(shí)間還有點(diǎn)問題,調(diào)試了很久,不過現(xiàn)在跟之前的要求差不多了,嘿嘿。
參考資料:http://www.torrancerestoration.com/mcu/58.html
程序:#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit red1=P0^2;
sbit yellow1=P0^1;
sbit green1=P0^0;
sbit red2=P0^7;
sbit yellow2=P0^6;
sbit green2=P0^5;
void delay(int);//調(diào)用程序聲明
void main()
{
while(1)
{
red1=1;yellow1=0;green1=0;//南北紅燈亮
red2=0;yellow2=0;green2=1;//東西綠燈亮
delay(500);//延時(shí)
red1=1;yellow1=0;green1=0;//南北紅燈亮
red2=0;yellow2=1;green2=0;//東西黃燈亮
delay(500);
red1=0;yellow1=0;green1=1;//南北綠燈亮
red2=1;yellow2=0;green2=0;/東西紅燈亮
delay(500);
red1=0;yellow1=1;green1=0;//南北黃燈亮
red2=1;yellow2=0;green2=0;//東西紅燈亮。
delay(500);
}
}
void delay(int z)
{
uint i,x;
for(i=z;i>0;i--)
for(x=600;x>0;x--);
}//延時(shí)子程序
PROTEUS的仿真圖:
我的RED1,YELLOW1,GREEN1燈代表的是南北的紅,黃,綠三個(gè)燈,RED2,YELLOW2;GREEN2代表的是東西的紅黃綠燈;RED1YELLOW1;GREEN1分別由P0^2;P0^1;P0^0;控制。RED2; YELLOW2 ;GREEN2分別由P0^7; P0^6; P0^5;控制。呵 呵。接下來的幾天應(yīng)該是找零件自己焊接并把時(shí)間的精確調(diào)試弄懂了。有點(diǎn)困了,睡覺覺去也。