www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Grafik LCD


Autor: GAST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo an alle!!
Weis einer von euch ein Programm mit dem man farbige oder SW Bilder 
(Bitmap, jpeg, ...) in z.b. einen eeprom Speicherplatzschonend speichern 
kann und die man danach auf einen 128x64 Grafik LCD (einfärbig) anzeigen 
kann????
Also nochmal in deutsch :-) ich brauche ein Program das mir ein Bild so 
umwandelt, das ich es leicht auf meinen Display anzeigen kann (ohne 
langes rumrechnen mit der größe also wenn das Bild z.b. zuerst eine 
Auflösung von z.B.640x480 hatte solte es danach so umgewandelt sein das 
es auf mein 128x64 Pixel passt). Und es sollte das Bild so umwandeln das 
es so wenig wie möglich Speicherplatz praucht (also keine Farbinfos 
usw.)!!
Ach ja und ich hab schon gegoogelt bin aber leider nicht fündig 
geworden!!!

Würde mich freuen wenn mir einer bei meinen Problem weiter helfen 
könnte!!!

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das bild in das lcd-format umwandeln (am pc) u. die farbzahl auf die 
anzahl des lcds reduzieren. dann in ein pixelformat wandeln u. die 
pixelinfos ins eeprom speichern.

"nicht viel rumrechnen" und gleichzeitig "platz sparen" (kompression) 
wird nicht so einfach sein. weil wenn du komprimierst musst du danach 
ein bisschen rumrechnen...

Autor: keksladen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Größe des Bildes wirst du schon selber anpassen müssen. Wird ja wohl 
auch nicht das Problem sein (zB IrfanView).
Zum Umwandeln könntest du dir auch rasch ein kleines Proggy schreiben, 
was zB BMP Bilder (macht sich sicherlich leicht - du musst dir lediglich 
das Dateiformat aus dem Netz laden... zB 
http://www.google.de/search?hl=de&q=BMP+dateiforma... ) 
in reinen Code umwandelt. So speicherst du immer 3 Hex Werte (zB 0x3F) 
für die RGB Farbwerte eines Pixels in ein Array, was du dann im 
Flashspeicher des AVRs ablegen kannst.

Also dein eigenes Bildformat könnte dann später zB so aussehen:
Header: (uint8_t) WIDTH; (uint8_t) HEIGHT
Data: 0x1F,0x..,...,...,...

Wobei also immer drei aufeinanderfolgende Werte die Farbe eines Pixels 
beschreiben.

Autor: GAST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich werd mal ein beispiel zur besseren verständniss geben!

wenn ich ich z.B. eine "L" am Display anzeigen will sollte der datei 
dazu so aussehen:

Zeile_1: 00100000  ..........
Zeile_2: 00100000
Zeile_3: 00100000
Zeile_4: 00100000
Zeile_5: 00100000
Zeile_6: 00100000
Zeile_7: 00111111
.
.
.
.

Dies sollt halt mit einen Bild auch funzen.

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

erstmal mit z.B. Irfanview auf die gewünschte Größe bringen, Kontrast 
und Helligkeit anpassen, Farbtiefe auf 2 Bit mot Floyd-Steinberg 
reduzieren.

Dann wundern, was da übrig bleibt... ;)
Verschiedene Helligkeit/Kontrasteinstellungen durchprobieren oder 
anderes Bild nehmen.

Zum Platz sparen bei s/w dann mit RLE packen, geht auch auf einem AVR 
einfach auseinander zu konten, bevor die Daten zum Display geschickt 
werden.

Gruß aus Berlin
Michael

Autor: GAST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für deine Antwort  keksladen aber ich will das bild in ein SW-Bild 
umwandeln also die Farbinfos weglassen (spart Speicherplatz).
Aja und das wissen wie man ein Prog fürn pc schreibt hab ich mir leider 
noch nicht angeeignet :-(

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ach ja, zum Datei erzeugen noch: ich programmiere auf dem PC 
normalerweise nicht, die Folge ist meist, daß ich solche Konvertierungen 
dann mit einem PHP-Script auf meinem lokalen Test-Websever 
erledige..........

Aber da hat vermutlich jemand anders eine elegantere Idee.

Gruß aus Berlin
Michael

Autor: holger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Im Anhang mal ein Programm von mir was ich
für genau diesen Zweck gebastelt habe.
Funktioniert aber nur mit Schwarzweiss
Bitmap Dateien (*.bmp).
Es kann Daten für T6963 und KS108 Controller
erzeugen.

Das Bild musst du mit einem Grafikprogramm
auf SW und deine Displaygröße runter rechnen.

Mit bmp2c kannst du dir dann entweder C-Code
zum einfügen in deine Software oder Bin-Dateien
zum brennen in ein EEPROM erzeugen. Siehe
readme.txt im ZIP.

Autor: Noonien (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hab mal ein Programm geschrieben (eher anfangen) aber 1 bit sachen 
sollte der schaffen... bei interesse einfach hier ja ankreuzen  :P
Da benötigst du allerdings MS .Net2 falls du es noch nit installiert 
hast

[   ] Ja
[   ] Nein

Autor: GAST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo  holger!!!
Danke für dein Prog, das ist genau das wonach ich gesucht hatte!!!!
Danke aber auch an all denen die mir sonst noch geholfen haben!!!!
ich muss sagen dieses Forum ist einsame klasse!! schnelle und hilfreiche 
antworten!!!!
so werd jetzt mit meinem display spielen :-)!!

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Holger,

so ein Programm suche ich quasi auch!
nur für einen S1D10605 Controller
der arbeitet genau andersrum als der KS108
also D0 ist das obereste Pixel
und D7 das unterste

könntest du vlt eine solche Option in dein Programm einpflegen?
Wäre echt super!

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat vll. jemand noch eine Routine zur Verfügung mit dem ich das Array 
ans LCD übertragen kann. Meine ist nämlich inkompatibel zu dem 
ausgespuckten Format von bmp2c. Das LCD benutzt den T6963 und muss nur 
s/w können.
Danke,

Autor: Bernie Comet (bernaco)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
GAST wrote:
> Weis einer von euch ein Programm mit dem man farbige oder SW Bilder
> (Bitmap, jpeg, ...) in z.b. einen eeprom Speicherplatzschonend speichern
> kann und die man danach auf einen 128x64 Grafik LCD (einfärbig) anzeigen
> kann????
> Würde mich freuen wenn mir einer bei meinen Problem weiter helfen
> könnte!!!

Hallo an alle

Es ist ein alten Originalbeitrag ich weiss schon aber für interessierte 
entwickler die in der Datenbank nach infos suchen, ist so ein freeware 
tool bei Bitmap2LCD.com zu finden...

mfrG

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.