これまではLEDの点灯、消灯を扱ってきたき。今回はフェードイン/アウト。
いまでは携帯のLEDなどはフェードイン/アウト珍しくもないが、その昔マイクロコンピュータでLEDをフェードイン/アウトさせるのはかなり面倒な作業だった。
なので、マイコン愛好家にとってフェードイン/アウトのテクニックは憧れだった(かもしれない)。
Arduinoはこのフェードイン/アウトを簡単に実現することができるのだ。
(今のマイコンでも簡単になっているのだけどね)
それはPWM(pulse width modulation),パルス幅変調のおかげ。
パルス幅変調とは工学的な響きだが、一番わかりやすいコトバかもしれない。
原理は下の通りで、5V, 0V(HIGH, LOW,)を高速で繰り返す。
Arduinoの場合周期は約490Hz。時間にすると約2ms.になる。
このパルス幅の比率をデューティー比という。
LEDを明るくするには下のようにデューティー比を大きくすればいい。
パルス幅は0-255段階で指定できる。関数は
analogWrite(pin, value)
pinは3, 5, 6, 9, 10, 11が使える。
valueが0-255。255の時がデューティー比100%で一番明るい。
LEDのつなぎは前回と同じ。早速マイコンボードに書き込もう。
フェードイン/アウトしただろうか。