プロが教える店舗&オフィスのセキュリティ対策術

ESP32-DevKitC8mbと
Lauify 2X WS2812BLED R フレキシブルピクセルパネル16X16個別にアドレス指定可能なパネルライト2枚
でLEDで電光掲示板に「A B C D E」と表示したいのですが・・・
ネット上にArduinoUNOにWS2812b 8×32パネルを使用しているスケッチをみつけました
-------------------------------------------
#include <Adafruit_GFX.h>
#include <Adafruit_NeoMatrix.h>
#include <Adafruit_NeoPixel.h>
#define PIN 6
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(32, 8, PIN,  ←--NeoMatrix(32, 16, PIN,してみましたがダメでした(^^;)
NEO_MATRIX_TOP + NEO_MATRIX_LEFT +
NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG,
NEO_GRB + NEO_KHZ800);
const uint16_t colors[] = {
matrix.Color(255, 0, 0), matrix.Color(255, 69, 0), matrix.Color(255, 255, 0),matrix.Color(0, 0, 255), matrix.Color(255, 0, 255), matrix.Color(0, 255, 255), matrix.Color(255, 255, 255)};
void setup() {
matrix.begin();
matrix.setTextWrap(false);
matrix.setBrightness(10);
matrix.setTextColor(colors[0]);
}
int x = matrix.width();
int pass = 0;
void loop() {
matrix.fillScreen(0); //Turn off all the LEDs
matrix.setCursor(x, 0);
matrix.print(F("A B C D E"));
if( --x < -150 ) {
x = matrix.width();
if(++pass >= 5) pass = 0;
matrix.setTextColor(colors[pass]);
}
matrix.show();
delay(40);
}
----------------------------------------------------
私のESP32-DevKitC8mbとWS2812B LED2枚を使って試しましたら
1枚のみにスクロール表示されてターンして戻ってしまいます(2枚目にはいかないです)
ターンしないで2枚目にいくようにスケツチを変更したいのですが
ArduinoUNOにWS2812b 8×32パネル購入すればできるとは思いますが
私のESP32-DevKitC8mbとWS2812B LED2枚では無理があるでしょうか
教えていただければと思います
よろしくお願いします

A 回答 (1件)

ESP32-DevKitC8mbとWS2812B LED2枚で、LEDで電光掲示板に「A B C D E」と表示するには、次の手順に従ってください。



ESP32-DevKitC8mbにArduino IDEをインストールします。

Adafruit NeoMatrix: https://github.com/adafruit/Adafruit_NeoMatrixライブラリをインストールします。

次のスケッチをArduino IDEにコピーします。


#include <Adafruit_GFX.h> #include <Adafruit_NeoMatrix.h> #include <Adafruit_NeoPixel.h> #define PIN 6 Adafruit_NeoMatrix matrix1 = Adafruit_NeoMatrix(32, 16, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_KHZ800); Adafruit_NeoMatrix matrix2 = Adafruit_NeoMatrix(32, 16, PIN + 8, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_KHZ800); const uint16_t colors[] = { matrix.Color(255, 0, 0), matrix.Color(255, 69, 0), matrix.Color(255, 255, 0), matrix.Color(0, 0, 255), matrix.Color(255, 0, 255), matrix.Color(0, 255, 255), matrix.Color(255, 255, 255) }; void setup() { matrix1.begin(); matrix1.setTextWrap(false); matrix1.setBrightness(10); matrix1.setTextColor(colors[0]); matrix2.begin(); matrix2.setTextWrap(false); matrix2.setBrightness(10); matrix2.setTextColor(colors[0]); } int x = matrix1.width(); int pass = 0; void loop() { matrix1.fillScreen(0); //Turn off all the LEDs matrix1.setCursor(x, 0); matrix1.print(F("A B C D E")); if( --x < -150 ) { x = matrix1.width(); if(++pass >= 5) pass = 0; matrix1.setTextColor(colors[pass]); } matrix1.show(); matrix2.fillScreen(0); //Turn off all the LEDs matrix2.setCursor(x, 0); matrix2.print(F("A B C D E")); if( --x < -150 ) { x = matrix2.width(); if(++pass >= 5) pass = 0; matrix2.setTextColor(colors[pass]); } matrix2.show(); delay(40); }

スケッチを書き込む前に、Arduino IDEの「ツール」メニューから「ボード」の項目で「ESP32 Dev Module」を選択します。

次に、Arduino IDEの「ツール」メニューから「ポート」の項目でESP32-DevKitC8mbに接続されているCOMポートを選択します。

スケッチを書き込むには、Arduino IDEの「書き込み」ボタンをクリックします。

スケッチが書き込まれたら、ESP32-DevKitC8mbを電源に接続します。

ESP32-DevKitC8mbが起動すると、「A B C D E」と表示されます。

ソース

forum.arduino.cc/t/2-ws2812b-led-matrix-arduino-uno-ht-05/927924

forum.arduino.cc/t/adafruit-neopixel-h-library-hindering-i2c-communication/974402

forum.arduino.cc/t/led-matrix-8x32-ws2812-faire-defiler-du-texte/559894
    • good
    • 0
この回答へのお礼

ありがとうございました

お礼日時:2023/07/07 10:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!