Technika mikroprocesorowa
W przypadku konfiguracji linii jako wejściowa ustawienie bitu rejestru PORT aktywuje wewnętrzny rezystor podwieszający linie do zasilania, natomiast wyzerowanie bitu rejestru PORT wprowadza odpowiadająca mu linie w stan wysokiej impedancji.
Jako przykład przedstawiono rejestr danych portu D. Każdy jego bit odpowiada jednej linii. Wartość początkową wszystkich bitów to logiczne 0.
Rejestr danych portu D - PORTD
_Bit_ 7 6 5 4 3 2 10
Na/\\ ;i | PORTD7 | PORTD6 | PORTD5 | PORTD4 | PORTD3 | PORTD2 | PORTD I | PORTD1) |
Odczyt/zapis R/W R/W R/W RAV R/W RAV R/W R W
Wartość początkową 00000000
Przykładowy zestaw rozkazów podwiesza cztery młodsze linie: 0, 1, 2, 3 portu wejściowego D do zasilania, natomiast cztery starsze linie: 4, 5, 6, 7 wprowadza w stan wysokiej impedancji:
Ldi r!6, OhOOOOOOOO OutDDRB, rl6 Ldi r 16, ObOOOOllll OutPORTB, rló
W przypadku konfiguracji linii jako wyjściowa podanie na linie stanu logicznego 0 lub logicznej 1 pełni role sterowania urządzeniem zewnętrznym.
Przykładowy zestaw rozkazów podaje na cztery młodsze linie: 0, 1, 2, 3 portu wyjściowego D stan logiczny 1, natomiast na cztery starsze linie: 4, 5, 6, 7 podaje stan logiczny 0:
Ldi rló, Obili 11111 OutDDRB, rló Ldi rló, ObOOOOllll OutPORTB, rló
Rejestr wejściowy PIN
Rejestr wejściowy portu A nosi nazwę PINA i odpowiednio PINB dla portu B, PINC dla portu C, PIND dla portu D.
PIN właściwie nie jest rejestrem, umożliwia on dostęp do fizycznego wyprowadzenia linii portu. Odczyt wartości rejestru PIN pozwala stwierdzić stan występujący na wyprowadzeniu linii portu.
Jako przykład przedstawiono rejestr wejściowy PIND portu D. Każdy jego bit odpowiada jednej linii. Wartość początkową nie jest określona.
Rejestr wejściowy portu D - PIND
Bit |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Nazwa | |
PIND7 | |
| PIND6 | |
| PIND5 | |
| PIND4 | |
| PIND3 |
| PIND2 |
| P1ND1 | |
| PIND0 | |
Odczyt/zapis |
R |
R |
R |
R |
R |
R |
R |
R |
Wartość początkową |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A - wartość nieustalona
Przykładowy rozkaz wczytuje stany występujące na fizycznym wyprowadzeniu linii portu D do rejestru rló:
In rló, DDRB
17