Forum: FPGA, VHDL & Co. Bild in Blockram [verilog]


von Stefan H. (Firma: dm2sh) (stefan_helmert)


Lesenswert?

Hallo,

nun habe ich endlich ein "DE1 ALTERA" und damit erfolgreich ein paar 
bunte Sachen auf dem Monitor gezaubert. Das möchte ich nun erweitern.
Und zwar brauche ich ein Programm, mit dem ich .bmp Dateien in .hex 
Dateien umwandeln kann um sie ins Blockram zu laden. Es geht nur um 
kleine Symbole. Es sollen erst 4 Bit für die Rot, dann 4 Bit für die 
Grün und schließlich 4 Bit für die Blau verwendet werden (pro 
Bildpunkt).
Wie macht ihr so etwas, habt ihr da ein spezielles Konvertierprogramm?

von Rick Dangerus (Gast)


Lesenswert?

Jein. Am Besten in der Programmiersprache Deiner Wahl selber schreiben.
Wenn Du eine verwendest, wo es Bibliotheken für das Einlesen der Bitmap 
gibt, brauchst Du Dich nur noch um die Ausgabe zu kümmern.

Rick

von Günter -. (guenter)


Lesenswert?

Stefan Helmert wrote:
[...]
> Und zwar brauche ich ein Programm, mit dem ich .bmp Dateien in .hex
> Dateien umwandeln kann um sie ins Blockram zu laden. Es geht nur um
> kleine Symbole. Es sollen erst 4 Bit für die Rot, dann 4 Bit für die
> Grün und schließlich 4 Bit für die Blau verwendet werden (pro
> Bildpunkt).

Für die ROM Initialisierung nehme ich den $readmemh() Systemtask. Jetzt 
kenne ich mich nicht mit Altera aus, aber Xilinx ISE benutzt den um die 
Werte in Speicher zu schreiben. Kann in der Regel auch für die 
Simulation genutzt werden.

> Wie macht ihr so etwas, habt ihr da ein spezielles Konvertierprogramm?

Um die Datei zu generieren hab ich mir ein Python-Skript geschrieben. 
Das hat jetzt eine andere Funktion und geht nicht von BMP Dateien aus, 
wenn es dich interessiert kann ich aber den Teil beisteuern der die 
Textdatei mit Hexadezimalen-Werten schreibt.

Zum Einlesen von BMP-Dateien würde sich vielleicht das Python PIL Modul 
eignen:

http://pythonware.com/products/pil/

Gruß,

Günter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.