How to: Nokia 6100 Display (Kurz-Tutorial)
–> new: english version
Das Ansteuern des Nokia 6100 LCDs ist zugegebener Maßen einwenig tricky. Deswegen möchte ich heute ein paar Webseiten, sowie ein von mir geschriebenes Software-Tool vorstellen, die alles zu einem Kinderspiel werden lassen.
Also, was brauchen wir alles?
1. Das Display selbst, das bekommt man günstig beim Auktionshaus des Vertrauens (ebay.de o. ä.).
2. Noch ein bißchen Hardware (einen AVR-Mikrocontroller (wie den ATmega32) zum Ansteuern des LCD und wer sich die fieselige Lötarbeit am Display ersparen und nicht noch eine zweite Spannung mit einem zweiten Netzteil zur Verfügung stellen will, der kauft noch bei Sparkfun.com eine Anschlussplatine für das LCD http://www.sparkfun.com/.
3. Dann brauchen wir noch den Sourcecode zum Ansteuern des Displays. Hier sollte man darauf achten, ob man bei Ebay ein LCD mit einer braunen oder einer grünen Platine ersteigert hat. Denn diese haben unterschiedliche Controller.
Zum Code für die braune Platine bitte hier entlang: braune Platine
Zum Code für die grüne Platine bitte hier klicken: grüne Platine
(Bei dem Link zur grünen Platine gibt es noch einen Schaltplan (welcher die Anschlussplatine von Sparkfun vorraussetzt).)
Ich selber habe nur mit der grünen Platine und dem dazugehörigen Code gearbeitet. Der Sourcecode bietet nur die Möglichkeit, die Pixel einzeln auf dem Display anzusteuern. Nun wäre es ja überaus geschickt eigene Bilder anzuzeigen. Wie löst man nun dieses Problem?
Ganz einfach, man nimmt mein “Bitmap to RGB8 Converter”-Tool. Es erzeugt aus einem Bitmap-File ein h.-File mit einem Array aus RGB8-Bytes. Dieses bindet man einfach in das Projekt ein und sendet über die “LCD_put_pixel(color, x, y)”-Funktion die Bitmap-Pixel an das LCD. Mit den beiden #defines image_height, image_width lassen sich die beiden Parameter (Bildhöhe und Bildweite) in der for-Schleife elegant steuern (siehe Codebeispiel unten).
Download:
Bitmap2RBG8-Konvertierungstool
(Hinweis: Das Programm ist in C# geschrieben worden und benötigt das neueste .net-Framework, bitte beachte auch das Licence-File)
/*
Auszug Quelltext
Enthält angepassten Code der der Seite http://www.e-dsp.com/controlling-a-
color-graphic-lcd-epson-s1d15g10-controller-with-an-atmel-avr-atmega32l/
*/
/*
die beiden defines aus dem vom Bitmap2RBG8-Konvertierungstool erstellten *.h-File
#define image_width
#define image_height
*/
for (y = 0; y < (image_width); y++)
{
for (x = image_height; x > 0; x–)
{
LCD_put_pixel(0×0, x-1, y);
}
}








Da hast du dir ja richtig viel Arbeit gemacht. Find ich gut. Davon sollte es noch mehr Seiten geben.