BMP-nach-C-Code-Konverter

#335986
Lesenswert?

Hallo,

ich möchte kleine BMP-Grafiken, die ich z.B. mit Windows-Paint zeichne,
in Initialisierungs-Code für C-Programme umwandeln, sodaß diese Grafik
mit einem AVR-Controller auf ein Grafik-LCD (128*64 mit Toshiba
T6963-Controller) ausgegeben werden kann. Kennt jemand einen solchen
Converter? Oder hat einen?

Evt. wäre auch Delphi-Quellencode zum Selber-Anpassen interessant.

Vielen Dank.

Günter
#335993
Lesenswert?

@Jörn Kaipf: DANKE! Das ist genau das, was ich suchte. Das Programm von
Holger Klabunde funktioniert perfekt und bringt das ideale Format (u.a.
für AVR, sogar an ProgMem hat er gedacht). Nochmals danke.

@fred und Sebastian Heyn: Danke auch an euch; mit Gimp funktioniert es
zwar ("Speichern unter..." und dann ".c" auswählen), aber Gimp
schreibt RGB-Daten, die man so kaum im uC verarbeiten kann. Das
Programm von Holger Klabunde ist besser geeignet (seine Page ist sehr
lesenswert).

Danke an alle!
Gast #335994
Lesenswert?

Also XV haette es dir direkt in einem C-Source abgespeichert den du so
wie er ist includen kannst. Und da es ausserdem noch ein guter
Grafikeditor ist haettest du da vorher noch beliebige Aenderungen
vornehmen koennen.
Garnicht davon zu reden das es mehr einlesen kann als doofe BMPs

Olaf
#335995
Lesenswert?

@Olaf: Danke für den Hinweis. Ich kenne XV bislang nicht. "bmp2c.exe"
von Holger Klabunde macht das allerdings auch.

Ein Problem bei beiden ist indessen, daß speziell für den T6963 ein
Modus mit Font 6*8 existiert, bei dem von einem Grafik-Byte nur die
untersten 6 Bits in das LCD ausgegeben werden; die oberen 2 Bits werden
ignoriert; darauf nimmt "bmp2c" bislang keine Rücksicht. Man kann den
T6963 zwar im 8*8-Font betreiben (das wird der Normalfall sein), da
geht das wunderbar, allerdings sind dann nur 16 Text-Zeichen/Zeile
möglich, wenn man den internen CG verwendet. Manche Applikation (wie
meine aktuelle) brauchen aber mehr; bei 6*8 gibt es 21 Zeichen/Zeile,
das brauche ich und muß somit mit der Unbequemlichkeit des Grafik-Modus
leben. Wenn also ein BMP-C-Konverter darauf Rücksicht nehmen soll, muß
er die Grafik-Bits anders anordnen bzw. ausgeben. Das kann XV
wahrscheinlich nicht, oder doch?
Gast #335996
Lesenswert?

Du musst beim ausgeben der Daten doch sowieso umrechnen weil die
Konverterprogramme nie wissen wo deine Pixel so liegen. Es gibt z.B
Leute die der Meinung sind das 0,0 links oben und andere das 0,0 links
unten zu sein hat.
Oder was ist wenn du das Display in einer Anwedung mal hochkannt nutzen
moechtest.

Was XV noch kann ist z.B dithern. Also aus Farbgrafik immer noch
huebsche zweifarbige SW-Grafik runterrechnen.

Hier ist uebrigens die Homepage von dem Programm:

   http://www.trilon.com/xv/

Olaf
Gast #2278342
Lesenswert?

Hallo,
ich muss diesen thread noch einmal hoch holen, da ich genau vor dem 
Problem stehe, dass die umgewandelten BMPs nicht richtig angezeigt 
werden.

Ich nutze die Lib hier aus dem Forum.

Bette die .c und die .h vom Bild ein und versuche mit :

glcd_show (test,0,128);

das Bild einzubetten.
Alles was herauskommt ist Pixelsalat.

Weiss jemand zufällig wo mein Fehler liegt?


Vielen Dank

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren