IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII Hinweise zum Betrieb von LCDs an den Units M 2.0 / M 1.2 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII ----------------------------------------------------------------- ANSCHLUSSBELEGUNG ----------------------------------------------------------------- Das für die Units vorgesehene LCD ist ein Standard-LCD 2x16 und ist am Application-Board 2.0 fest angeschlossen. Die Anschluss- belegung ist gegenüber den älteren Versionen von Unit und Applicationboard unverändert. Die Anschlussbelegung gilt auch für grössere LCDs. PIN 1 - GND PIN 2 - 5V PIN 3 - KONTRAST PIN 4 - RS (PORT 14) PIN 5 - RW (PORT 13) PIN 6 - E (PORT 15) PIN 7 - D0 PIN 8 - D1 PIN 9 - D2 PIN 10 - D3 PIN 11 - D4 (PORT 9) PIN 12 - D5 (PORT 10) PIN 13 - D6 (PORT 11) PIN 14 - D7 (PORT 12) Hinweise: Port 9 und Port 10 wird auch vom IIC-Bus benutzt, gleichzeitiger Betrieb von LCD und IIC-Bus ist aber uneingeschränkt möglich Port 16 ist frei, und wird am Application-Board zum Schalten der Hintergrundbeleuchtung verwendet. ----------------------------------------------------------------- Allgemeines zur Ansteuerung der LCDs ----------------------------------------------------------------- Ältere Programme (für die UNIT M 1.1) benutzen einen BASIC-Treiber zur Ansteuerung des LCD. Dieser ist zwar hinsichtlich der Anschlüsse kompatibel, läuft auf der M 2.0 aber bereits zu schnell für das LCD. Um diese Programme auch ohne grosse Änderungen an die neuen C-Control Versionen anzupassen gibt es den zweistufigen SLOWMODE Befehl. Details finden Sie in der Anleitung zur M 2.0 Der Betrieb mit der Unit M 1.2 sollte aber auch ohne SLOWMODE möglich sein. ----------------------------------------------------------------- Ansteuerung LCD 4x16 / 4x20 (Controller HD44780) ----------------------------------------------------------------- Viele Anwender benutzen grössere LCD. Obwohl das Betriebssystem direkt nur 2-zeilige LCD unterstützt können Sie die Zeilen-Befehle auch auf mehrzeilige LCDs anwenden. Für ein 4x20 LCD (und auch für ein 4x16 LCD) gilt in der Regel: L101 - Zeile 1, Pos 1 L201 - Zeile 2, Pos 1 L121 - Zeile 3, Pos 1 L221 - Zeile 4, Pos 1 Die Zeilen 3 u. 4 werden behandelt wie Zeile 1 u. 2 jedoch mit einem Offset von 20. L230 schreibt also an Zeile 4, Pos 10 ----------------------------------------------------------------- LCD mit KS0073 (nahezu HD44780 kompatibel) ----------------------------------------------------------------- LCDs mit dem KS0073 Controller (z.B. DIP204-4) benötigen im 4-Zeilen Modus eine zusätzliche Initialisierung und haben ausserdem eine andere Zuordnung von Adresse zu Zeile. define LCDPORT byteport[2] define OUTBYTE byte[1] define LCDDATA byte[2] print "#ON_LCD#";"#INIT#"; LCDDATA=&h24:gosub LCD_WRITECMD:pause 2 LCDDATA=&h09:gosub LCD_WRITECMD:pause 2 LCDDATA=&h20:gosub LCD_WRITECMD:pause 2 print"#L101#";"Z1"; print"#L133#";"Z2"; print"#L165#";"Z3"; print"#L233#";"Z4"; #lp goto lp '--------- ------WRITE HI NIBBLE LCD COMMAND ------------ #LCD_WRITECMD OUTBYTE=(LCDDATA shr 4) LCDPORT=OUTBYTE or &B01000000:LCDPORT=OUTBYTE and &B10111111 '--------------- WRITE LO NIBBLE ------------------------ OUTBYTE=(LCDDATA and &H0F) LCDPORT=OUTBYTE or &B01000000:LCDPORT=OUTBYTE and &B10111111 return ------------------------------------------------------------------- HINTERGRUNDBELEUCHTUNG ------------------------------------------------------------------- Wer einen DA-Port frei hat, kann ihn mit PORT 16 (LCD Beleuchtung) verbinden und dann die Beleuchtug dimmen. Wichtig ist in diesem Zusammenhang, dass der PORT 16 deaktiviert wird, wenn die Initialisierung des LCD erfolgt ist: LCD.INIT ( bzw. print"#ON_LCD#";"#INIT#";) DEACT LIGHT