LED(発光ダイオード)の使い方。Lチカでの動作確認方法

発光ダイオードLED実物

「LED」とは「Light Emitting Diode」の頭文字をとったもので、直訳すると「光を放出するダイオード」となり「発光ダイオード」と呼ばれています。

「LED」が登場するまで光源としては「白熱電球」が主流でした。「白熱電球」は「電気」を「熱」に変えてから「光」を得ていましたが、「LED」は「電気」を直接「光」に変換することができます。

一旦熱エネルギーに変換する必要がある「白熱電球」とは違い「LED」は + と - の電気が結合する時のエネルギーで光を得ることができるため、発光効率が非常に良いです。

スポンサーリンク

1.「LED」の外観

一般的な「LED」は下画像のようなものです。
色は主に「赤」「青」「黄」「緑」「白」ですが、様々な色のLEDが存在しています。
透明なものもありますが基本的に発行色のケースに入っていて長さ違いで端子(足)が2本あります。

発光ダイオードLED実物


スポンサーリンク

2.「LED」の端子名称、回路図

LEDの説明
「LED」には基本的に端子(足)が2本あり、長い方が+側で「アノード」と呼ばれます。短い方が-側で「カソード」と呼ばれます。
回路図記号で書くと上画像のようになり、正しい使用条件では+からー側にしか電流が流れません。
電流が流れる時に発光するため、+とーを間違えると光りません。

LEDの回路図

実際の使用例を回路図で書くと上画像のようになります。
上画像の左側が一般的な使用方法で、R1の「抵抗」経由で「LED」に電流を流します。「LED」を光らせるための電流の大きさは範囲で決められており、電圧に応じてこの範囲の電流が流れるように「抵抗」で調節します。
上画像の右側は「抵抗」が内蔵されたもので、外付け「抵抗」無しで使用できるため便利です。しかし、使用できる電圧に制限があり、光量の調整を行う場合は電圧で行うためちょっと手間がかかります。
これらは用途に応じて使い分けましょう。

「アノード」と「カソード」の覚え方
「アノード」は英語で「Anode」です。「アノード」側から見ると何となく「A」の形に見えると思います。
一方「カソード」は英語ではなくローマ字で「Kasoudo」として、「カソード」側から見ると反対向きですが何となく「K」の形に見えると思います。
迷ったときは記号を思い浮かべましょう。

1つの「LED」の中に「赤、青、黄」の3つの「LED」が入っていて、それぞれの光の強さを変えることで様々な色を表現できる「フルカラーLED」というものもあります。
この場合端子(足)の本数は下画像のように4本になります。

フルカラーLEDの外観

フルカラーLEDは一番長い脚が+「アノード」の「アノードコモン」のものと、-「カソード」の「カソードコモン」のものがあり用途に応じて使い分けます。
上画像は「カソードコモン」で赤用、青用、黄用の「アノード」が3本あります。

スポンサーリンク

3.「LED」実際の使用方法

「LED」の実際の使用方法について、マイコンボード「ATOM LITE」を使用した例で紹介します。
出力に設定した端子に下画像のように「LED」を接続して、端子に「3.3V」が出力された時に「LED」が点灯し、端子を「0V」にした時に「LED」が消灯します。

・一般的な「LED」の場合

ATOM LITEとLEDの接続

端子「21(G21)」から「抵抗」経由で「LED」の+「アノード」を接続し-「カソード」を端子「G(0V)」に接続します。

・「抵抗内蔵LED」の場合

端子「21(G21)」に直接「LED」の+「アノード」を接続し-「カソード」を端子「G(0V)」に接続します。

4.「Lチカ」プログラムの紹介(ATOM LITE使用)

実際にマイコンボード「ATOM LITE」で「抵抗内蔵LED」を使用して「LED」の点灯を確認する「Lチカ」プログラムを紹介します。

LEDをボタンスイッチで点灯Lチカ

「ATOM LITE」って何?って方は → こちら
「開発環境の準備」がまだの方は → こちら
実際にどのように動作するか確認してみましょう。
以下のコードを「コピペ」して書き込みを行い、動作確認をしてみてください。
※コピーは下コード(黒枠)内の右上角にある小さなアイコンのクリックでもできます。
#include <M5Atom.h>    //Atomのヘッダファイルを準備

// 初期設定
void setup() {
  // 入出力端子設定
  pinMode(32, INPUT_PULLUP);   //入力端子(青ボタン)
  pinMode(26, INPUT_PULLUP);   //入力端子(赤ボタン)

  pinMode(21, OUTPUT);         //出力端子(LED)
  digitalWrite(21, LOW);       //出力初期化(LED消灯)
}
// メイン
void loop() {
  if (digitalRead(32) == 0) {  //青ボタンがON(0)なら
    digitalWrite(21, HIGH);    //LED点灯(3.3V出力)
  }
  if (digitalRead(26) == 0) {  //赤ボタンがON(0)なら
    digitalWrite(21, LOW);     //LED消灯(0V)
  }
  delay(100);
}

このプログラムについての詳細は入出力端子の使い方と合わせて以下の記事で詳しく紹介しています。

「Lチカ」プログラムの詳細記事(入出力端子の使い方)は →こちら

コメント

タイトルとURLをコピーしました