こんにちは、エンジニアのオオバです。
ArduinoIDEに付属しているスケッチ例を、今まであまり見てきませんでした。
先日試しにチラ見した所、とても勉強になったので、改めて気になったものを1つ1つ確認していこうと思います。
→11万文字で徹底解説した「DOTweenの教科書」Unityアニメーションの超効率化ツールはこちら
必要なもの
- Arduino UNO
- ブレッドボード
- 配線ケーブル
- 抵抗
- LED
LEDをチカチカさせる時、明るい暗いを単純にON/OFFさせるだけならdigitalWriteメソッドを使って以下のように書きます。
/**
* 0.1秒ごとにLEDがチカチカする
*/
void loop()
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
1つのLEDの明るさを滑らかにアニメーションさせる場合はanalogWriteメソッドを使用します。
analogWriteメソッドで明るさを変化させる
digitalWriteメソッドは0(LOW)と1(HIGH)を切り替えますが、analogWriteメソッドは0〜255の256段階の変化をさせることができます。
これは、流れる電圧の大きさを変化させており、例えばanalogWirte(128)
とすると、5V * 128/256 = 2.5Vが流れます。
今回作ったもの
Arduino LEDをジワジワと明るく暗くを繰り返すサンプル - YouTube
明滅が滑らかなアニメーションになりました。
ソースコード
0.15秒単位で、2ずつLEDの明るさがアニメーションするサンプルです。
この記事が気に入ったらフォローしよう
オススメ記事
検証環境
- Arduino 1.8.9
- macOS Mojave 10.14.5
参考サイト