2017年9月10日 星期日

【專題】Arduino篇:1-8 Arduino 實作「以序列埠控制LED燈」—異想天開

在第一篇的時候我教大家如何使用序列埠,並進行溝通,如果還不清楚的朋友,歡迎去看「1-6Arduino 實作「Hello word」」這一篇。那上篇我教會大家如何簡單地去控制LED燈的亮滅,那這一篇就來教大家整合一下,如何以序列埠控制LED燈。
那我們這次的目的是以序列埠控制LED燈的「亮」與「暗」,那話不多說我們開始吧!
實作材料:
Arduino uno 一片
USB傳輸線 一條
LED燈 一顆
電阻330歐姆 一顆

電路圖:

Arduino板子接上電腦
接著打上程式。

————————————————————————
int val;         //定義變量val
int ledPin=13;   //定義連接埠為13

void setup() {
  Serial.begin(9600);    //設置傳輸鮑率為9600,這裡要跟軟體設置相一致。
  pinMode(ledPin, OUTPUT) ; //定義LED燈接脚為輸出接脚
}

void loop() {
  val=Serial.read();     //讀取PC機發送給Arduino的指令或字符,並將該指令或字符賦給val
  if(val=='A')      //判斷接收到的指令或字符
  {              //如果接收到的是“A”字符
    digitalWrite(ledPin, HIGH); //點亮LED
    Serial.println("LED燈 亮");
  }
  else if(val=='B')     
  {              //如果接收到的是“B”字符
    digitalWrite(ledPin, LOW);  //熄滅LED  
    Serial.println("LED燈 暗");
  }
}
————————————————————————
燒錄完成後,接著我們就來測試吧!
當我們輸入「A」。


你就會看到,Arduino回覆我們「LED燈 亮」,以及電路上的LED燈亮起來了。


當我們輸入「B」時。


就會看到,Arduino回覆我們「LED燈 暗」以及電路上的LED燈滅掉了起。


以上就是用序列埠來控制LED燈的實驗了。
多去嘗試,多去練習吧!



沒有留言:

張貼留言