單片機交通燈實驗
參考資料:http://www.51hei.com/mcu/58.html
程序:#include
#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);//延時
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--);
}//延時子程序
PROTEUS的仿真圖:
我的RED1,YELLOW1,GREEN1燈代表的是南北的紅,黃,綠三個燈,RED2,YELLOW2;GREEN2代表的是東西的紅黃綠燈;RED1YELLOW1;GREEN1分別由P0^2;P0^1;P0^0;控制。RED2; YELLOW2;GREEN2分別由P0^7; P0^6; P0^5;控制。呵 呵。接下來的幾天應(yīng)該是找零件自己焊接并把時間的精確調(diào)試弄懂了。有點困了,睡覺覺去也。
評論