Forum: Mikrocontroller und Digitale Elektronik LCD mit 14 Pins, aber scheinbar keinem HD44780-kompatiblen Controller


von Nils ‫. (n-regen)


Lesenswert?

Hallo!

Ich habe vor einiger Zeit ein 2x16-Zeichen-LCD aus einem (HP-)Drucker 
ausgebaut und versuche jetzt, es mit einem ATmega8 anzusteuern.
Ich habe schon die Funktionen von AVR-GCC-Tutorial/LCD-Ansteuerung 
ausprobiert, aber auch nachdem ich lcd_init() aufgerufen habe, zeigt das 
Display noch einen schwarzen Balken an (es ändert sich also nichts).
Wenn ich RS und EN vertausche und den ATmega neustarte, verschwindet der 
Balken, aber ich kann keine Zeichen an das Display schicken.
Wie kann ich herausfinden, was für einen Controller das Display hat?
(Auf dem Folienleiter, der dran war, steht "CXM16214  FRT-01  02.38W 
P0210046" und auf der Platine steht "DATA IMAGE  PX16214 P184 REV:B", 
aber ich habe zu keiner der Bezeichnungen etwas Passendes gefunden)

von Achim M. (minifloat)


Lesenswert?

Schau mal hier: www.tstonramp.com/~pddwebacc/cdm/CDM-16214.pdf

mfg mf

von Nils ‫. (n-regen)


Lesenswert?

Das Datenblatt kenne ich.
Da steht ja drin, dass die Pins 13 und 14 VCC und GND sind. Auf der 
Platine sind aber die Leitungen an den Pins 1, 2 und 3 wesentlich dicker 
als die an den anderen Pins, also ist die Pinbelegung unwahrscheinlich 
(außerdem wird der schwarze Balken bei mir nur angezeigt, wenn ich 1 und 
2 an die Spannungsversorgung anschließe - bei 13 und 14 rührt sich 
nichts).
Im Datenblatt des Controllers SPLC782A steht zwar nicht, dass er 
HD44780-kompatibel ist, aber die Kommandos scheinen auf den ersten Blick 
identisch zu sein.
Woran könnte es dann noch liegen, dass das Display den ATmega nicht zu 
verstehen scheint?

von Andreas (Gast)


Lesenswert?

Achte mal auf das timing. Ähnliche (kompatible) Controller haben 
trotzdem manchmal Unterschiede im Timing. Wurde hier aber auch schon 
besprochen ;-)

von Andreas (Gast)


Lesenswert?

Nochwas, der erste Blick genügt "nicht". Schau dir "alles" ganz genau 
an.

von Nils ‫. (n-regen)


Lesenswert?

Zum Timing: Der Controller von meinem Display (wenn es denn ein SPLC... 
ist) hat teilweise längere maximale Ausführungszeiten für die 
Initialisierungsbefehele im Datenblatt stehen. Ich habe deswegen mal ein 
paar andere Quarze ausprobiert, um das Timing zu strecken/stauchen (auch 
wenn das wahrscheinlich nicht reicht). Dabei ist mir aufgefallen, dass 
der schwarze Balken auf dem Display verschwindet, wenn ich im Betrieb 
den Quarz aus der Fassung nehme.
Und ich habe mir nochmal die Kommandos für die Display-Initialisierung 
angeschaut. Die sind auf jeden Fall gleich, es sollte also mindestens 
der Balken verschwinden.

von Nils ‫. (n-regen)


Lesenswert?

Ich bin inzwischen auf die LCD-Library von Peter Fleury umgestiegen und 
habe mal ein anderes Display ausprobiert. Das neue Display hat erst 
funktioniert, als ich die Geschwindigkeit des Controllers halbiert habe 
und das alte hat sich auch mit einem 16tel der im Code eingestellten 
Frequenz nichtmal intialisieren lassen. Ich habe außerdem die 
Einstellungen für den Controller KS0073 ausprobiert - das neue Display 
funktioniert auch damit, das alte funktioniert auch damit nicht.
Ist das ein eindeutiger Beweis, dass das Druckerdisplay keinen 
HD44780-kompatiblen Controller hat, oder kann ich noch irgendwas an der 
HD44780-Libary ändern, um das Display anzusteuern?

von im Auftrag, der Verkäufer (Gast)


Lesenswert?

Wenn ich dich wäre würde ich an dieser Stelle den Versuch abbrechen und 
mich auf das funktionierende Display konzentrieren. Da weisst du 
wenigstens dass, wenn es nichts tut, es ziemlich sicher an deinem 
Progarmm liegt. Bei dem anderen ist es nur raten wo der Fehler sein 
könnte, der Frust ist höher als der mögliche Lerneffekt.

von Nils ‫. (n-regen)


Lesenswert?

Es geht hier nicht um den Lerneffekt, sondern darum, mehr als ein 1x8- 
und ein 4x16-Display zur Verfügung zu haben, da das 1x8 zu klein und das 
4x16 schon anderweitig verplant ist.

von Andreas M. (elektronenbremser)


Lesenswert?

hmm, wie Verkäufer geschrieben hat, ist es ohne Infos über den 
Controller nur ein rumraten. Du hast ja schon probiert mit 
funktionierendem Code, aber ohne Erfolg.
Dann solltest du weiter probieren und die Zeit investieren um etwas 
mehr, nämlich das was du brauchst, über das Display rauszufinden. 
Controllertyp, Befehle und Belegung der Anschlüsse, mehr kann ich dir 
nicht raten

Viel Glück

Andreas

von Nils ‫. (n-regen)


Lesenswert?


von Andreas M. (elektronenbremser)


Lesenswert?

Na also, nach diesem Erfolg mach weiter und pass dein Programm an.

von Florian S (Gast)


Lesenswert?

Hey Nils,
dein Beitrag ist jetzt schon etwas her, aber ich ich habe das selbe 
Display wie du ausgebaut und suche nun eine Lösung dieses anzusteuern.
Leider ist dein Link von damals 
(http://www.dataimagelcd.com/product/cm/doc/cm160240.htm) nicht so 
hilfreich, da die Seite wohl defekt zu sein scheint.
Was war denn damals deine Lösung? hast du eine Library gefunden?
Besten Dank schon einmal
Florian

von Sebastian (Gast)


Lesenswert?


von Gerhard. (Gast)


Lesenswert?

Hallo Sebastian,

Noch nachträglich vielen Dank für die Link zum Datenblatt. Es hat mir 
nämlich geholfen die recht eigenwillige Pinbelegung des PX16240 LCDs zu 
entwirren und das LCD mit Erfolg in Betrieb zu nehmen. Der Kontrast ist 
besonders gut.

Es lohnt sich auf alle Fälle solche LCDs für Hobbyzwecke vom grimmigen 
Schicksal der vorzeitigen Entsorgung zu retten;-)


Ich habe noch einige ausgebaute HP Drucker 16x1 LCDs mit der Aufschrift 
"SH7-9230" herumliegen. Die sind in einem braunen Plastikgehäuse 
eingebaut mit 14 poligen seitlichem Flachbandkabel Anschluss.

Bei diesen LCDs ist das Pinout bis auf die Umkehrung von Vdd und Vss 
normal. Wenn man das nicht weiß geht das LCD natürlich durch 
Falschpolung kaputt!

PIN1 = Vdd, PIN2=Vss, PIN3=Vlcd (Kontrast) der Rest ist wie üblich. 
PIN7-14 = DB0-7.

Der Kontrast ist nicht ganz so gut wie beim PX16240 aber immer noch ganz 
gut.

mfg,
Gerhard

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.