Hallo! Habe bereits erfolgreich ein LCD(4x27) vom 8 in den 4bit modus geschaltet und kann damit auch Zeichen ausgeben. Allerdings sind die Routinen auf den ersten Controller(erste zwei Zeilen) angepasst. zB: bsf en1 ; en1 ist die enable Leitung vom 1. Controller nop bcf en2 Ich würde nun gerne alle vier Zeilen nutzen wollen, müsste dazu allerdings die ganzen Routinen kopieren und e1 durch e2 ersetzen um auch den zweiten Controller zu initialisieren und anschliessend steuern zu können. Es erscheint mir aber zu umständlich bzw. nicht sehr elegant und zudem schafft eine solche Methode doppelt so viel Code. Könnte ich nicht irgendwie eine Variable für die beiden enable Leitungen der Controller festlegen um nur eine Version der Steuerungsroutinen verwenden zu können? zB: if (irgendwas) #define x PORTB, 2 ; x ist nun en1 else #define x PORTB, 3 ; x wäre nun en2 (also enable controller 2) call routine .. .. routine bsf x nop bcf x Ich weiss, dass mein Beispiel so nicht funktionieren kann zumal es assembler konform sein sollte, aber ich hoffe dass meine Idee verständlich ist. Gruß Lukas
http://www.mikrocontroller.net/forum/read-1-223300.html#224216 http://www.mikrocontroller.net/forum/read-1-164017.html#164026 ...
Danke! Also der Inhalt des ersten Links hat keine Lösung zu meiner Fragestellung. Im zweiten verstehe ich einiges nicht.. Was bedeutet: .def lcdcontroller1=r21 .def lcdcontroller2=r22 sind r22 und r21 Variablen oder Pins? Vielleicht sollte ich bemerken, dass ich mit einem PIC arbeite.
rxx sind bei den Atmel-µC die Registernamen. Die werden einfach nur mit einem anderen, beschreibenden Namen versehen.
> Was bedeutet: > .def lcdcontroller1=r21 > .def lcdcontroller2=r22 > sind r22 und r21 Variablen oder Pins? Das ist nicht von mir und auch sachlich falsch. Das wird aber in den Beiträgen erklärt. An die Anhänge vom Dateityp *.inc komme ich momentan nicht ran, ist vermutlich versehentlich den letzten Scriptänderungen zum Opfer gefallen... Deshalb hänge ich die LCD-Routinen hier noch mal mit verändertem Dateinamen (.asm) an. Wie der Aufruf erfolgt, kann man im Anhang dieses Beitrags sehen: http://www.mikrocontroller.net/forum/read-1-164017.html#164207 > Vielleicht sollte ich bemerken, dass ich mit einem PIC arbeite. Das sollte man eigentlich schon im ersten Posting mit der Frage bemerken. ...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.