. Rodzaje transmisji sygnału i RS-232 1. Transmisja szeregowa i równoległa Transmisja sygnału może przebiegać w różnoraki sposób. Najbardziej podstawowym z podziałów, jest podział transmisji sygnału na równoległą i szeregową. Transmisja równoległa polega na przesyłaniu wszystkich pól słowa danych jednocześnie (patrz rysunek 1.). Za względu na fakt, że sprzęt komputerowy, w naturalny sposób wspiera taki sposób wprowadzania/wyprowadzania danych, transmisja równoległa jest bardzo popularna. Ponadto, dzięki zrównolegleniu przesyłu danych, uzyskujemy znaczny przyrost prędkości przesyłu. Udogodnienia te wiążą się jednak z faktem konieczności stosowania łącza dziewięcioprzewodowego, nieodzownego przy tego rodzaju transmisji. Rysunek 1. Transmisja równoległa Transmisja szeregowa polega na sekwencyjnym przesyłaniu danych bit po bicie. Należy zaznaczyć, że informacja wprowadzana jest do rejestru przesuwnego styku szeregowego, który bit po bicie wysyła ją na wyjście układu [1]. Rysunek 2. Transmisja szeregowa
Zaletą tego rodzaju transmisji jest możliwość przesyłu danych na dużo większą odległość niż w przypadku transmisji równoległej, a przy tym konieczne są jedynie dwa przewody do transmisji (jednostronnej) sygnału. Wadą tej techniki na pewno jest fakt, że transmisja odbywa się znacznie wolniej oraz to, że styki szeregowe wymagają większej złożoności obwodów wewnętrznych. 2. Standard RS-232 Standard RS-232 opisuje sposób połączenia urządzeń DTE (ang. Data Terminal Equipment) tj. urządzeń końcowych danych (np. komputer) oraz urządzeń DCE (ang. Data Comunication Equipment), czyli urządzeń komunikacji danych (np. modem). Standard podaje nazwy styków złącza oraz przypisane im sygnały a także specyfikację elektryczną obwodów wewnętrznych. Rysunek 8.3. Wykorzystanie łącza RS-232 [1] RS-232 jest stykiem przeznaczonym do szeregowej transmisji danych. Specyfikacja opisuje 25 styków. Najbardziej popularna wersja tego standardu, RS-232-C pozwala na transfer na odległość nie przekraczającą 15 m z szybkością maksymalną 20 kbit/s. Specyfikacja napięcia definiuje "1" logiczną jako napięcie -3V do -15V, zaś "O" to napięcie +3V do +15V. Poziom napięcia wyjściowego natomiast może przyjmować wartości -12V, -10V, 10V, +10V, zaś napięcie na dowolnym styku nie może być większe niż +25V i mniejsze niż -25V. Należy zaznaczyć przy tym, że zwarcie dwóch styków RS-232 nie powoduje jego uszkodzenia [1]. 3 Wymiana danych przez RS-232 Złącze RS-232 zawiera 25 lub 9 styków, które należą do czterech głównych grup związanych z funkcjami jakie pełnią. Rysunek 8.4. przedstawia złącze RS-232 w urządzeniu DTE wraz z oznaczeniami ważniejszych wyprowadzeń.
Rysunek 8.4. Styk RS-232 urządzenia DTE [1] Sygnały w PC Widok gniazda PC (męskiego) typu DE-9 Numer 9 pin 25 pin Kierunek Oznaczenie Nazwa angielska Nazwa polska 1 8 DCE > DTE DCD Data Carrier Detected sygnał wykrycia nośnej 2 3 DCE > DTE RxD Receive Data odbiór danych 3 2 DCE < DTE TxD Transmit Data transmisja danych 4 20 DCE < DTE DTR Data Terminal Ready gotowość terminala[a] 5 7 DCE DTE GND Signal Ground masa 6 6 DCE > DTE DSR Data Set Ready gotowość "modemu"[a] 7 4 DCE < DTE RTS Request to Send Data żądanie wysyłania 8 5 DCE > DTE CTS Clear to Send Data gotowość wysyłania 9 22 DCE > DTE RI Ring Indicator wskaźnik dzwonka 9-19; 21; 23-25 NC niewykorzystane[b]
Transmisja liniami danych Przesyłanie informacji następuje w sposób szeregowy bit po bicie. Stany logiczne 0 i 1 kodowane są stanami napięć (lub wartościami prądu). Najczęściej przesyłane są znaki danych zapisane w kodzie ASCII. Każdy znak danych zawiera od 5 do 8 bitów i poprzedzony jest bitem START, a zakończony bitem kontroli parzystości (Pa) i 1 do 2 bitami STOP. Bity danych wraz z bitem kontrolnym i bitami synchronizacji (start, stop) tworzą tzw. jednostkę informacyjną SDU (Serial Data Unit). Bity danych są przesyłane w kolejności od najmniej znaczącego D0, do najwięcej znaczącego. Opcjalny bit parzystości ma wartość logiczną równą sumie modulo 2 wszystkich bitów danych. W przykładzie powyżej zastosowano następujące parametry transmi sji: 8 bitów danych bit parzystości 2 bity stopu i nadano liczbę: 01101001b = 69h = 105dec = i. Liczba zawiera parzystą ilość jedynek i dlatego bit parzystości Pa = 0. Bit START uruchamia zegar zapewniający właściwą synchronizacje odczytu. Częstość pracy tego zegara (=1/tB) określa szybkość transmisji. Typowe prędkości transmisji wynoszą: 300,600,1200, 2400, 4800, 9600, 19 200 b/s (bitów/sek). Do sterowania przebiegiem transmisji stosuje się często protokół transmisji XON XOFF Wykorzystuje on dwa znaki (XON =11hex i XOFF = 13hex) sterując e z zestawu ASCII przekazywane linią danych TxD RxD. Odbiornik danych sygnalizuje za pomocą znaku XON gotowość przyjęcia dalszych znaków natomiast pojawienie się znaku XOFF wstrzymuje transmisją danych.
Obwody opisane przez standard RS-232 dzielimy następująco [1]: 1. Obwody podstawy czasu niezbędne podczas transmisji synchronicznej. XTC RC extemal Clock signal Receive Clock signal podstawa czasu dla sygnałów nadawanych przez urządzenie DTE elementarna podstawa czasu, która jest odtwarzana w DCE TC Transmit Clock signal podstawa czasu dla sygnałów nadawanych przez urządzenie DTE 2. Obwody przekazywania danych używane do transmisji szeregowej danych. 3. Obwody uziemienia. TXD Transmit Data DTE nadaje dane do DCE RXD Receive Data DTE odbiera dane od DCE SG Signal Ground uziemienie sygnałowe GND protective GrouND uziemienie ochronne Styk SG ustala wspólny zerowy potencjał DTE oraz DCE. Styk GND zmniejsza liczbę błędów wywołanych przez zakłócenia. 4. Obwód sterownia (najważniejsze styki). DTR Data Terminal Ready gotowość urządzenia DTE DSR Data Set Ready gotowość urządzenia DCE RTS Request To Send żądanie nadawania CTS Clear To Send gotowość do nadawania DCD Data Carrier Detect poziom sygnału odbieranego RI Ring Indicator wskaźnik wywołania Sygnały przesyłane w tych obwodach są przeznaczone głównie do ustawiania połączenia oraz nadzorowania półdupleksowego sposobu pracy łącza. Łącze odpowiedzialne za transmisję może pracować w trzech trybach: dupleksowym - FDX, półdupleksowym - HDX, a także simpleksowym - SX. Łącze w trybie dupleksowym może stosować system automatycznej retransmisji ARQ (ang. Automatic Repeat reqest), który zapewnia powtórną transmisję danych po wykryciu błędu transmisji [1]. W łączu simpleksowym możliwe jest stosowanie korekcji błędów FEC (ang. Forward Error Correction), która polega na dodaniu pewnych danych do przekazu, w celu zapewnienia korekcji błędów po stronie odbierającej.
Ustawienia portu com1: