如果IF ELSE的ARDUINO能判斷能力

指令介紹

腳位模式:pinMode(工作接腳,模式);

模式兩種:輸入 INPUT 輸出OUTPUT

數位訊號寫入:digitalWrite(工作接腳,狀態);

狀態兩種:高電位HIGH低電位LOW

數位訊號讀取:digitalRead(工作接腳)

使用方式

從ARDUINO的第7PIN的工作接腳輸出一個高電位訊號從ARDUINO的第7PIN的工作接腳輸出一個低電位訊號
pinMode(工作接腳,OUTPUT);pinMode(工作接腳,OUTPUT);
digitalWrite(工作接腳,HIGH);digitalWrite(工作接腳,LOW);

讀取ARDUINO的第7PIN的工作接腳是高電位HIGH低電位LOW

pinMode(工作接腳,INPUT);

digitalRead(工作接腳);

選擇性敘述 if-else完整結構

if-else程式是由上往下執行
所以如果第一個括號裡的敘述是「成立的」
Arduino 就會自動執行附屬大括號裡面的程式
然後跳過其他 if-else 結構

如果第一個括號裡的敘述「不成立」
Arduino 就會跳過它附屬的大括號
從第二個小括號裡的內容開始比較
直到小括號條件符合了「成立」
才執行附屬大括號裡的內容
同時跳過後面的 if-else 結構

假如很不巧
所有小括號中的敘述都無法成立
程式就只好走到 else 的大括號當中
執行裡面的程式

舉例

假如我們考試評等分為ABCDE,考了89分,就是B。程式執行會是第一組小括號的條件就不成立了,繼續比較 else if 裡的條件,程式發現 89 分符合第二個小括號的條件,所以就進去執行大括號的內容,也就是獲得 B 這個等級,然後忽略剩下的 if-else 程式碼

如果考了59,就是E,所有的判斷都不成立執行最後的else

讓 Arduino 有做決定的能力

目標,由第 7 腳高低電位的改變,設計可以控制 LED 亮或滅的開關。運作方法是:工作接腳 7 如果被送入高電位,由第 13 腳控制的 LED 就會點亮;相反的,如果第 7 腳被送入低電位,就把 LED 熄滅

void setup() {
  pinMode(7,INPUT);
  pinMode(13,OUTPUT);
}

void loop() {
  if(digitalRead(7)==HIGH){
    digitalWrite(13,HIGH);
    }
  else{
    digitalWrite(13,LOW);
    }
}

設定

第7工作接腳輸入模式,第13工作接腳輸出模式

運行

如果數位訊號輸入等於高電位,輸出數位訊號高電位

否則,輸出數位訊號低電位

這裡的==為比較運算值