Wir müssten schon wissen, wie das LCD an den PIC angeschlossen ist.
(Welche Ports)
Ansonsten stelle ich dir mal meine Routine zur Verfügung. Ich konnte
sie noch nicht testen, die Platine lässt noch auf sich warten. Aber
du bekommst vielleicht mal einen überblick.
Die Funktion ist für das "EA DIPS082-HNLED" mit dem KS0066 ausgelegt.
Benutzt wird ein PIC18F4550 also kannst du den Code so nicht
verwenden, da mein PIC einen größeren Befehlssatz und ein anderes
Speichermanagement besitzt. Also nicht wundern, wenn hinter den
Assembleranweisungen noch eine 0 oder 1 steht. Eine 0 bedeutet
Zugriff in die Special-Function-Register (PORTA, TRISA, STATUS, ...)
und eine 1 einen Zugriff auf den frei benutzbaren Speicher.
Grob könnte man sagen: eine 0 bedeutet eine Adresse zwischen
0x00 und 0x19 bei dir und eine 1 meint eine Adresse ab 0x20 aufwärts.
Allerdings ist die Bank noch nicht berücksichtigt.
Du müsstest noch die Delay-Routinen an deine Taktrate anpassen.
Meine sind für 10MHz ausgelegt (Also für einen 40MHz Quarz).
Ich könnte dir die Routinen anpassen, bräuchte dann aber wie weiter
oben schon gesagt die Portbelegung.
Viele Grüße
Sebihepp