58 7. Poi
Porty w mikrokontrolerach mogą mieć różną budowę wynikającą z prz znaczenia. Na rysunkach 7-1 * 7-4 są przedstawione schematy portów mikn kontrolerów rodziny '51. Wszystkie one zawierają przerzutnik typu D, który jej elementem rejestru danego portu umieszczonego w obszarze SFR. Dana wys tana na wyjście portu jest wpisywana właśnie do tego rejestru, np. rozkaze MOV PI,A, który powoduje przepisanie zawartości akumulatora do rejest portu PI. Odczytywanie danej z portu odbywa się poprzez bufory, przy czym w zależności od rozkazu, dana może być odczytana albo z rejestru portu, albo bezpośrednio z końcówki portu. Pozostałe elementy portów zależą od dodatko wego przeznaczenia danego portu. I tak w porcie PO, rysunek 7-1, znajduje $j przełącznik przełączający wejście tranzystora wyjściowego do magistrali adn sowej i bezpośrednio do magistrali danych, gdy mikrokontroler pobiera rozkaz z zewnętrznej pamięci programu lub komunikuje się z zewnętrzną parnię danych. Rejestr portu jest odłączony od końcówki i jego zawartość nie r wpływu na sygnał wyjściowy portu. W tym trybie pracy jest również aktywił tranzystor dołączony do zasilania, dzięki czemu można uzyskać większy prąd wyjściowy do sterowania wejść pamięci zewnętrznych. Gdy port PO pracuje iako normalny port, to tranzystor ten pracuje jak źródło prądowe.
Rys. 7-1. Schemat portu PO.
Ponieważ przez port P2 dodatkowo może być przesyłany tylko adn* (bardziej znaczący bajt), dlatego jego układ jest prostszy niż portu PO, rysunekp 2. Zawiera on rówmież przełącznik, dzięki któremu adres może być podany n* wyjście portu niezależnie od zawartości rejestru portu. Obciążeniem tranzystoj wyjściowego, podobnie jak w pozostałych portach jest rezystor, a w rzecz stości źródło prądowe.
Konstrukcja pozostałych portów wielofunkcyjnych, wspólna dla całej ń dżiny mikrokontrolerów '51 jest pokazana na rysunku 7-3. W tych portach ni ma przełącznika dla dodatkowej funkcji wryjściowej, a sygnał funkcji jest W i-\rrn»r-aH-/r»mr ł->r*r»r7o-7 hramlo MANTF) wcnńlnie 7 sypnąłem wviśrinwvm reiest
, portu. Dlatego, aby funkcja wyjściowa mogła być aktywna, do rejestru portu musi być wpisana jedynka.
Sygnał dodatkowej funkcji wejściowej z końcówki portu, poprzez dodatkowy bufor, jest doprowadzony do odpowiednich układów, na przykład do liczników, portu szeregowego, układu przerwań zewnętrznych, itp. Również w przypadku dodatkowej funkcji zewnętrznej do rejestru portu musi być wpisana jedynka, gdyż inaczej tranzystor wyjściowy zostanie wprowadzony w stan nasycenia, zwierając końcówkę portu do masy/ztegotez powodu, by nie blokować działania dodatkowych "funkcji, po zerowaniu mikrokontrolera rejestry wszystkich portów są ustawiane w stan 1.
odczyt
vcc
wewnętrzna magistrala danych ^
wpis do rejestru
odczyt końcówki
Rys. 7-2. Schemat portu P2.
wewnętrzna! magistrala _ danych
odczyt rejestru
dodatkowa
funkcja
wyjściowa
Wpis do rejestru
odczyt
końcówki
dodatkowa funkcja wejściowa Schemat portu wielofunkcyjnego.
D
*
I’jn
O
końcówka
Rys. 7-3.
ui . ^chemat portów jednofunkcyjnych jest przedstawiony na rysunku 7-4. W z,c tym sygnał z wyjścia rejestru portu steruje bezpośrednio tranzystorem