Benutzer-Werkzeuge

Webseiten-Werkzeuge


Writing /srv/www/htdocs/udo/singollo.de/linux.singollo.de/public_html/data/cache/0/045a596cbd10b925960e9cea6e503ec2.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /srv/www/htdocs/udo/singollo.de/linux.singollo.de/public_html/data/cache/0/045a596cbd10b925960e9cea6e503ec2.metadata failed
hardware:lcd
Writing /srv/www/htdocs/udo/singollo.de/linux.singollo.de/public_html/data/cache/0/045a596cbd10b925960e9cea6e503ec2.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.

LCD für VDR

Nachdem ich diverse LCDs ausgetestet hatte, darunter ein 16×4 mit dem HD44780, habe ich mir mal ein T6963C-basiertes, grafisches LCD ausgeliehen. Eigentlich war es für ein Projekt mit dem 80C537-Lite-Board von Elektor vorgesehen, aber da dies mangels Zeit und Bedarf erstmal auf Eis gelegt ist, konnte ich es für dieses Projekt nutzen. Leider hatte ich nur den Elektor-Artikel für ein graphisches Display an das 537-Board zur Verfügung und musste mich deshalb mit Dokus zu einigen anderen LCDs mit gleichen Controller begnügen.

Alte Schaltung

Die T6963C-LCDs benötigen neben 5V auch eine negative Spannung für die Kontrastregelung. Im PC gibt es zwar -12V, aber ich kann die leider nicht ohne Aufwand abgreifen. Daher habe ich ein eigenes Netzteil benötigt. Zum Glück hatte ich auf der Verbindungsplatine Parallelport-PC noch genügend Platz, um das zu realisieren. Die ganze Schaltung besteht aus 3 Standardbeschaltungen zum LM317, 7805 und ICL7660.

Der LM317 ist ein einstellbarer Spannungsregler, der hier die Vorspannung für den 7805 und die positive Kontrastspannung erzeugt. Da allerdings die meisten LCDs eine negative Spannung zur Kontrastregelung benötigen, muss noch ein Spannungsinverter dazwischen geschaltet werden. Mir stand ein ICL7660 zur Verfügung. Nicht eingezeichnet sind die PC-Port → LCD-Verbindung, sowie die Reset-Schaltung (RC-Glied 10k/0.1µF). Im Schaltplan sind zwei Fehler: der Kondensator C1 sollte größer als 220µF sein und das LCD hat eine Auflösung von 240×64 Pixel. Für die Hintergrundbeleuchtung verwende ich einen 10Ohm Widerstand (mindestens 1W), der allerdings eine etwas „funzeliges“ Hintergrundbeleuchtung erzeugt. Geplant ist, die Hintergrundbeleuchtung automatisch an die aktuelle Beleuchtung anpassen zu lassen.

T6963 alt

Neue Schaltung

Die alte Schaltung mit drei Spannungsregler und ohne Bustreiber war zwar recht kompakt, allerdings konnte ich diese nur mit kurzen Verbindungskabeln verwenden. Die neue Schaltung benötigt zwei Spannungsregler (7805, MC34063) und zwei Bustreiber des Typs 74xxx245. Bei den Bustreibern sind (A)LS mit Schmitt-Trigger-Eingängen von Vorteil. Der MC34063 liefert die negative Kontrastspannung. Die Schaltung habe aus dem Tutorial von mikrokontroller.net entnommen.

Insgesamt besteht die Schaltung aus Spannungsregler, Kontrastspannung, CCFL-Konverter (anstelle des LED-Backgrounds) und Bustreiber. Es fehlt nur noch ein Backlight-Kontroller, damit die CCFL-Röhre nicht ständig an sein muss. Derzeit gibt es nur einen einfachen Schalter.

ToDo: Den kompletten Schaltplan muss ich noch erstellen. Derzeit funktioniert das Zurücklesen des Status` nicht. Woran es liegt, kann ich noch nicht sagen. Die Schaltung funktioniert auch ohne.

Treiber

Es gibt unterschiedliche Möglichkeiten das GLCD am PC zu betreiben. Aktuell verwende ich folgende Konfiguration am SPP-Port des nForce 630a-Chipsatzes meines Gigabyte-Boards.

WaitMethod=3
WaitPriority=10

[t6963c]
# t6963c driver
#  This is a driver module for the Toshiba T6963C LCD controller.
#  Default size: 240 x 64
Driver=t6963c
Device=/dev/parport0
Width=240
Height=64
UpsideDown=no
Invert=no
RefreshDisplay=1
Wiring=0
FontSelect=8
AutoMode=yes
StatusCheck=no

Wenn folgender Befehl zu einer Anzeige auf dem LCD führt, ist die Verkabelung korrekt.

testserdisp -n T6963 -p /dev/parport0 -o "WIDTH=240;HEIGHT=64;WIRING=0"
hardware/lcd.txt · Zuletzt geändert: 07.10.2012 18:31 (Externe Bearbeitung)