Hallo, ich habe einen seltsamen Effekt festgestellt. Bei folgendem Code: Wait (10); RW = 1; Wait (10); EN = 1; Wait (10); RS = 1; Wait (10); messe ich das beigefügte Ergebnis (s. Anhang). EN wird ausgeschaltet wenn RS auf "1" gesetzt wird. Wie kann so etwas passieren? Wenn ich die Reihenfolge von EN und RS oben vertausche, dann wird RS ausgeschaltet sobald EN gesetzt wird. Vielleicht hat jemand eine ähnliche Erfahrung gemacht und kann mir helfen. Grüße gruser
Meine recht trübe Glaskugel sagt, RS und EN könnten vielleicht im selben Byte liegen. Und RS in einem anderen..??
Alle Bits liegen im selben Byte. bit RS @ PORTC.2; // Ausgang bit RW @ PORTC.1; // Ausgang bit EN @ PORTC.3; // Ausgang TRISC = 0b.1110.0001;
Carsten du bist mein Held! Hatte noch nie einen IC der sowas kann. Vielleicht für andere die das gleiche Problem haben: Habe einfach wie vorgeschlagen PORT gegen LAT ausgetauscht und schon funktioniert es: bit RS @ LATC.2; // Ausgang bit RW @ LATC.1; // Ausgang bit EN @ LATC.3; // Ausgang Danke noch einmal! Grüße gruser
Das ist doch ein alter Hut und bekannter PIC-Bug, wer sprut liest, weiss mehr: http://sprut.de/electronic/pic/fallen/fallen.html#inout
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.