Pixelリングの色
CoddyのArduinoジャーニー「ディスプレイとセンサー」セクションの一部。レッスン 13/24。
このリングには、1本のデータ線上に16個のNeoPixelがあります。最初のピクセルが残りのデータを次のピクセルに渡すため、1回のshow()ですべてを設定できます。番号は0から15です。
ring.Color(red, green, blue)は色を1つの数値にまとめるため、変数に保存して再利用できます。型はuint32_tです。これは負の数にならない32ビットの整数で、3つの部分をすべて格納できる大きさです。
uint32_t purple = ring.Color(150, 0, 255);
ring.setPixelColor(3, purple);
ring.setPixelColor(7, purple);
ring.show();色を指定しなかったピクセルは消灯したままです。3つの部分すべてを255にすると白になります。
チャレンジ
簡単リングはピン 6 に接続されています。リングの 4 分の 1 ずつ離れた 4 つのピクセルを点灯させます。
- ピクセル 0 は赤、ピクセル 4 は緑、ピクセル 8 は青、ピクセル 12 は白
ring.Color()を使って各色を作り、各成分は 0 または 255 にします- 残りのピクセルは消灯したままにします
Run を押してから、Check を押します。
自分で試してみよう
#include <Adafruit_NeoPixel.h>
// 16個のピクセル、データはピン6に接続
Adafruit_NeoPixel ring(16, 6, NEO_GRB + NEO_KHZ800);
void setup() {
ring.begin();
// ピクセル0は赤、4は緑、8は青、12は白
ring.show();
}
void loop() {
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ディスプレイとセンサーのすべてのレッスン
自分で練習してみよう: Arduinoプレイグラウンド