ne das war die umrechnung von 16bit (sog. 65k Farbraum) auf R G B
wolltest du es umgekehrt? Sorry
RGB16 = ((uint16_t)R << 11) | (((uint16_t)G << 5) & 0b0000011111100000) | ((uint16_t)B & 0b0000000000011111);
(uint16_t) muss zwingend vorher stehen und castet den 8bit auf einen 16bit, sonst fallen die bits nach dem 8ten ins nirvana
ich kenne gerade nicht den 16bit unsigned int typ für arduino sorry
(PS: Das ist auch der Grund weswegen ich so einen sprechenden typen verwende, egal welcher compiler oder welche umgebnung jeder macht es anders)
Lesezeichen