Arduino-LEDの使い方
当記事では、ArduinoでLED(発光ダイオード)を使う方法を詳しく解説します。
ArduinoのDigital I/O(デジタル入出力)の関数を使ったプログラムで、LEDの点滅を行います。
なお、その他のArduino関数・ライブラリについては、以下の記事をご覧ください。
LED(発光ダイオード)はどんな電子部品?
LED(Light Emitting Diode:発光ダイオード)は、順方向の+側に電圧を加えると、発光する電子部品です。
LEDは電子部品の中では割と簡単に扱えるので、電子工作の書籍では、一番初めに習うことが多いです。
LEDは省電力の発光素子のため、家庭用ではLED電球を使用している方も多いと思います。その他、信号機、電光掲示板、街中のイルミネーションなどもLED方式に置き換わってきています。
ただし、中学校の理科で扱った豆電球と違い、LEDは電池などの電源を直接、接続してしまうと、電流が流れすぎてしまい壊れてしまいます。
そのため、通常、LEDに流れる電流を制限するための抵抗を直列に接続する必要があります。詳しいLEDの電流制限抵抗の計算方法については、以下の記事をご覧ください。
サンプルプログラム(サンプルスケッチ)
サンプルプログラム(サンプルスケッチ)で、ブレッドボードを使います。ブレッドボードの詳しい使い方は、以下の記事をご覧ください。
Arduino Uno内蔵LEDの点滅
- Arduino Uno
- USBケーブル
- PC(プログラム書き込み・シリアルモニタ表示)
void setup() {
pinMode(13, OUTPUT);//13番ピンを出力に設定
}
void loop() {
digitalWrite(13, HIGH);//13番ピンの出力をHIGH(5V)に設定
delay(1000);//1000msec待機(1秒待機)
digitalWrite(13, LOW);//13番ピンの出力をLOW(0V)に設定
delay(1000);//1000msec待機(1秒待機)
}
Arduino Unoには、ボード上にチップ型のLEDが実装されているので、外付けのLEDを点滅する前に、まずは練習としてArduino Uno内蔵LEDを点滅させてみましょう。
サンプルプログラムでは、内蔵LEDはデジタル入出力の13番ピンに接続されているので、13番ピンを出力に設定します。
そして、loop()内のプログラムで、13番ピンの出力をHIGH(5V)に設定、1秒待機、13番ピンの出力をLOW(0V)に設定、1秒待機を繰り返すことで、1秒間隔でArduino Uno内蔵LEDを点滅させることを実現します。
LEDの点滅
- LED 赤
- 抵抗270Ω
- Arduino Uno
- USBケーブル
- ブレッドボード
- ジャンパ線
- PC(プログラム書き込み・シリアルモニタ表示)
void setup() {
pinMode(0, OUTPUT);//0番ピンを出力に設定
}
void loop() {
digitalWrite(0, HIGH);//0番ピンの出力をHIGH(5V)に設定
delay(1000);//1000msec待機(1秒待機)
digitalWrite(0, LOW);//0番ピンの出力をLOW(0V)に設定
delay(1000);//1000msec待機(1秒待機)
}
サンプルプログラムは、外付けLEDを0番ピンに接続しているので、「Arduino Uno内蔵LEDの点滅」のサンプルプログラムを「13番ピン」から「0番ピン」に変更するだけです。
プログラムを実行すると、1秒間隔で外付けLEDが点滅します。
おすすめのArduinoボードはどれ?
当記事『Arduino-LEDの使い方』では、Arduino Unoを使用したサンプルプログラムを解説してきました。
やはり、たくさんの種類のあるArduinoボードの中でも、最も基本的なエディションのArduino Unoがおすすめなのですが、Arduino Unoと電子部品を組み合わせたキットも存在します。
電子工作初心者にとっては、いちいち電子部品を別途購入する必要がないので非常に有用です。以下の記事で初心者でもわかりやすいように、ランキング形式でおすすめのArduino Unoを紹介しているので、ぜひご覧ください。
また、以下の記事で、安価でWi-Fi/Bluetoothに対応している「ESP32開発ボード」についてもまとめてみました。
このボードは、Arduinoボードではありませんが、Arduino IDEでソフト開発ができるため、電子工作でIoTを実現したい方におすすめです。