Titelbild Mikrocontroller

8.1.1. Konfiguration der Pins

Jeder Port Pin korrespondiert mit drei Bits in den drei Registern: DDxn, PORTxn und PINxn.

Das DDxn Bit im DDRx-Register legt die Richtung des Pins fest. Wenn das DDxn Bit mit einer logischen 1 beschrieben wird, dann ist der Pin als Ausgang konfiguriert. Ist das DDxn Bit gelöscht, so arbeitet der Pin als Eingang.

Wenn das PORTxn Bit mit einer logischen 1 beschrieben wird und der Pin als Eingang konfiguriert ist, dann sind die internen pull-up Widerstände eingeschaltet. Um die pull-up Widerstände auszuschalten, muss das PORTxn Bit mit einer Null beschrieben werden oder der Pin als Ausgang konfiguriert werden. Die Port Pins gehen in den tristate wenn ein Reset auftritt auch wenn keiner der Takte läuft.

Wenn das PORTxn Bit mit einer logischen 1 beschrieben wird und der Pin als Ausgang konfiguriert ist, so wird der Port Pin auf High gesetzt. Umgekehrt wird der Port Pin auf Low gesetzt, wenn das PORTxn Bit mit einer Null beschrieben wird während der Pin als Ausgang konfiguriert ist.

Wenn ein Port Pin zwischen tristate (DDxn, PORTxn = 00) und Ausgang mit High (DDxn, PORTxn = 11) umgeschaltet werden soll, so muss ein Zwischenschritt eingeführt werden, in dem entweder die pull-up Widerstände eingeschaltet werden (DDxn, PORTxn = 01) oder der Ausgang zunächst auf Low geschaltet wird (DDxn, PORTxn = 10). Normalerweise ist das Einschalten der pull-up Widerstände ausreichend, wenn die angeschlossene Schaltung so hochohmig ist, dass ein echtes High am Port Pin keinen Unterschied zu einem High über einen pull-up Widerstand darstellt. Wenn dies nicht der Fall ist, können die pull-up Widerstände mit dem PUD-Bit im SFIOR Register für alle Ports ausgeschaltet werden.

Ein Umschalten zwischen Eingang mit pull-up Widerstand und Ausgang mit Low-Pegel stellt das gleiche Problem dar. Hier muss der Anwender einen Zwischenschritt über tristate (DDxn, PORTxn = 00) oder Ausgang mit High-Pegel (DDxn, PORTxn = 11) durchführen.
Konfiguration eines Port-Pins

Konfiguration eines Port-Pins

Impressum