DOGM162 am MSP430
Posted: Thu 22. May 2014, 14:03
Hallo uC-Interessierte,
verwendet wird das "Display On Glass" DOGM162L-A von electronic assembly, das zwei Textzeilen mit je 16 Zeichen darstellt.
Das Display wird mit 3,3V betrieben und via 4-wire-SPI an den Prozessor angeschlossen.
Die Pinbeschaltung des Displays ist in der Datei DOGM_SPI.c zu finden.
Das Projekt verwendet aktuell den MSP430G2553, ist aber sicher an alle Varianten anpassbar...
Den Takt macht der interne DCO mit 1MHz. (siehe vCPU_init() in main.c)
Der Code basiert zu großen Teilen auf dem, was Gerrit, DL9GFA in seinen workshops verwendet.
Hier wird jedoch statt der 4-Bit-Ansteuerung des Displays die SPI-Schnittstelle verwendet.
Weitere SPI-Bausteine können somit die Funktionalität und die entspr. Portpins ebenfalls nutzen.
Der LCD-Code ist reichlich abgespeckt. Z.B wird die aktuelle Zeichenposition nicht mehr mitverfolgt.
Ein Zeilenüberlauf wird daher nicht automatisch umgebrochen. Überzählige Zeichen gehen ins Nirvana.
Das Anwendungsprogramm hat also selbst dafür Sorge zu tragen, dass nur auf vorhandene Zeichenpositionen geschrieben wird.
Ich habe mir die Freiheit genommen und die Funktionsweise der Routine "vLCD_gotoxy", mit der eine neue Cursorposition gesetzt wird, etwas geändert.
Dass die X- und Y-Werte bislang bei 0 begonnen haben, hat mich immer irritiert. Nun wird das 7. Zeichen in Zeile 2 mit vLCD_gotoxy(7,2); angesprungen.
Verbesserungsfähig ist vermutlich jeder Code.
Hier könnte man sich wünschen, dass während der diversen Warteschleifen der Prozessor in den Stromsparmodus versetzt wird.
Schließlich ist der große Vorteil eines DOGM der äußerst geringe Stromverbrauch. Dem sollte sich der Prozessor anschließen.
Angehängt ist eine zip-Datei mit den Projekt-Dateien für das Code Composer Studio.
vy 73 de Matthias, DL9MWE
pse qsl...
verwendet wird das "Display On Glass" DOGM162L-A von electronic assembly, das zwei Textzeilen mit je 16 Zeichen darstellt.
Das Display wird mit 3,3V betrieben und via 4-wire-SPI an den Prozessor angeschlossen.
Die Pinbeschaltung des Displays ist in der Datei DOGM_SPI.c zu finden.
Das Projekt verwendet aktuell den MSP430G2553, ist aber sicher an alle Varianten anpassbar...
Den Takt macht der interne DCO mit 1MHz. (siehe vCPU_init() in main.c)
Der Code basiert zu großen Teilen auf dem, was Gerrit, DL9GFA in seinen workshops verwendet.
Hier wird jedoch statt der 4-Bit-Ansteuerung des Displays die SPI-Schnittstelle verwendet.
Weitere SPI-Bausteine können somit die Funktionalität und die entspr. Portpins ebenfalls nutzen.
Der LCD-Code ist reichlich abgespeckt. Z.B wird die aktuelle Zeichenposition nicht mehr mitverfolgt.
Ein Zeilenüberlauf wird daher nicht automatisch umgebrochen. Überzählige Zeichen gehen ins Nirvana.
Das Anwendungsprogramm hat also selbst dafür Sorge zu tragen, dass nur auf vorhandene Zeichenpositionen geschrieben wird.
Ich habe mir die Freiheit genommen und die Funktionsweise der Routine "vLCD_gotoxy", mit der eine neue Cursorposition gesetzt wird, etwas geändert.
Dass die X- und Y-Werte bislang bei 0 begonnen haben, hat mich immer irritiert. Nun wird das 7. Zeichen in Zeile 2 mit vLCD_gotoxy(7,2); angesprungen.
Verbesserungsfähig ist vermutlich jeder Code.
Hier könnte man sich wünschen, dass während der diversen Warteschleifen der Prozessor in den Stromsparmodus versetzt wird.
Schließlich ist der große Vorteil eines DOGM der äußerst geringe Stromverbrauch. Dem sollte sich der Prozessor anschließen.
Angehängt ist eine zip-Datei mit den Projekt-Dateien für das Code Composer Studio.
vy 73 de Matthias, DL9MWE
pse qsl...