Transmisja szeregowa synchroniczna i asynchroniczna

Transmisja szeregowa synchroniczna i asynchroniczna

Transmisja szeregowa asynchroniczna (startowo-stopowa).

Transmisja szeregowa może być realizowana w dwóch podstawowych trybach: synchronicznym i asynchronicznym. W żadnym z tych trybów (mimo słowa synchroniczny) nie jest przesyłany równolegle do danych przebieg zegarowy taktujący transmisję (czyli sygnalizujący pojawianie się kolejnych bitów). Ma to uzasadnienie chociażby czysto ekonomiczne: przesyłanie taktu zegara wymagałoby osobnej linii, co przy dalekich połączeniach przez sieć telekomunikacyjną jest nieopłacalne. Z drugiej strony, zegary nadawczy i odbiorczy muszą być ze sobą zsynchronizowane (w sensie tej samej częstotliwości i ustalonej fazy) na czas odbioru informacji. Różnica pomiędzy transmisją asynchroniczną i synchroniczną polega na tym, że dla transmisji synchronicznej zegary te są zsynchronizowane praktycznie przez cały czas trwania połączenia, a dla transmisji asynchronicznej tylko na czas transmisji jednej ramki.

Koncepcję działania szeregowej transmisji asynchronicznej przedstawia rysunek.

Zasada transmisji szeregowej asynchronicznej.

Przed realizacją transmisji muszą być uzgodnione następujące parametry:

• częstotliwość zegara nadawczego i odbiorczego (muszą być jednakowe, dlatego użyto terminu: zegar nadawczo-odbiorczy),

• format transmitowanej ramki (rodzaj bitów startu i stopu, format przekazywanego znaku, czyli liczba bitów danych, obecność bitu kontroli parzystości itp.). Ramka dla transmisji szeregowej w literaturze anglosaskiej jest często oznaczana skrótem SDU (ang. Serial Data Unit). Ponadto jako wewnętrzny parametr odbiornika musi być ustalony stosunek częstotliwości zegara próbkującego do częstotliwości zegara nadawczo-odbiorczego. W przykładzie na rysunku wynosi 6.

Bit startu z reguły przyjmowany jest jako bit o wartości O. Dlatego linia w stanie spoczynku, kiedy nie jest nadawany znak, utrzymywana jest w stanie 1. Nadajnik rozpoczyna transmisję od przesłania bitu 0 jako bitu startu. Następnie przesyłane są kolejne bity zgodnie z ustalonym formatem transmitowanej ramki. Są to bity danych, ewentualnie bit kontroli parzystości i bity stopu. Kolejne bity przesyłane są cyklicznie ze stałą częstotliwością odmierzaną przez zegar nadawczy. Po zakończeniu nadawania ramki nadajnik może przejść w stan spoczynku (nic nie nadając) lub rozpocząć nadawanie kolejnej ramki.

Zegar próbkujący odbiornika sprawdza stan linii, przy czym jego częstotliwość powinna być przynajmniej o około rząd wielkości większa niż częstotliwość zegara nadawczo-odbiorczego. Zapewnia to szybkie wykrycie zmiany stanu linii z 1 na O. Po wykryciu takiej zmiany układy logiczne stawiają hipotezę o rozpoczęciu transmisji znaku, czyli odebraniu bitu startu. Po czasie równym połowie okresu zegara nadawczo-odbiorczego ponownie sprawdzany jest stan linii i w przypadku ponownego stwierdzenia zera uruchamiany jest zegar odbiorczy. Impulsy tego zegara powodują odczytanie na linii wartości kolejnych bitów. Moment uruchomienia zegara odbiorczego w połowie czasu trwania nadawania bitu ma bardzo istotne znaczenie. Wyjaśnia to położenie impulsu zegarowego w wycieniowanej elipsie. Z powodu fluktuacji częstotliwości zegara odbiorczego (które zawsze mają miejsce) impuls ten pojawił się nieco wcześniej. Nie spowodowało to jednak błędu odczytu wartości bitu (dalej czytamy wartość bitu numer 2). W przypadku ustawienia impulsu na przykład na początku czasu nadawania bitu nastąpiłby najprawdopodobniej błąd i odczytalibyśmy jako bit 2 wartość bitu 1.

