Nö, teilweise arbeite ich dann direkt auf der Datei (bmp) und lasse die dann anzeigen, wenn ich spezielle Grafiken erzeuge.

Was du ja wohl schon hast, ist einen Pixel zu malen. Falls nicht, kümmer dich um diese Basics bevor du ein komplettes Bild pinseln willst. Das ist eigentlich alles, was du brauchst...

Das bmp als C-Header zu haben ist nicht so toll, das würde ja bedeuten, daß du entweder die Grafik hart ins Programm reincompilierst oder aber zur Laufzeit den C-Header interpretieren musst.

Zweiteres ist zu vermeisen, ersteres evtl dann angebracht, wenn es sich um immer gleiche Bildchen wie feste Icons handelt, aber ineffizient ist das auch.

Am besten ist, wenn du die bmp irgendwoher binär beziehst (SPI, UART, I2C, Flash, EEPROM, XRAM, ...). Zuerst liest du die Kopfdaten ein (bmih, bmfh) und danach die eigentlichen Bilddaten (Palette + Pixel). Dabei brauchst du das Bild nicht komplett einzulesen, sondern kannst ja pixelweise einlesen/aufs GLCD ausgeben und brauchst den Wust von Daten nicht im µC (zwischen)zuspeichern, wofür der Platz eh nicht reichen würde.