Blink

1秒ごとにLEDを点滅させます。


Last revision:2024/10/03

この例では、Arduinoで物理的な出力を見るのにもっとも簡単な方法である、内蔵LEDの点滅方法を紹介します。

必要なハードウェア

オプション

  • LED
  • 220Ωの抵抗

回路

この例では、ほとんどのArduinoボードが持っている内蔵LEDを使います。このLEDは、デジタルピンに接続されていて、ボードタイプによってピン番号が異なります。簡単にするために、全てのボードの設定ファイルで指定される定数があります。この定数は、LED_BUILTINで、内蔵LEDの制御を簡単にしています。以下に、定数とデジタルピンの対応を示します。

  • D13: 101
  • D13: Due
  • D1: Gemma
  • D13: Intel Edison
  • D13: Intel Galileo Gen2
  • D13: Leonardo and Micro
  • D13: LilyPad
  • D13: LilyPad USB
  • D13: MEGA2560
  • D13: Mini
  • D6: MKR1000
  • D13: Nano
  • D13: Pro
  • D13: Pro Mini
  • D13: UNO
  • D13: Yún
  • D13: Zero

このスケッチで外部LEDを点灯させるには、次の回路を組み立てる必要があります。抵抗の片方をLED_BUILTIN定数に対応するデジタルピンに接続します。LEDの長い方の端子(プラス側、アノード)を抵抗のもう一方に接続します。LEDの短い方の端子(マイナス側、カソード)をGNDに接続します。以下の図では、LED_BUILTINがD13のUNOボードを示します。

抵抗はLEDに流れる電流を制限し、LEDとArduinoの出力ピンの双方の損傷を防ぐという安全な操作のために重要です。適正な電流に基づいた抵抗値を選ぶには、オームの法則(V=IR)を使います。ここで、Vはボードの電圧(5Vもしくは3.3V)引く利用するLEDの順方向電圧(典型的には、赤は1.8から2.2V)。今回、220Ωの抵抗をArduino UNO R3(5Vのボード)で使うと、LEDとArduinoのピンの双方が安全なレベルの電流に抑えることができます。抵抗値を調整することで、安全な動作を確保しつつ、LEDの明るさを制御することができます。5Vのボードでは、抵抗値が1kΩまでであれば、LEDは光ります。

回路図

コード

回路が完成したら、ArduinoボードをPCに接続し、Arduinoソフトウェア(IDE)を起動して、以下のコードを入力します。メニューのファイル/スケッチ例/01.Basic/Blinkからロードすることもできます。最初にすることは、以下のコードで、LED_BUILTINを出力ピンとして初期化することです。

pinMode(LED_BUILTIN, OUTPUT);

メインループでは、以下の行でLEDを点灯します。

digitalWrite(LED_BUILTIN, HIGH);

これにより、LEDのアノードに5Vが供給されます。LEDのピン間に電位差が生じ、LEDが点灯します。そして、以下の行でLEDを消灯します。

digitalWrite(LED_BUILTIN, LOW);

これにより、LED_BUILTINピンは0Vに戻り、LEDが消灯します。点灯と消灯の間、人が変化を見るのに十分な時間が必要です。このため、delay()コマンドが、1000ミリ秒(1秒)間、ボードに何もしないよう指示します。delay()コマンドを使うと、その間何も起こりません。基本例を理解したら、BlinkWithoutDelayのスケッチ例を見て、他のことを実行しながら、遅延させる方法を学んでください。

この例を理解したら、DigitalReadSerialのスケッチ例を見て、ボードに接続したスイッチを読む方法を学んでください。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/*
  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
  it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
  the correct LED pin independent of which board is used.
  If you want to know what pin the on-board LED is connected to on your Arduino
  model, check the Technical Specs of your board at:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  // turn the LED on (HIGH is the voltage level)
  delay(1000);                      // wait for a second
  digitalWrite(LED_BUILTIN, LOW);   // turn the LED off by making the voltage LOW
  delay(1000);                      // wait for a second
}

さらに学ぶ

付属のスケッチ例に、さらに多くの基本的なチュートリアルがあります。

Arduinoプログラミング言語の詳細を集めた、言語リファレンスを調べることもできます。

Last revision 2015/07/28 by SM

オリジナルのページ

https://docs.arduino.cc/tutorials/uno-rev3/Blink/

最終更新日

August 2, 2026

inserted by FC2 system