Odbiornik przerywa odczytywanie wartości bitów po ustalonej liczbie bitów. Ustalenie to jest konieczne, ponieważ wartości bitów danych mogą być dowolne, 1 lub 0, i w związku z tym nie ma żadnej możliwości zasygnalizowania końca ramki. Także ewentualny bit stopu nie ma tu żadnego znaczenia. Jego zadaniem jest zapewnienie przejścia linii na pewien czas w stan 1, nawet gdy transmisja kolejnej ramki rozpoczyna się natychmiast po zakończeniu nadawania poprzedniej. Ułatwia to wykrycie kolejnego bitu startu, ale nie jest konieczne. Dlatego, przykładowo, liczba bitów stopu może wynosić zero, jeden, półtora lub dwa. Oczywiście półtora bitu stopu oznacza czas trwania jedynki przez półtora okresu zegara nadawczo-odbiorczego. Z roli, jaką pełni bit stopu, wynika też jego wartość. Musi on mieć zawsze przeciwny znak niż bit startu.

Podsumowując, w transmisji szeregowej asynchronicznej zapewniamy synchronizację zegarów nadawczego i odbiorczego na czas transmisji jednej ramki. Po odebraniu znaku zegar odbiorczy jest wyłączany i odbiornik oczekuje na kolejny bit startu. Nadajnik w przypadku braku informacji do przesyłania utrzymuje na linii stan wysoki (1).

Rodzaje transmisji.

Przy przesyłaniu informacji cyfrowej, na przykład w modemach, stosuje się transmisję zarówno synchroniczną, jak i asynchroniczną. Tranmisja asynchroniczna zapewnia synchronizację zegarów nadawczego i odbiorczego na czas przesyłania ramki z jednym znakiem (wartością). W transmisji synchronicznej przesyłamy zwykle bloki danych. Synchronizacja zegarów nadawczego i odbiorczego utrzymywana jest bez przerwy. W przypadku braku informacji do przesłania transmitowane są ramki synchronizujące. Różnice pomiędzy transmisją asynchroniczną i synchroniczną zilustrowano na rysunku.

Transmisja asynchroniczna i synchroniczna.

Transmisję synchroniczną stosuje się z reguły tam, gdzie przesyła się większe ilości informacji i jest wymagana większa szybkość transmisji.

Rodzaje połączeń dla łącza szeregowego.

Połączenie szeregowe pomiędzy dwoma obiektami może zapewniać transmisję w jednym kierunku lub w obu. Pierwszy przypadek może na przykład dotyczyć przesyłania danych pomiarowych. gdzie nie zakłada się sterowania układem pomiarowym. W przypadku przesyłania danych w dwie strony dane te możemy nadawać na przemian (bardzo dobrym, aczkolwiek nie cyfrowym przykładem byłoby tu tak zwane walkie-tałkie: jeden mówi, drugi słucha i na odwrót) lub nadawać je w dwóch kierunkach jednocześnie. Nazwy poszczególnych przypadków połączeń i symboliczne kierunki transmisji pokazano na rysunku.

Sposoby realizacji transmisji szeregowej.

Możemy więc mówić o łączu simpleksowym, półdupleksowym i dupleksowym (czyli inaczej o pełnym dupleksie).

Interfejsy komputerowe

Standard RS 232C

RS 232C jest standardem interfejsu szeregowego. Został opracowany na potrzeby obsługi modemów (o czym świadczą chociażby nazwy i zestaw sygnałów sterujących) przez amerykańskie stowarzyszenie Electronic Industries Association - EIA). Standard ten zastał później przyjęty w Europie przez komitet normalizacyjny CCITT i otrzymał oznaczenie V24. W pecetach stał się standardem łącza szeregowego. System operacyjny nadaje łączom szeregowym nazwy COMn (n - numer łącza). Oprócz obsługi modemów umożliwia przykładowo podłączanie takich urządzeń, jak mysz czy drukarka (choć ta ostatnia będzie pracować zdecydowanie wolniej niż przy użyciu złącza równoległego). Za pomocą gniazd RS 232C możemy połączyć ze sobą dwa komputery, co umożliwi transmisję informacji pomiędzy nimi (jest to też możliwe do osiągnięcia za pośrednictwem łącza równoległego, lecz przy mniejszej odległości). Obecnie, przy obecności magistrali USB, interfejs ten zdecydowanie stracił na znaczeniu.

