hi,
eine aufgabe für die besser in C bewanderten:
in der fastled-library wird ein array definiert
CRGB leds[n];
in das der sollwert von n RGB-leds geschrieben wird. in der form:
leds[0].r=
leds[0].g=
leds[0].b=
leds[1].r=
.
.
leds[n-1].b=
ich nehme mal stark an, daß die werte im speicher in der reihenfolge leds[0].r, leds[0].g, leds[0].b, leds[1].r ... leds[n-1].b als bytes liegen.
in der gleichen form bekomme ich RGB-werte von der seriellen schnittstelle.
bei Serial.readBytes muß ich anzahl der zu lesenden bytes angeben und den buffer (z.b. char buf[690]), wo die bytes hingeschrieben werden.
es wäre doch umständlich, zuerst die werte in den buffer zu lesen und dann ins array rüberzuschreiben. könnte man nicht direkt bei readBytes leds[] als buffer angeben? da gibt es doch sicher eine gefinkelte pointer-methode...
oder einen buffer anlegen, der die gleiche startadresse wie leds hat. das würde zeit sparen (und die ist hier eng), und außerdem viel speicher.
gruß und dank, stefan
EDIT: das CRGB kommt aus der fastled-library. und ich hab' den thread-titel geändert.