Menu
CoddyTech

点滅速度を変える

CoddyのArduinoジャーニー「はじめての回路」セクションの一部。レッスン 3/22。

delay() はミリ秒(ms、1秒の1000分の1)単位で数えます。delay(1000) は1秒、delay(250) は4分の1秒です。

1回の点滅は、LEDが点灯している時間と消灯している時間を合わせたものです。1000 msの待ち時間が2回あると、点滅にかかる時間は2000 msです。数値を小さくすると待ち時間が短くなるため、LEDはより速く点滅します。

digitalWrite(13, HIGH);
delay(100);   // 0.1秒間オン
digitalWrite(13, LOW);
delay(100);   // 0.1秒間オフ

delay() が受け取るのは整数のミリ秒だけです。delay(0.2) は5分の1秒にはなりません。ボードは小数部分を切り捨て、0 ms待ちます。5分の1秒にするには、delay(200) と書きます。

どちらの待ち時間も重要です。2つ目の待ち時間がないと、LEDは消灯した直後にすぐ再び点灯するため、消えていないように見えます。

challenge icon

チャレンジ

簡単

スターターの点滅はゆっくりです。速くしましょう。

  • 200 ms 点灯
  • その後 200 ms 消灯

Run を押して動作を確認し、その後 Check を押してください。

自分で試してみよう

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

void loop() {
  digitalWrite(13, HIGH);
  delay(1000);  // この待ち時間を短くする
  digitalWrite(13, LOW);
  delay(1000);  // こちらも短くする
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

はじめての回路のすべてのレッスン

自分で練習してみよう: Arduinoプレイグラウンド