Interfejs RS 232C realizuje transmisję szeregową asynchroniczną (tak zwaną transmisję startowo-stopową).

Parametry elektryczne interfejsu RS 232C.

Określenia poziomów logicznych dla interfejsu RS 232C różnią się zdecydowanie od wartości stosowanych wewnątrz systemu, gdzie obowiązują tak zwane poziomy TTL-owskie (O logiczne od około 0=1,4 V i 1 logiczna od 2,4=5 V). Poziomy logiczne TTL są określone napięciami unipolarnymi (czyli jednego znaku, konkretnie napięciami dodatnimi), podczas gdy interfejs RS 232C dla określenia poziomów logicznych używa napięć zarówno dodatnich, jak i ujemnych. Poziom logiczny 0 może być reprezentowany przez napięcia z zakresu od +3 do +5 V, a logiczne 1 jest reprezentowane przez wartości wybrane z zakresu od -3 do -15 V. Zwiększenie wartości napięć i zastosowanie napięć o obydwu znakach pozwala zwiększyć odporność sygnału na zakłócenia i przesyłać informacje na większe odległości (niż przykładowo interfejs Centronics, który używa poziomów TTL). Własności elektryczne interfejsu RS 232C ilustruje rysunek.

Poziomy logiczne interfejsu RS 232C.

Warto zwrócić uwagę, że podczas oglądania przebiegu elektrycznego dla RS 232C na przykład na oscyloskopie zobaczymy przebieg „odwrócony" (zanegowany) w stosunku do wartości TTL. Wynika to oczywiście z przyjętych wartości elektrycznych dla logicznej jedynki i zera.

Sygnały sterujące interfejsu RS 232C.

Interfejs RS 232C wywodzi się z modemów, dlatego też przy jego opisie stosowana jest terminologia związana z transmisją informacji pomiędzy komputerami przy użyciu modemów i sieci telekomunikacyjnej. W transmisji tej wyróżnia się dwa rodzaje urządzeń:

Terminologia ta jest ważna między innymi dlatego, że kierunki sygnałów są podawane właśnie przy jej użyciu, czyli DTE→ΖDCE lub DCE→DTE. Zestaw sygnałów sterujących dla standardu RS 232C przedstawia rysunek.

Linie sterujące interfejsu RS 232C.

Znaczenie i rola poszczególnych sygnałów są następujące:

W pełnej wersji tego standardu podanej przez EIA występowało w sumie 25 różnych sygnałów. W komputerach PC używana jest nieco uproszczona wersja tego standardu wymagająca jedynie 9 linii (łącznie z masą). Dlatego w pecetach są stosowane dwa rodzaje złączy: DB-25 25-pinowe i DB-9 9-pinowe. Obydwa złącza są od strony komputera złączami męskimi (co oznacza, że nie mają otworów, a wystające bolce). Na rysunku podane są też numery pinów w złączu DB 25 i DB 9 dla DTE.

Istnienie dwóch niezależnych linii dla danych nadawanych (wyjście) i danych odbieranych (wejście) pozwala zrealizować jednoczesną transmisję w obydwu kierunkach, czyli dupleks lub pełny dupleks.

Kolejne sygnały to:

DSR i DTR są więc sygnałami ogólnej gotowości współpracujących ze sobą urządzeń. Powinny być uaktywniane na początku transmisji i pozostawać aktywne aż do końca. Sygnały RTS i CTS pozwalają sterować przebiegiem transmisji. Jeżeli na przykład modem (DCE) nie nadąża z przesyłaniem informacji dostarczanych przez komputer (DTE), może na pewien czas wstrzymać przekazywanie danych przez ten ostatni, przestawiając sygnał CTS w stan nieaktywny. Ostatnie z wymienionych sygnałów są przeznaczone głównie dla modemów.


Wyszukiwarka