Forum: Mikrocontroller und Digitale Elektronik Probleme mit HD66712 LCD Controller


von Alex (Gast)


Lesenswert?

Hallo zusammen

Ich probiere jetzt schon seit einiger Zeit mein 4x20 LCD Display dazu
zu überreden mir ein paar Buchstaben anzuzeigen. Leider vergebens.
Vielleicht habt ihr ja einen Lösungsansatz.
-Im LCD befindet sich ein HD66712 Controller
- D0 - D7 gehen auf einen Port vom 8051
-Den 2. Port benutze ich für die Steuerfunktionen

Beim Display selber lagen leider nur ein Blatt mit den technischen
Daten und Belegung bei. Also habe ich mir das Datenblatt vom HD66712
gesaugt.
Ich habe ein kleines Testprogramm geschrieben in dem das Display einen
Softwarereset bekommt... dann die Konfig Bytes übertragen werden... und
dann die Daten.
Leider keine Reaktion (bis auf ein kurzes kaum sehbares flackern).
Die übertragung selber findet folgendermaßen statt:
-Steuerbits setzen (Register Select,Read/Write,Enable[Low für die
Datenübernahme]).
-Datenbyte anlegen
-Enable mal kurz auf Low für die Datenübernahme
usw.

Da noch nicht mal ein Cursor erscheint, wenn ich die Konfig Bytes
übertragen habe, scheint ja mit der Initialisierung etwas nicht
hinzuhauen.
Laut hersteller sollen folgende Daten für mein Display übertragen
werden:
00111100 ; 8 Bit-Daten-Wörter
00001001 ; 4 Lines
00110000 ; Inhibits write to extension register (was immer das auch
           heisst ?)
00001110 ; Display u. Cursor ON (spätestens jetzt sollte der Cursor da
sein)
00000110 ; Cursor bei jedem Buchstaben weiter bewegen
... und jetzt halt die Daten
Vielleicht kann das ja jemand bestätigen...

Bei dem Software Reset bin ich mir nicht so sicher. Der Hersteller gibt
an:
00110000
4.1 ms warten   (bei mir sinds ca. 4.2)
00110000
100µs warten   (bei mir sinds ca 99µs)
00110000
und das wars...
Ich weiß nicht wie genau die Zeiten eingehalten werden müssen, aber an
0.1ms dürfte es doch nicht scheitern, oder ? Brauche ich den
Softwarereset überhaupt ?

Das einzigste Problem was ich mir noch vorstellen könnte, ist das der
8051 zu schnell für's LCD ist. Der läuft mit 12 MHz. Das Display
arbeitet intern aber nur mit 1MHz glaube ich. Wenn der dann Datenwort
nach Datenwort schickt, ist dem Display das vielleicht zu schnell.
Kann das sein ???

Bin für jeden Tip dankbar

Gruß
Alex

von Frank Linde (Gast)


Lesenswert?

Ich habe mir das jetzt nicht im Detail angesehen, aber im Zweifelsfall
solltest Du es einfach mal mit entsprechenden Zusatzpausen versuchen.
Zu langsam geht bei LCDs kaum, nur zu schnell. ;-)

Gruß, Frank

von Peter D. (peda)


Lesenswert?

Bist Du sicher, daß der E-Pin einen Low-Puls braucht ?
Bei den üblichen LCDs (HD44780) ist es nämlich genau andersrum.

Peter

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.