NeoPixelの制御

English page

WS2812BなどのNeoPixel系のLEDストリングを制御することができます。
NeoPixel関連のブロックは、「表示」→「NeoPixel」のグループにあります。

配線

NeoPixelのデータピンを、マイコンのGPIOのピンに接続します。
また、NeoPixelの5V(または12V)とGNDのピンを、電源に接続します。

5VのNeoPixelで、同時に点灯する数が1~2個程度であれば、マイコンの5Vのピンから電源を取ることが可能です。
しかし、多数のNeoPixelを同時に点灯させる場合は、スイッチング電源を別途用意して、そちらから電源を取ります。
また、スイッチング電源を使う場合は、マイコンのGNDとスイッチング電源のGNDも接続します。

以下の図は、ESP32-S3の4番ピンにNeoPixelを接続し、スイッチング電源から電源を取っている例です。

ESP32-S3/電源/NeoPixelの配線例

使用できるGPIOピン

Raspberry Piでは、10番ピンをNeoPixelと接続してください。
それ以外のマイコンでは、GPIOのピンには特に制限はありません。

初期化

まず、「○○の○番目のNeoPixelを初期化する」のブロックを使い、NeoPixelを初期化します。

NeoPixelの初期化

ESP32シリーズでは、複数(最大5系統)のNeoPixelを接続して、「○番目」の部分で制御対象を指定することができます。
それ以外のマイコンでは、同時に制御できるNeoPixelは1系統だけです。

「ピン」のパラメータでは、NeoPixelを接続したGPIOのピンを指定します。
「基本入出力」グループの「○○の○番ピンを○に割り当てる」のブロックで、あらかじめピンを変数に割り当てておき、その変数を「ピン」のパラメータに指定します。

「ピクセル数」のパラメータでは、NeoPixelのピクセルの数を指定します。
また、NeoPixelを点灯した時に色が正しく出ない場合は、「色の順序」のパラメータで「RGB」以外の値を指定してみます。

ピクセルの点灯

個々のピクセルの色を決めるには、「○○の○番目のNeoPixelの○番の色を○にする」のブロックを使います。

ピクセルの色を設定

また、すべてのピクセルを同じ色で点灯するには、「○○の○番目のすべてのNeoPixelの色を○にする」のブロックを使います。

すべてのピクセルの色を設定

これらのブロックでピクセルの色を決めた後、「○○の○番目のNeoPixelの表示を更新する」のブロックを実行すると、NeoPixelが点灯します。

表示を更新

事例

以下の事例は、NeoPixelの個々のピクセルを順に青にしていく例です。
NeoPixelの数は24個にしています。
このプログラムは、こちらからダウンロードすることができます。

NeoPixelを制御する事例