Arduinoをはじめました その2


[まとめ] 現在開催中のKindleセール情報はこちら

今回はボタンによるLED制御を行いました

その1

ソースコード

// Example 02 ボタンを押している間、LEDが点灯

const int LED = 13;
const int BUTTON = 7;

int val = 0;

void setup() {
  pinMode(LED, OUTPUT);
  pinMode(BUTTON, INPUT); 
}

void loop() {
  val = digitalRead(BUTTON);
  
  if (val == HIGH) {
    digitalWrite(LED, HIGH); 
  } else {
    digitalWrite(LED, LOW);
  }
}

demo

その2

ソースコード

// Example 03 ボタンを押すとLEDが点灯し続ける、もう一度押すと消灯

const int LED = 13;
const int BUTTON = 7;

int val = 0;
int old_val = 0;
int state = 0;

void setup() {
  pinMode(LED, OUTPUT);
  pinMode(BUTTON, INPUT); 
}

void loop() {
  val = digitalRead(BUTTON);
  
  if (val == HIGH && old_val == LOW) {
    state = 1 - state;
    delay(10); // バウンシング防止
  }
  old_val = val;
  
  if (state == 1) {
    digitalWrite(LED, HIGH); 
  } else {
    digitalWrite(LED, LOW);
  }
}

demo

[まとめ] 現在開催中のKindleセール情報はこちら