Forum: Compiler & IDEs Probleme mit LCD TC1602E.01 (Pollin)


von Nightlight (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich weiß, dass es dazu schon einige Themen hier gibt; dennoch konnte ich 
irgendwie dort nichts Brauchbares finden...

Wie ihr euch wohl denken könnt, kriege ich mein LCD TC1602E.01 von 
Pollin an meinem AtMega644 nicht zum Laufen.
Ich verwende die library von fleury, konfiguriert ist sie so:


#define LCD_IO_MODE


#define LCD_PORT         PORTA        /**< port for the LCD lines   */
#define LCD_DATA0_PORT   LCD_PORT     /**< port for 4bit data bit 0 */
#define LCD_DATA1_PORT   LCD_PORT     /**< port for 4bit data bit 1 */
#define LCD_DATA2_PORT   LCD_PORT     /**< port for 4bit data bit 2 */
#define LCD_DATA3_PORT   LCD_PORT     /**< port for 4bit data bit 3 */
#define LCD_DATA0_PIN    4            /**< pin for 4bit data bit 0  */
#define LCD_DATA1_PIN    5            /**< pin for 4bit data bit 1  */
#define LCD_DATA2_PIN    6            /**< pin for 4bit data bit 2  */
#define LCD_DATA3_PIN    7            /**< pin for 4bit data bit 3  */
#define LCD_RS_PORT      PORTB        /**< port for RS line         */
#define LCD_RS_PIN       2            /**< pin  for RS line         */
#define LCD_RW_PORT      PORTB        /**< port for RW line         */
#define LCD_RW_PIN       1            /**< pin  for RW line         */
#define LCD_E_PORT       PORTB        /**< port for Enable line     */
#define LCD_E_PIN        0            /**< pin  for Enable line     */

Also
A4->DB4
A5->DB5
A6->DB6
A7->DB7

B0->E
B1->RW
B2->RS


Ich habe das Display auf dem Atmel Evaluations Expansion Board von 
Pollin aufgelötet; ich schätze daher, dass die Verkabelung wohl korrekt 
ist (einfache Tests mit LED und PORT-Pins auf 1 setzen zeigen jedenfalls 
an, dass die richtigen Signale an den richtigen Stellen ankommen).
Die Pinbelegung ergibt sich aus der Jumperkonfiguration des Boards (dort 
kann man A0-A3 noch auf DB0-DB3 zuschalten).


Mit Hapsim scheint alles zu funktionieren; am AtMega selbst bewirkt 
schon lcd_init(LCD_DISP_ON_CURSOR_BLINK) nichts. Kein Lebenszeichen 
außer der laufenden Hintergrundbeleuchtung des LCDs.


Möglicherweise habe ich einfach etwas extrem triviales übersehen und 
finde es nur nicht.

Kann mir irgendjemand helfen?


Danke schonmal!

von Nightlight (Gast)


Lesenswert?

Kurze Ergänzung: oben hat sich ein Fehler eingeschlichen, die Zeile muss 
natürlich heißen:

#define LCD_IO_MODE      1

von dummy (Gast)


Lesenswert?

>Möglicherweise habe ich einfach etwas extrem triviales übersehen und
>finde es nur nicht.

Kontrast richtig einstellen.
Oder falsch angeschlossen. Der häufigste Fehler.

von Nightlight (Gast)


Lesenswert?

Kontrast läuft über ein Poti, habe ich schon mit herumgespielt und am 
Ende auf einer mittleren Einstellung gelassen.

Die Pins können bei dem Boarddesign gar nicht an der falschen Stelle 
angeschlossen werden, das ist größtenteils zum Zusammenstecken und 
festlöten.

Naja, ich hab halt geschaut, ob die Daten an den Input Pins des LCD 
ankommen, die ich in PORTA Bit 4-7 bzw. PORTB Bit 0-2 schicke, und das 
ist jedenfalls der Fall... ich wüsste nicht, wo noch etwas falsch 
angeschlossen sein könnte...

von Lowtzow .. (lowtzow)


Lesenswert?

eventuell braucht dein display eine negative spannung an v0

mfg

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.