Programowany układ we-wy szeregowego - 8251
wyprowadzenia:
- D0-D7: magistrala wykorzystywana do przesyłu danych,
słów sterujących, zawartości rejestru stanu
- RD: sygnał odczytu (aktywne poziomem L)
- WR : sygnał zapisu (aktywne poziomem L)
- C/ D:interpretacja zawartości magistrali D0-D7
0 - przesył danych
1 - przesył słów sterujących lub odczyt rejestru stanu
- CS:chip select (aktywne poziomem L)
- RST: reset
- CLK: sygnał zegarowy (clock)
- DTR: gotowość układu do pracy, zapisanie stanu aktywnego '0' do rejestru sterującego (aktywne poziomem L)
- DSR: gotowość do wysłania danych( odp. na DTR), testowanie słowa stanu (aktywne poziomem L)
- RTS : żądanie rozpoczęcia transmisji (aktywne poziomem L)
- CTS: potwierdzenia rozpoczęcia transmisji (aktywne poziomem L)
- TxD : wyjście danych szeregowych
- TxC : zegar
- TxE : pusty nadajnik
- TxRDY: sygnał gotowości nadajnika(informacja przepisywana z rej. bufora do rej. nadajnika)
- RxD : wejście danych szeregowych
- RxC : zegar
- RxRDY: sygnał gotowości odbiornika (informacja przepisywana z rej. odbiornika do rej. buforowego)
- SYNDET/BREAKDETECTED : sygnał synchronizacji transmisji synchr./asynchr.
opis
Programowalny układ wejścia-wyjścia szeregowego. Poniżej przedstawiona jest budowa, działanie, tryby pracy oraz sposób
programowania tego układu.
Budowa
- rejestr buforowy nadajnika PIPO
- rejestr przesuwny nadajnika PISO
- rejestr buforowy odbiornika PIPO
- rejestr przesuwny odbiornika SIPO
- rejestr stanu
- rejestr sterujący
- rejestr służący do synchronizacji
Działanie
Informacja przeznaczona do wysłania zapisywana jest do rejestru
buforowego nadajnika, stamtąd przepisywana jest do rejestru nadajnika
(generowany jest sygnał TxRDY) i wysyłana. Jeśli nadajnik jest pusty generowany
jest sygnał TxE. Informacja odebrana przez układ zapisywana jest do rejestru przesuwnego
odbiornika a następnie do rejestru buforowego(RxRDY) skąd może zostać odczytana
przez jednostką centralną.
Tryby pracy
- Transmisja asynchroniczna
- częstotliwość zegara może być k razy większa od częstotliwości nadawania ( k= {1,16,64})
- długość znaku : 5-8 bitów
- długość bitu stopu :1T , 1,5T, 2T (T - czas trwania bitu)
- możliwość kontroli poprawności transmisji (bit parzystości /nieparzystości)
- synchronizacja: wykrywanie przerwy w nadawaniu
- Transmisja synchroniczna
- częstotliwość zegara może być k razy większa od częstotliwości nadawania ( k= {1,16,64})
- ilość znaków synchronizacji : 1 lub 2
- możliwość kontroli poprawności transmisji (bit parzystości /nieparzystości)
- synchronizacja:
- zewnętrzna (SYNDET traktowany jako wejście):
- wewnętrzna (SYNDET traktowany jako wyjście, SYNC - znak synchronizacji):
Błędy transmisji
- parzystości/ nieparzystości(transmisja asynch. i synch.)
- przepełnienia (transmisja asynch. i synch.) - przed odczytaniem znaku został załadowany inny
- bitu stopu (transmisja asynch.) - w miejscu bitu stopu (stan wysoki) jest stan niski
Wystąpienie błędu nie przerywa transmisji.
Programowanie
Przed przesłaniem słowa trybu układ musi być wyzerowany zewnętrznie (reset) lub wewnętrznie
(odpowiednia deklaracja w słowie Control). Formaty słów sterujących dla dwóch rodzajów transmisj podano poniżej.
Słowo sterujące dla transmisji asynchronicznej
- D1 D0 wybór szybkości transmisji
00 - zarezerwowane dla tr. synchronicznej
01 - k = 1
10 - k = 16
11 - k = 64
- D3 D2 - długość słowa
00 - 5 bitów
01 - 6 bitów
10 - 7 bitów
11 - 8 bitów
- D4 - zezwolenie na kontrole parzystości/nieparzystości
0 - kontrola poprawności
1 - nie ma zezwolenia na kontrole
- D5 - rodzaj kontroli
0 - bit nieparzystości
1 - bit parzystości
- D6 D7 - długość bitu stopu
00 - zabronione
01 - 1 T
10 - 1,5T
11 - 2T
Słowo sterujące dla transmisji synchronicznej
- D1 D0 - 00
- D3 D2 - długość słowa
00 - 5 bitów
01 - 6 bitów
10 - 7 bitów
11 - 8 bitów
- D4 - zezwolenie na kontrole parzystości/nieparzystości
0 - kontrola poprawności
1 - nie ma zezwolenia na kontrole
- D5 - rodzaj kontroli
0 - bit nieparzystości
1 - bit parzystości
- D6 - rodzaj synchronizacji
0 - SYNDET jako wy - synchronizacja wewnętrzna
1 - SYNDET jako we - synchronizacja zewnętrzna
- D7 - ilość znaków synchronizujących
0 - pojedynczy znak
1 - dwa znaki
Słowo sterujące CONTROL
- D0 - TXEM
1 - odblokowanie nadajnika
- D1 - DTR
1 - wymusza zmianę na wyjściu DTR (1 - 0)
- D2 - RXEN
1 - odblokowanie odbiornika
- D3 - SBRK
1 - wymusza stan niski na linii TxD
- D4 - ER
1 - zerowanie błędów PE,OE,FE w rejestrze stanu
- D5 - RTS
1 - wymusza zmianę na wyprowadzeniu RTS (1 - 0)
- D6 -IR
1 - wymusza zerowanie
- D7 - EH
1 - synchronizacja wewnętrzna (dotyczy transmisji synchronicznej)
Słowo stanu (informacje zawarte w rejestrze stanu)
- D0 - TxRDY
0->1 -nastąpiło przepisanie znaku z rejestru TA do TB (rejestr buforowy nadajnika pusty)
1->0 - znak przepisany z TB->TA i nadajnik odblokowany
- D1 - RxRDY
1 - znak przepisany z wejścia szeregowego do rejestru buforowego
- D2 - TxE (odzwierciedla stan wyprowadzenia o tej samej nazwie)
- D3 - PE
1 - wystąpił błąd parzystości
- D4 - OR
1 - wystąpił błąd przepełnienia
- D5 - FE
1 - wystąpił błąd bitu stopu
- D6 - SYNDET/BREAKDETECTED (powtórzenie stanu wyprowadzenia)
- D7 - DSR
1 - aktywna linia DSR
Przygotowała: Agnieszka Dusik
główna |
technologie |
indeks tematyczny |
indeks alfabetyczny