Marcus K. schrieb:
ich schreibe in Luna
Poste mal das Programm als Dateianhang, sonst gibt das nur Rätselraten.
Harald K. schrieb:
Oder meinst Du die 64 Bytes für acht nutzerdefinierte Zeichen, die der
HD44780 mitbringt?
In ASM sieht das so aus wie im Anhang.
Der Clou, man muss Steuerwort richtig setzen. Sonst ist man im anderen
Controlset drin.
Userdefinierte Charakters:
Bei den meisten LCDs können die im ASCII-Fernschreibcode als Verbindungsstatus"- und "Steuerzeichen" eigentlich hierbei unbenutzt gebliebenen Codes hex 00 bis hex 07 als freie Adressen zur Zwischenspeicherung von selbst definierbaren Zeichen verwendet werden. Das Charakter-RAM besitzt also auf den ASCII-Codes hex 00 bis hex 07 acht freie Speicherpositionen, denen man jeweils Charakters fest zuordnen kann, die auf der 5x7-Dotmatrix pixelweise selbst erstellt wurden. (Wenn man den Cursorbereich dazurechnet, sind es sogar acht Zeilen.) Dazu sind pro Zeichen (nach Setzen des Steuerbefehls) noch insgesamt acht Schreiboperationen nötig.
Zunächst sendet man im Kommandomodus (RS auf "low") den Steuerbefehlssatz:
DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L H X X X X X X = „set CGRAM address
DB6 = high => Set CGRAM address (ca. 50 Mikrosekunden)
ldi temp, 0x40
rcall kommando
und legt so erst einmal das erste neu zu erstellende Zeichen auf den ASCII-Code hex 00 fest.
Irgendwie ähnlich wird sich das Problem des TO lösen lassen.
ciao
gustav