特別教室(Lesson1): LED の On・Off と明るさ調整

LEDには極性があります。
足の長い方が、「プラス側」で、足の短い方が「マイナス」です。
但し直接電源にLEDを接続すると熱破壊されて壊れてしまいます。
使用するには、電流制限として抵抗を使用します。
抵抗値の計算は、オームの法則で計算します。(下記で簡単に説明)
ここでは、まだプログラムでの点滅はさせません。
マイコンに供給している電源でLEDを点灯させ、抵抗値で明るさがどの様に変わるかを確認してみます。抵抗は、220Ω、1kΩ、10kΩの3本です。

【 実体配線図 】: 下記図では、LEDの右側が「+」、左側が「ー」です。


抵抗値が小さいほどLEDは明るく点灯します。従って220Ωが一番明るく点灯し1kΩ、10kΩの順に暗くなります。

LEDに流れる電流「I」は、I = ( E - VF ) / R ( オームの法則 )により、220Ωの抵抗では I = 5V-2V / 220 = 0.0136 となり 13 mA
から 14mA 流れます。
ここでVFはLEDの順方向降下電圧で、今回のLEDのデータシートから「2.0V」です。


【 プログラムによるLEDの点滅:内臓LED 】
先ほどのLEDの明るさ確認では、抵抗経由でLEDを5VにつないでLEDを点灯させて抵抗値による明るさの変化を確認しました。
今度は、プログラムによるLEDを点滅させてみましょう。
まずは外付けのLEDで点灯させずにマイコンボード上にあるLED(L)を使って、そのLEDを点滅させます。

下記は、LED点滅スケッチ例です。

「LED_BUILTIN」とあるのは、デフォルトでLED_BUILTINと書けば「13」と読み替えてもらえるので、ボード上に搭載されているLEDの
「L」と書かれたLEDをさしています。これがボードの13番ピンに接続されているので、「13」と指定しなくともよくなっています。

setup部:LED_BUILTIN(13ピン)を出力にします。
loop部:digitalWrite(13, HIGH)で、13番をHIGH(LED点灯)させます。
    それを(点灯)300ms継続します。<0.3秒>  ここの数値を変える事で点灯時間を変える事が出来ます。単位はmsです。
    digitalWrite(13, LOW)で、13番をLOW(LED消灯)させます。
    それを(消灯)300ms継続します。<0.3秒>
これを無限に繰り返します。

これは特殊な例で、通常はピン番号で指定します。


【 プログラムによるLEDの点滅:外部LED 】
上記は、デフォルトで指定されている「L:13ピン」のLEDを使いましたが、次は指定したピン番号で外部LEDを点滅させます。
LEDには、最初に使用した電流制限抵抗220ΩをLEDに直列接続します。使用するピンは2番とします。

先ほどのスケッチ(プログラム)の「LED_BUILTIN」の所を「2」とするだけです。




【 プログラムによるカラーLEDの点滅 】
カラーLEDは下図のようにRGBそれぞれ各色発光素子が1個のLEDに埋め込まれています。
それぞれの素子に対し、上記単色LEDで使用したプログラムで点灯させ光の合成によるフルカラー色を発光させることが出来ます。
CATHODE(カソード)は、マイナスにつなぎます。

下記は配線図です。


下記は実体配線図です。



スケッチ(プログラム)は、下記の通りです。



不明点は「 jun@kinet-tv.ne.jp 」まで連絡ください。