www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik BMP-nach-C-Code-Konverter


Autor: Günter R. (galileo14)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit gimp geht das

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
XV kann es auch. :-)

Olaf

Autor: Günter R. (galileo14)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@fred: Habe mir Gimp 2.2 intalliert, kann aber keine Option zum Export
finden. Kannst Du mir weitere Tipps geben? Danke.

@Olaf: Habe nach XV gesucht; will's zunächst mit Gimp versuchen, wenn
ich von fred etwas höre; komme darauf zurück.

Günter

Autor: Daniel N. (bipak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, meinst du vielleicht das XPM format?
Wenn ja, dann lade das .bmp file in GIMP und speicher es als .xpm
wieder ab.

Gruß,
Daniel

Autor: Jörn Kaipf (joern)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Sebastian Heyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
einfach speichern unter, dann kannst du bei dateiendung .c .h auswählen

Autor: Günter R. (galileo14)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Günter R. (galileo14)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt komprimierte und unkomprimierte BMP Dateien.
Vermutlich ist das Programm zu blöd, um mit komprimierten klarzukommen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.