@muecke: Das mit dem Speicher ist gar nicht so schlimm wie befürchtet. Ein Bild braucht 3240 Byte; einmal im RAM (das ist der leds-Array) und die Bilder legst Du in den Programmspeicher. Da brauchten dann die 48 Bilder insgesamt 155520 Byte - das passt noch, wenn der Code nicht zu fett wird.
Ich hoffe mal - mangels geeigneter Hardware - dass das auf dem Teensy genauso geht wie auf den Arduinos. Dann sollte dieser Sketch Deine oben angegebenen Bilddaten auf den Tisch zaubern können. Die liegen nämlich schon im exakt richtigen Format vor.
Der Sketch verwendet 6428 Bytes (2%) des Programmspeicherplatzes. Das Maximum sind 253952 Bytes.
Globale Variablen verwenden 3336 Bytes (40%) des dynamischen Speichers, 4856 Bytes für lokale Variablen verbleiben. Das Maximum sind 8192 Bytes.
Es kompiliert für einen Arduino Mega, ob es funktioniert kann ich nicht testen. Und ob es schnell genug ist, weiß ich natürlich auch nicht; da gibt es vielleicht Optimierungspotential, wenn die Daten gleich in Serpentinenform im Speicher liegen und mit memcpy() in den led-Array kopiert werden können (ohne den Umweg über die farbe
).
// Testsketch zur Bildausgabe
// https://forum.arduino.cc/t/mehrdimensionales-array-oder-ein-struct-fur-pixel-tisch/866335
#include <FastLED.h>
// geklaut aus https://forum.arduino.cc/t/led-pixel-tisch-apa102-1080pixel/694140/127
FASTLED_USING_NAMESPACE
#define DATA_PIN 7 // Pin 7 Grün DI
#define CLK_PIN 8 // Pin 8 Braun CI
#define LED_TYPE APA102
#define COLOR_ORDER BGR // eventuell anpassen
#define BRIGHTNESS 255 // Helligkeit 0 = Aus, 255 = Hell, Max 255
const uint8_t zeilen = 24;
const uint8_t spalten = 45;
const uint16_t anzahlPixel = zeilen * spalten; // 1080
CRGB leds[anzahlPixel];
// Bilddaten aus https://forum.arduino.cc/t/mehrdimensionales-array-oder-ein-struct-fur-pixel-tisch/866335/16
const uint8_t bild[anzahlPixel][3] PROGMEM =
{
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0},
{0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192},
{0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192},
{0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0},
{0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0},
{0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {204, 51, 0}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192}, {0, 0, 0}, {0, 0, 0}, {0, 112, 192}, {0, 112, 192},
{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}
};
// Transformationsfunktion von Bildablage in Zeilen/Spalten-Anordnung in LED-Index des
// Tischs - geklaut aus dem Matrix-Beispiel
// https://github.com/FastLED/FastLED/blob/master/examples/XYMatrix/XYMatrix.ino
// Annahme: Es handelt sich um Serpentinen-Layout waagrecht.
// Alles überflüssige weggenommen und die Namen angepasst
uint16_t XY( uint8_t x, uint8_t y)
{
uint16_t i;
if ( y & 0x01)
{
// Odd rows run backwards
uint8_t reverseX = (spalten - 1) - x;
i = (y * spalten) + reverseX;
}
else
{
// Even rows run forwards
i = (y * spalten) + x;
}
return i;
}
void setup()
{
// geklaut aus https://forum.arduino.cc/t/led-pixel-tisch-apa102-1080pixel/694140/127
FastLED.addLeds<LED_TYPE, DATA_PIN, CLK_PIN, COLOR_ORDER>(leds, anzahlPixel); // Pixel Matrix Definiren
FastLED.setBrightness(BRIGHTNESS);
// Ausgabe des Bildes
for (uint8_t y = 0; y < zeilen; y++)
{
for (uint8_t x = 0; x < spalten; x++)
{
uint16_t bildIndex = x + y * zeilen;
CRGB farbe = CRGB(bild[bildIndex][0], bild[bildIndex][1], bild[bildIndex][2]);
leds[XY(x, y)] = farbe;
}
}
FastLED.show();
}
void loop()
{
// nix.
}
Gruß Walter