68 Port szeregowy, tryb 0
c)
Zaplt. n <wwr*rou»*ni« R1 > do SCONj I___
1
ji_
i
Kys. 2.19b,c. Port szeregowy w trybie O, przebiegi czasowe przy nadawaniu i odbieraniu ] znaku i
Odczytywanie znaku jest inicjowane programowo przez wy zero w a- j nie w słowie SCON znacznika RI, przy REN — 1. Powoduje to uaktywnienie bloku sterowania odbiornika (rys. 2.19a), który po j upływie jednego cyklu maszynowego wytwarza sygnał wewnętrzny RECEIYE = 1. W czasie, gdy RECEIVE = 1, w stanie S6P2 każdego j cyklu maszynowego zawartość odbiorczego rejestru przesuwającego j jest przesuwana o jedną pozycję w prawo. Na skrajną, lewą pozycję jest wpisywana wartość z linii P3.0 (RXD), próbkowana w stanie S5P2 tego j cyklu maszynowego, czyli jest przyjmowany następny bit Ponadto (przy j RECEIVE = 1) na linię P3.1 (TXD) jest wysyłany sygnał taktujący, taki sam jak przy wysyłaniu znaków (rys. 2.19c). Narastające zbocze tego sygnału powinno spowodować przesunięcie zawartości zewnętrznego j rejestru przesuwającego, z którego są odbierane dane. Po odebraniu j ośmiu bitów, w stanie S1P1 cyklu maszynowego, dziesiątego w kolejności po tym, w którym został wyzerowany bit RI, zostaje wyzerowany Sygnał RECEIYE, zawartość odbiorczego rejestru przesuwającego jest >
j
przepisywana do rejestru wejściowego SBUF, a do znacznika RI w słowie SCON jest wpisywana jedynka. Ustawienie znacznika RI jest dla procesora sygnałem końca operacji odbierania znaku i jego gotowości do odczytania.
Ustawienie znacznika TI lub RI jest sygnałem zgłoszenia przerwania z portu szeregowego (patrz punkt 2.8). Przyjęcie tego przerwania (gdy nie jest ono zamaskowane) nie powoduje automatycznego wyzerowania znaczników, a zatem ich stan może być w programie obsługi odczytany w celu identyfikacji przyczyny przerwania. Znaczniki powinny zostać wyzerowane programowo.
2.7.2.
Tryby i, 2,3
W trybach 1, 2 i 3 (tabl. 22) port szeregowy pełni funkcję niezależnego nadajnika (linia P3.1 - TXD) i odbiornika (linia P3.0 - RXD) asynchronicznej transmisji szeregowej. Tryby różnią się między sobą długością (liczbą bitów) przesyłanych słów oraz sposobem określenia szybkości transmisji
O Bit
tt.rtu
T"— 1_L“.
S bitóu danych
Bit
•topu
^ T | ||
i m |
09 |
04 j 07 | |
0
I CO
I Bat i «tOPU
SBUF
8 bit Su danych
00 |
Ol |
02 |
03 |
04 |
OS |
06 j 07 |
SBUF RBB
Rys. 2JQl Format znaku: a) w trybie 1; b) w trybie 2, 3
Formaty przesyłanych znaków przedstawiono na rys. 220. Znak składa się z bitu startu (zawsze 0), ośmiu bitów danych w trybie 1 albo dziewięciu w trybie 2 i 3 oraz bitu stopu (zawsze 1). Pierwszy bit danych jest bitem najmniej znaczącym. Słowo danych (D0...D7) do wysłania jest pobierane z rejestru wyjściowego SBUF. Odebrane słowo danych