splc780d LCD Pollin

OP #2482607
Lesenswert?

Hi Leute,

ich hab meine Schaltung heute mit einem TC1604A modifiziert. Vorher 
hatte ich ein TC1602A mit 2 Zeilen drauf.

Es hat mit dem TC1602 auch alles wunderbar mit der Fleury.lib geklappt. 
Aber mit dem neuen geht das anscheinend nicht mehr. Ich suche seit 
Stunden im Netz schon nach Lösungen. Aber irgendwie finde ich nicht viel 
zu dem Display. Sollte ich mir lieber einen anderen besorgen oder weiter 
probieren, bis er läuft?

Der Display zeigt nur in der 1./3. Zeile schwarze Balken, was ja auf ein 
Initialisierungs-Problem schliessen lässt.

Das Display ist wie folgt angeschlossen.

Vss = GND
Vdd = +5V
Vo = 0 - +5V über Poti
RS = PA0
R/W = GND (mittlerweile, war vorher auf PA1)
E = PA2
DB0 = GND
DB1 = GND
DB2 = GND
DB3 = GND
DB4 = PA3
DB5 = PA4
DB6 = PA5
DB7 = PA6

Das Display hat 4x16 Zeichen, ist von Pollin und soll laut spartanischem 
Datenblatt einen SPLC780D Kontroller haben.
http://www.pollin.de/shop/dt/MTczOTc4OTk-/Bauelemente_Bauteile/Aktive_Bauelemente/Displays/LCD_Modul_TC1604A_01.html

Hoffe ihr könnt mir helfen. Sonst weiß ich net weiter, vorher hat ja 
alles geklappt.

Danke und schöne Grüße
Kai
Gast #2482652
Lesenswert?

>DB0 = GND
>DB1 = GND
>DB2 = GND
>DB3 = GND

Lass die Leitungen offen, nicht an GND anschliessen.

>R/W = GND (mittlerweile, war vorher auf PA1)

Bei Fleury darf das glaub ich nicht auf GND liegen.

>laut Datenblatt einen SPLC780D Kontroller haben.

Bei mir funktionieren solche Displays mit den Standard
LCD Routinen.

Welchen AVR benutzt du und mit welcher Taktrate?
OP #2482673
Lesenswert?

Hi Holger,

also ich benutze einen AT90CAN128 von Atmel.

Ich hatte vorher die Fleury.lib benutzt. Hab nun auch schon die routine 
von microcontroller.net ausprobiert, aber auch ohne Erfolg.

Vorher hatte ich auch noch den R/W auf PA1, hatte ihn für die 
microcontroller.net -> lcd-routine nicht mehr an PA1, sondern an GND.

Ich kann ja mal den Seitenschneider ansetzen und DB0-DB3 in die Luft 
setzten.

Ich hoffe nur, dass ich nichts beim ausbauen des alten Displays kaputt 
gemacht hab. Hatte aber schon die relevanten Leitungen gemessen.

Grüße Kai
Gast #2482726
Lesenswert?

>Also die schwarzen Balken sind weg, ich könnte vermuten es geht.

Die Initialisierung scheint bis zu einem bestimmten Punkt
funktioniert zu haben, mehr aber nicht.

Eigentlich müsste jetzt in jeder Zeile was stehen:

Line1
Line2
Line3
Line4

Wenn du das nicht siehst stimmt immer noch etwas nicht.
Gast #2483089
Lesenswert?

moin !!!
kann es sein das dieses display an pin 3 ( vo displayspannung ) ne 
negative spannung braucht ?
gibt hochtemperatur display´s die das benötigen ( -4,5 .... -5v/ einige 
µa )
hab hier n 2*40 display aus ner waschmaschine und das will -4,5v haben 
sonst sieht man garnix .
der hd44780 kann max. +-11v displayspannung ab.
ich hab hier auf meinem microsps test / programmierboard nen kleinen 
inverter aus nem cd4093b + dioden / kondensatoren drauf womit ich die 
-5v erzeuge .

mfg
OP #2483093
Lesenswert?

Hi Leute,

DANKE für die Hilfe. Der Fehler ist gefunden.

Ich hab beim ausbauen des alten Displays einen Bruch in der Leiterbahn 
von DB6 gehabt. Einmal Lot drüber und es läuft. Man man..das war 
wirklich nur ein Haarriss...

Vielen Dank an alle.

Grüße Kai
OP #2483778
Lesenswert?

Vielleicht nochmal für interessierte Leser.

Die Peter-Fleury-LCD Libary funktioniert bedingt. Also der Pin R/W muss 
dafür wieder angeschlossen werden. Bei mir war es dann auf dem 4 
zeiligen Display so, dass die ersten 2 Zeilen (DDRAM address: 0x00 und 
0x40) korrekt dargestellt wurden und die dritte Zeile nur mit DDRAM 
address 0x11 läuft. Jedoch ist dann die dritte Zeile um ein Zeichen 
versetzt, da sie eigentlich bei 0x10 beginnt. Setzt man die Adresse auf 
0x10, wird statt in der 3ten/4ten Zeile in die Erste und Zweite 
geschrieben. Die 4te Zeile ging normal mit 0x50. Möglicherweise ein 
timing-Problem.

Ich hab aber leider keine Zeit die Nadel im Heuhaufen zu suchen und 
benutze nun die lcd-routine aus dem Tutorial 
http://www.mikrocontroller.net/articles/Erweiterte_LCD-Ansteuerung
Bei dieser Libary muss dann nur der Pin R/W auf GND gezogen werden. Ein 
in die Luft hängen der Datenpins DB0-DB3 ist nicht nötig. Habe beides 
getestet und es geht entweder mit GND an DB0-DB3 oder man lässt die Pins 
in der Luft.

Schöne Grüße
Kai
Gast #2483804
Lesenswert?

> Ein in die Luft hängen der Datenpins DB0-DB3 ist nicht nötig.

Sollte man aber, oder wenigstens hinreichend große Widerstände 
reinmachen. Warum? Um Kurzschlüsse zu vermeiden. Selbige können 
entstehen wenn man das Display (warum auch immer) (noch) nicht korrekt 
in den 4-Bit-Modus gebracht hat und dann einen READ durchführt (wodurch 
die Datenpins zu Ausgängen werden).

HTH
OP #2483893
Lesenswert?

Ah okay. Danke das wusste ich nicht, dass muss ich mir gleich mal 
notieren...

Je 10k sollten doch als Widerstand an DB0-DB3 reichen, um sie auf GND zu 
ziehen. Oder ist es nicht schlimm, wenn ich sie einfach in der Luft 
liegen lasse? Will nicht anfangen zu fuschen, das tue ich so schon oft 
genug.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren