Arduino初初教程3 ——交通燈

經過前面兩次I/O輸出的介紹,此次咱們就來實現一個交通燈的例子
實物鏈接效果如圖所示:
數碼管的控制引腳不變,3個led燈鏈接到模擬端口0、一、2,分別對應綠、黃、紅,引腳輸出低點亮LED。
說明:當6個模擬口做爲數字口的時候,其對應序號是接着其餘的數字口的,即模擬口0--5對應就是數字口14--19。
實例功能以下:
紅燈亮9秒,接着綠燈亮9秒,接着黃燈亮3秒,接着紅燈亮9秒,如此循環。數碼管顯示當前LED燈熄滅剩餘秒數
程序以下(直接粘貼到Arduino開發環境下就可直接應用,程序中略去了數碼管顯示0-9數字子函數,可參考初初教程2):
//設置控制各段及LED的數字IO腳
int a = 7;
int b = 6;
int c = 5;
int d = 11;
int e = 10;
int f = 8;
int g = 9;
int ledG = 14;
int ledY = 15;
int ledR = 16;
//引腳設置、初始化
void setup()
{
  int i;//定義變量
  for(i=5;i<=16;i++)
    pinMode(i,OUTPUT);//設置5~16引腳爲輸出模式
}
//程序執行部分
void loop()
{  
  while(1)
  {
//紅燈
    digitalWrite(ledR,LOW);
digitalWrite(ledY,HIGH);
digitalWrite(ledG,HIGH);
    digital_9();    //顯示9
delay(1000);    //延時1s
digital_8();    //顯示8
    delay(1000);    //延時1s
    digital_7();    //顯示7
    delay(1000);    //延時1s
    digital_6();    //顯示6
    delay(1000);    //延時1s
    digital_5();    //顯示5
    delay(1000);    //延時1s
    digital_4();    //顯示4
    delay(1000);    //延時1s
    digital_3();    //顯示3
    delay(1000);    //延時1s
    digital_2();    //顯示2
    delay(1000);    //延時1s
    digital_1();    //顯示1
    delay(1000);    //延時1s
//綠燈
    digitalWrite(ledR,HIGH);
    digitalWrite(ledY,HIGH);
digitalWrite(ledG,LOW);
    digital_9();    //顯示9
delay(1000);    //延時1s
digital_8();    //顯示8
    delay(1000);    //延時1s
digital_7();    //顯示7
delay(1000);    //延時1s
    digital_6();    //顯示6
    delay(1000);    //延時1s
    digital_5();    //顯示5
    delay(1000);    //延時1s
    digital_4();    //顯示4
    delay(1000);    //延時1s
    digital_3();    //顯示3
    delay(1000);    //延時1s
    digital_2();    //顯示2
    delay(1000);    //延時1s
    digital_1();    //顯示1
    delay(1000);    //延時1s
//黃燈
    digitalWrite(ledR,HIGH);
    digitalWrite(ledY,LOW);
digitalWrite(ledG,HIGH);
digital_3();    //顯示3
    delay(1000);    //延時1s
    digital_2();    //顯示2
    delay(1000);    //延時1s
    digital_1();    //顯示1
    delay(1000);    //延時1s
  }
}
有興趣童鞋的能夠編寫一個帶參數的數碼管顯示子函數,可以使程序更加精減
[ 本帖最後由 晨光熹微 於 2011-6-27 20:20 編輯 ] git

附件 20110627_fb3d5643deaad3f6a757WhN7uYVua2Wd
相關文章
相關標籤/搜索