酒と薔薇の日々(その2)

好きなことだけ求めて生きるアスペ気味のINTJ人

WokuiのArduinoエミュレータ上でNeoPixcelを動かす(ライブラリ導入)

2023年10月19日 20時52分43秒 | マイコン(ESP32・Arduino等)

実はシリアルLEDを点ける前哨戦で、まずはArduino「Wokui」エミュでやってみることにした。
来年の講座でWokuiエミュを使う予定なので習熟しておかねばならないし、
同僚から「ライブラリインストールが有償」なんてガセ情報を掴まされかけてたから。

Arduino初期画面のパーツ挿入画面からリング状の「NeoPixcel」を選ぶ。

電源とデータラインを画面上で結線する。データラインは11番とした。
リアル決戦サンプルでは1番ピンとするネット記事があるが、エミュ上ではシリアルデータと勘違いされ、意味不明の通信データが画面右下へ表示されるため。

はいここで問題が発生。ライブラリが無いよと。

① 画面上部にある「Library Manager」タブをクリックする。
② 「+」ボタンをクリック
③ 「neopix」などと打ち込んでライブラリを探す。
上から2個のAdafruitライブラリがセットで必要のようです。

(多分)上側の「Adafruit DMA neopixcel library」をクリックするともう一個も自動で組み込まれたっポイ
「Sketch.ino」タブに戻る。

1個だけ赤で点灯するサンプルを動かしてみた。
LEDを数は16,ラインはD11にと変更
これらは、インストールと同時に入ってくるライブラリ・サンプルソースにも格納されている。

今度は7色の発光がぐるぐる回るサンプルをこちらの先達から頂いて、動かす。
ちゃんと動きました。

画面上でぐるぐるやっております。多分現物はもっと明るいはず。

=====サンプルソース=========

//--------------オレンジが回転---------------------
#include "Adafruit_NeoPixel.h"
const int DIN_PIN = 11; // D11
const int LED_COUNT = 16; // LEDの数

Adafruit_NeoPixel pixels(LED_COUNT, DIN_PIN, NEO_GRB + NEO_KHZ800);  // 赤字部分は内蔵チップ固有の文字列です

void setup() {
  pixels.begin();
}

void loop() {
  for(int i=0; i<LED_COUNT; i++) {
    pixels.clear();
    pixels.setPixelColor(i, pixels.Color(255, 128, 0)); // orange
    pixels.show();
    delay(500);
  }
}

この記事についてブログを書く
« Aliex サーボテスタのテスト | トップ | Aliex シリアルLED(WS2812B... »