kann es sein, dass die zurück-Richtung clolor16 => r,g,b nicht richtig rechnet? Zumindest schein es so nach direkter Kontrolle der (lokalen) Rechenschritte
R = (uint8_t)((0b1111100000000000 & color16) >> 11);
G = (uint8_t)((0b0000011111100000 & color16) >> 5);
B = (uint8_t)((0b0000000000011111 & color16));
denn die geben ja andere Ergebnisse als die hinwärts-Richtung r,g,b => color16:
die hinwärts-Richtung ermittelt ja aus den 3 rgb-Werten
r=255
g=102
b=78
die color16-Zahl 64718
die Rückwärts-Funktion dann aber aus color16=64718
die (abweichenden) rgb-Werte
R=31
G=38
B=14
Hatte ich etwas falsch c+p'tet ?
Lesezeichen