-
-
Erfahrener Benutzer
Robotik Einstein
Warum schaltest Du das Port immer wieder auf Eingang und schreibst dann auch noch eine 0 rein ?
Laß das Daten-Port nach Verlassen einer Aktion doch so wie es ist.
Die Steuerleitungen müssen natürlich so gesetzt sein, daß z.B. OE vom SRAM auf High ist, damit keine Daten auf den Bus gelangen.
WR und LE müssen ebenfalls High sein ..... LE .... High ??? NEIN; LE muß Low sein, weil bei High alles von den Latchs übernommen wird, was auf dem Bus ist. Der 573 ist nicht flanken-getriggert !!!
In meinem Assembler-Programm setze ich ein Flag, wenn Port = Ausgang ist und lösche dieses Flag, wenn Port = Eingang.
In meiner Schreib-Routine prüfe ich das Richtungs-Flag und schalte ggf. erst das Port auf Ausgang um, bei meiner Lese-Routine das Gleiche in grün.
Bei mir sind es allerdings nur 5 Adress-Leitungen auf PORTD bei einem PIC16F877; die Datenleitungen führen zu 4 x 4 x 74HC573 mit nachfolgenden LEDs und Relais, sowie zu 4 x 4 x 74HC541 zur Abfrage von (Kontakt-)Zuständen.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen