プロジェクト5 レインボーアンビエントライト
1. 説明
2812RGB LEDはプログラム可能なカラフルで夢のような光であり、その色、明るさ、リズムを調整できます。このレインボーアンビエントライトは、動的な装飾として自由に使用できます。また、「音楽に合わせて踊る」ように制御することも可能です。重要なのは、アラームとしても改良できる点です。内蔵センサーが周囲環境を検知し、色、明るさ、リズムを変化させてユーザーに警告します。
2. 動作原理

データプロトコルはシングルラインのリターン・トゥ・ゼロコード通信モードを採用しています。電源投入後にピクセルがリセットされると、DIN端子がコントローラーからのデータを受信します。最初に到着した24bitのデータは最初のピクセルによって抽出され、内部データレジスタに送られます。
残りのデータは増幅回路によって増幅され、DOUTポートを通じて次のカスケードされたピクセルに送信されます。
ピクセルを通過するごとに信号は24bitずつ減少します。
さらに、ピクセルは自動整形および転送技術を採用しているため、ピクセルのカスケード数は信号伝送速度によってのみ制限されます。
3. 配線図

4. テストコード
2812 RGBを点灯させ、その色を設定する方法を学びましょう。
2つのコードブロックをドラッグします。

「RGB LED」パートから以下のブロックをドラッグし、ピンをIO15、LEDの数を6に設定します。

「RGB LED」パートから以下のブロックをドラッグし、明るさを20に設定します。

以下のブロックをドラッグし、LEDの番号を0、1、2、3、4、5に設定し、それぞれ赤、緑、青、黄、紫、白の色を選択します。

以下のブロックを追加します。

完成コード:

5. テスト結果
コードをアップロードし、配線を接続して電源を入れると、LEDが以下のように異なる色で点灯します。

6. 知識拡張
この拡張プロジェクトでは、ミニライトショーを作りましょう!
4つの「繰り返し」ブロックを入れ子にし、その中に「変数+」を追加し、各ループの最後に対応する変数を0にクリアします。

上記の3つの変数を「RGB」ブロックに入れて色の値を制御し、リフレッシュモジュールを追加します。

RGBを「色を表示」ブロックに入れて色を表示し、表示するLEDを制御する変数itemを定義します。

foreverモジュールを使ってRGB LEDを制御し、0から5までサイクルして順に点灯させます。

完成コード

7. コード説明
2812 RGBの数を設定します。開発ボードのピンは複数の2812 RGB LEDを制御できるため、事前に数を設定し、接続されたピンを選択します。

2812 RGBの明るさを設定します。0〜255の範囲で明るさの値を入力し、255が最も明るいです。

このブロックはすべての2812 RGBを消灯します。

2812 RGBの表示を制御します。ピンを選択した後、空欄に点灯させるLED番号と色を指定できます。例えば「0から0」は最初のLEDのみ点灯を意味します。コードをアップロードすると、最初のLEDが設定した色で点灯します。
注意: 空欄には変数も入れられるため、ライトショーを作成可能です。

2812 RGBの色を設定します。赤、緑、青の値で表示色を調整できます。このブロックは2812 RGBの色設定に追加可能です。

制御したいLED番号を入力し、色を選択することで単一の2812 RGB表示を制御できます。

2812 RGBはリフレッシュ後に設定した色を表示します。
