ARDUINO if else 判斷式語法



語法結構
if (條件式一){
符合條件一執行
}
else if(條件式二){
符合條件二執行
}
else if(條件式三){
符合條件三執行
}
else {
以上條件都不符合的時候執行
}

由於程式是由上往下判斷 因此是由上方開始往下判斷

範例一
利用按鈕當數位輸入值控制內建LED燈開關

int button=8;

void setup() {
pinMode(button,INPUT);
pinMode(13,OUTPUT);
}
void loop() {
  if(digitalRead(button) == LOW){
    digitalWrite(13,HIGH);
  }
  else{
    digitalWrite(button,LOW);
  }
}

範例二

使用超音波模組輸入值控制內建LED燈開關
條件一 當距離<30公分 LED燈1秒閃10次
條件二 當距離<60公分 LED燈1秒閃5次
其他 LED關閉

const byte trigPin=5;
const byte echoPin=6;
int LED = 13;
float d;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(LED,OUTPUT);
  Serial.begin(9600);
}

void loop() {
  d = sr04() * 0.017;
  Serial.print(d);
  Serial.println("cm");
  delay(1000);
  if (d <= 30){
    for(int i=1;i<=10;i++){
    digitalWrite(LED,HIGH);
    delay(100);
    digitalWrite(LED,LOW);
    delay(100);
    }
  }
    else if (d <= 60){
    for(int i=1;i<=10;i++){
    digitalWrite(LED,HIGH);
    delay(200);
    digitalWrite(LED,LOW);
    delay(200);
    }
  }
  else{
    digitalWrite(LED,LOW);
  }
}

unsigned long sr04() {
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);  
  digitalWrite(trigPin, LOW);
  return pulseIn(echoPin, HIGH);
}

沒有留言:

張貼留言