Forum: Mikrocontroller und Digitale Elektronik 16x3 LCD Ansteuerung


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Tobias Tetzlaff (Gast)


Lesenswert?

Hallo,

ich versuche grade, ein DOGM 163, 16x3 LCD anzusteuern.

Die Lib. von Peter Fleury ist anscheinend nur für 1,2 oder 4 Lines.
Dann kann man noch den Kontrast Softwareseitig einstellen.

Kann mir jemand weiterhelfen?

Gruß Toby

von Jens (Gast)


Lesenswert?

dein Display hat auch (warscheinlich) 4 Zeilen.

vom controller her jeweils 2 Zeilen..

schau mal, ob dein display mit dem aus dem tutorial kompatibel ist (Die
meisten Text-LCDs verwenden den Controller HD44780 oder einen
kompatiblen (z.B. KS0070) und haben 14 oder 16 Pins. Die Pinbelegung
ist praktisch immer gleich:)

aber wegen der softwareseitigen Kontrast einstellung scheinst du einen
anderen Controller zu haben

Gruss Jens

von Tobias Tetzlaff (Gast)


Lesenswert?

Hallo,

es ist ein ST7036 Controller.

Ich habe das Datenblatt zwar vorliegen,
aber irgendwie klappt es nicht.

Da steht zB. zur 4 Bit Mode Initialisierung folgendes :

Power On

Wait some Time >40ms

Function set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   0   1   1   0   0   0   0

Wait some Time >1,6ms

Function set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   0   1   1   X   X   X   X

Wait some Time >26,3us

Function set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   0   1   1   X   X   X   X

Wait some Time >26,3us

Function set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   0   1   0   X   X   X   X

Wait some Time >26,3us

Function set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0  0   1   0   X   X   X   X
 0  0  N  DH  IS2 IS1 X   X   X   X

Wait some Time >26,3us

Internal OSC frequenzy
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   0   0   1   X   X   X   X
 0  0  BS  F2  F1  F0  X   X   X   X

Wait some Time >26,3us

Contrast Set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   1   1   1   X   X   X   X
 0  0  C3  C2  C1  C0  X   X   X   X

Wait some Time >26,3us

Power/ICON/Contras Control
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   1   0   1   X   X   X   X
 0  0 Ion Bon  C5  C4  X   X   X   X

Wait some Time >26,3us

Follower control
RS RW DB7 DB6  DB5  DB4 DB3 DB2 DB1 DB0
 0  0  0   1    1    0   X   X   X   X
 0  0 Fon Rab2 Rab1 Rab0 X   X   X   X

Wait some Time >26,3us

Display On/Off Control
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
 0  0  0   0   0   0   X   X   X   X
 0  0  1   D   C   B   X   X   X   X

So, das soll die Initialisierung sein.

Und was bitte ist mit dem E (Enable) Pin wären der Zeit,
wo ich die Daten sende, und warte?

Vielleicht kann mir jemand sagen, wie ich die Radig oder Fleury Lib
umschreiben muß?!

Bei der Fleury Lib kann man wenigstens die Pins frei wählen.
Bei Radig ist das schon etwas schwerer, denke ich.

Ich habe folgende Pin Belegung :
PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0
DB7 DB6 DB5 DB4 ---  E  R/W RS

Und ich programmiere mit Win AVR.

Gruß Toby

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.