Mikrokontrolery i mikrosystemy -Z1
- Czytanie danych (pobieranie) podawanych z zewnątrz na wyprowadzenia portu, przez ten port polega na doprowadzeniu chwilowych stanów napięć na tych wyprowadzeniach (tzn. istniejących w momencie operacji czytania) do wewnętrznej szyny danych układu. Jest to realizowane przez uaktywnienie trójstanowego bufora sygnałem „czytanie”.
- Natomiast operacja wpisania (wprowadzenia) danej do portu powoduje, że chwilowy stan wewnętrznej szyny danych zostaje zapamiętany w elementach zapamiętujących poszczególnych linii (najczęściej są nimi przerzutniki typu D) i wystawiany na wyprowadzeniach portu za pośrednictwem aktywnego bufora trójstanowego. Stan wyprowadzeń portu pozostaje niezmienny, dopóki nie nastąpi kolejna operacja wpisania do portu.
- Linia portu równoległego jest linią wejściową, gdy bufor trójstanowy jest w stanie wysokiej impedancji. Uaktywnienie bufora trójstanowego sygnałem „kierunek”, ustawia linię jako wyjściową. Wówczas „1” na wyjściu przerzutnika odpowiada stan wysoki (około Vcc - napięcie zasilania mk) na wyprowadzeniu portu, a „0” stan niski (około 0 V).
• Są programowalne - zadania przekazywane są im do wykonania odpowiednimi rozkazami, dokładniej mówiąc przez ustawienie odpowiednich bitów w rejestrach konfiguracyjnych (sterujących), przez wpisanie danych do rejestrów danych.
• Charakteryzują się dużym stopniem autonomii w stosunku do procesora rdzeniowego. Przekazane im zadania wykonywane są samodzielnie, bez zaangażowania czasu procesora.
• Od strony procesora układy we/wy programowane są za pośrednictwem magistrali wewnętrznej. Układom tym zazwyczaj przypisane są:
• rejestry robocze (czyli rejestry danych zawierające wyniki ich działania),
• rejestry konfiguracyjne/sterujące służące do konfiguracji i sterowania urządzeniem peryferyjnym,
• rejestry statusu zawierające aktualny stan urządzenia: flagi przerwań, komunikaty o błędach, itp.
• O zakończeniu wykonywania zadań procesor informowany jest ustawieniem odpowiedniego bitu w rejestrze stanu urządzenia (najczęściej flagi przerwania) lub wysłaniem sygnału żądania przerwania o ile jest ono odblokowane.