2014-12-15 7 views
5

Im Bild Mikrocontroller TRIS Register bestimmt, ob Port würde als Eingabe oder Ausgabe und PORT Register würde den Inhalt bestimmen, was geschrieben werden soll (im Falle der Ausgabe) oder lesen (im Falle der Eingabe).Wie konfiguriert man 8051 Pins als Ein-/Ausgang?

Aber in 8051 gibt es keine solche Art von TRIS-Register. Um das Register als Ein-/Ausgang zu konfigurieren, müssen Sie in das gleiche Register schreiben und die Daten erneut schreiben/lesen, um das gleiche Register zu verwenden. Habe ich Recht damit? Wenn ja, dann bitte erläutern, wie ist es möglich? Wenn nicht, dann erkläre bitte die korrekte Theorie dazu.

+0

Um Daten in PIC und den meisten anderen Mikrocontrollern zu lesen und zu schreiben, verwenden Sie auch das gleiche Register für diesen Port. Es ist nur so, dass andere MCUs ein Register zum Konfigurieren des Pins als Eingabe oder Ausgabe haben. Es gibt keine in 8051 –

Antwort

5

Eigentlich gibt es nichts, um einen Standard 8051 Pin als Eingang zu setzen; Alle Pins sind immer bidirektional.

Wenn Sie jedoch eine '0' an einen Pin schreiben, schaltet es den Open-Drain-Treiber ein und es gibt keine Möglichkeit, dass irgendetwas externes es zu etwas anderem als '0' zwingt Deshalb wird der Eingang nur Lesen Sie '0' - unabhängig von dem externen Signal, das Sie lesen möchten.

Wenn Sie jedoch eine '1' an einen Pin schreiben, wird der Open-Drain-Treiber ausgeschaltet und ein externes Signal kann den Pin entweder hoch oder niedrig annehmen - und der Eingang kann den Status des externen Signals lesen.

Die alle in Kapitel 3 der "Bibel" erklärt für die 8051:

Kapitel 3 - 80C51 Familie Hardware Beschreibung: http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_HARDWARE_1.pdf

Start bei p2 Lesen, "Port Aufbau und Betrieb" und Achten Sie besonders auf Abbildungen 4 & 5.

Verwandte Themen