Professional Documents
Culture Documents
PRZYKADOWY ROZDZIA
SPIS TRECI
KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG
RS 232C praktyczne
programowanie. Od Pascala
i C++ do Delphi i Buildera.
Wydanie II
Autor: Andrzej Daniluk
ISBN: 83-7197-990-8
Format: B5, stron: 412
TWJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK
CZYTELNIA
FRAGMENTY KSIEK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treci
Przedmowa do wydania drugiego ........................................................ 7
Wprowadzenie ................................................................................... 9
Rozdzia 1. Definicja interfejsu........................................................................... 13
Rozdzia 2. Nowoczesna transmisja asynchroniczna oraz standard RS 232C........ 17
RTS-CTS handshaking......................................................................................................22
Konwertery interfejsu RS 232C ........................................................................................26
Konwertery USB/RS 232C ...............................................................................................26
Protok XON-XOFF........................................................................................................27
Protok ENQ-ACK ..........................................................................................................28
Protok ETX-ACK...........................................................................................................28
Protok SOH-ETX ...........................................................................................................28
Protokoy typu master-slave..............................................................................................29
Rola oprogramowania, a podstawowe funkcje interfejsu .................................................29
Podsumowanie ..................................................................................................................31
Spis treci
Rozdzia 2.
Nowoczesna
transmisja asynchroniczna
oraz standard RS 232C
Podstawow wersj RS 232 (ang. Recommended Standard) wprowadzono w 1962 roku
w USA. Pocztkowo standard ten mia suy jedynie do obsugi modemw. Od tego
czasu by poddawany kilkakrotnej aktualizacji celem bardziej optymalnego dostosowania do potrzeb szeregowej transmisji danych. Najwiksz popularno zdobya wersja
RS 232C wprowadzona w 1969 roku, za oficjalnie do rangi standardu zostaa podniesiona w roku 1986. RS 232C jest powszechnie stosowanym i akceptowanym standardem dla szeregowej wymiany danych cyfrowych pomidzy urzdzeniem DTE (ang. Data
Terminal Equipment), obecnie utosamianym z komputerem, a DCE (ang. Data Communication Equipment) urzdzeniem zewntrznym (w oryginale modemem).
W sposb jednoznaczny definiuje on parametry elektryczne, mechaniczne i logiczne cza
szeregowego. Oficjalna jego nazwa brzmi Interface Between Data Terminal and Data
Circuit Termination Equipment Employing Serial Binary Data Interchange. RS 232C
stosowany bywa wszdzie tam, gdzie mniej istotn rol odgrywa przepustowo cza,
natomiast wana jest niezawodno i prostota obsugi protokou komunikacyjnego.
Ze wzgldu na prostot realizacji szeregowej transmisji asynchronicznej wikszo
obecnych urzdze posuguje si wanie takim trybem przesyania danych. Rnice
w sposobie realizacji transmisji synchronicznej i asynchronicznej schematycznie przedstawione s na rysunku 2.1.
Komputery osobiste wyposaone s w cza szeregowe przystosowane do transmisji
asynchronicznej, tzn. komputer i urzdzenie musz pracowa z jednakow, wczeniej
uzgodnion prdkoci oraz wykorzystywa tak sam struktur znakw. Transmisja
taka moe by realizowana w trybie bez potwierdzenia odbioru lub z potwierdzeniem
odbioru. Drugi sposb zapewnia nam moliwo kontrolowania poprawnoci wysyanych-odbieranych danych. Dane przesyane s w postaci tzw. ramki (ang. frame), ktra
jest najmniejsz porcj moliwej do przesania informacji. Bity przesyane s kolejno.
18
Rysunek 2.1.
Rnica pomidzy
sposobami realizacji
transmisji
synchronicznej
i asynchronicznej
19
Liczba
heksad.
Znak
Nazwa angielska
Znaczenie
0
1
00
01
NULL
SOH
Null
Start of Heading
2
3
4
5
6
7
8
9
10
02
03
04
05
06
07
08
09
0A
Start of Text
End of Text
End of Transmission
Enquiry
Acknowledge
Bell
Backspace
Horizontal Tabulation
Line Feed
11
12
13
0B
0C
0D
VT
FF
CR
Vertical Tabulation
Form Feed, page eject
Carriage Return
14
0E
SO
15
0F
SI
16
10
DLE
17
18
19
20
21
22
23
24
25
26
11
12
13
14
15
16
17
18
19
1A
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
Device Control 1
Device Control 2
Device Control 3
Device Control 4
Negative Acknowledge
Synchronous Idle
End of Transmission Block
Cancel
End of Medium
Substitue Character
27
28
29
30
31
127
1B
1C
1D
1E
1F
7F
ESC
FS
GS
RS
US
DEL
Escape
File Separator
Group Separator
Record Separator
Unit Separator
Delete
Znak pusty
Pocztek nagwka zawierajcego
adres lub polecenie
Pocztek tekstu
Koniec tekstu
Koniec transmisji
Zapytanie
Potwierdzenie
Dzwonek
Usuwanie poprzedniego znaku
Pozioma tabulacja
Przejcie kursora do nastpnego
wiersza
Pionowa tabulacja
Przesuw strony
Powrt kursora do pocztkowej
pozycji w tym samym wierszu
Nastpne znaki nie bd
interpretowane jako znaki ASCII
Powrt do domylnej strony
kodowej ASCII
Zmiana znaczenia nastpnego
znaku, ktry bdzie interpretowany
jako kombinacja bitw sterujcych
danym urzdzeniem
XON kontrola przepywu danych
Sterowanie urzdzeniem
XOFF kontrola przepywu danych
Sterowanie urzdzeniem
Meldunek bdu
Znak synchronizacyjny
Koniec transmisji bloku danych
Anulowanie danych
Koniec zapisu danych
Zastpienie znaku, znak wstawiony
w odbiorniku w miejsce bdnie
odebranego, np. z bdem parzystoci
Rezygnacja bez potwierdzenia
Separator plikw
Separator grup
Separator zapisu
Separator jednostek
Uniewanienie znaku
STX
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
20
Bit kontroli parzystoci przesyany za ostatnim bitem danych jest jedn z metod monitorowania poprawnoci transmitowanych danych. Z reguy przyjmuje dwie wartoci: 0 lub
1. Ilo jedynek w polu danych moe by uzupeniana do liczby parzystej (evenparity)
lub nieparzystej (oddparity). Bit parzystoci moe by stale rwny 1 (markparity), stale
rwny 0 (space) lub moe by nieustawiony (noparity). Bity stopu zawsze oznaczaj
koniec ramki. Moe wwczas nastpi transmisja kolejnej paczki danych.
RS 232C jest interfejsem cyfrowym, zatem jego poziomom logicznym (0-1) naley
przypisa okrelone przedziay napi zarwno ujemnych, jak i dodatnich, ktre s
z reguy nieco wysze od stosowanych w komputerze. Pozwala to w duym stopniu
uniezaleni sygna na wejciu interfejsu od przypadkowych zakce. Dla sygnaw
sterujcych i sygnaw wsppracy logicznej wartoci 1 odpowiada przedzia od +3
do +25 V, tzw. stan aktywny, wysoki, wczony lub ON. Logicznemu 0 odpowiada
przedzia od 3 do 25 V, jest to stan nieaktywny, niski, wyczony lub OFF. Dla linii
przesyania danych logicznej wartoci 1 (tzw. Mark) opowiada przedzia napi od
3 do 25 V, za logicznemu zeru (tzw. Space) przedzia od +3 V do +25 V. Widzimy
wic, e sygnay sterowania i wsppracy s aktywne w stanie wysokim, za sygnay
danych w stanie niskim (Mark). Na rysunku 2.2 pokazano przebieg czasowy przykadowej ramki, ukazujcy wysanie jednej litery a reprezentowanej na omiu bitach
dziesitnie 97, binarnie 01100001. Bit parzystoci zosta ustawiony jako markparity,
zastosowano te dwa bity stopu.
Rysunek 2.2.
Czasowy przebieg
ramki na linii
przesyania danych
przy wysaniu
litery a
cze w trakcie ciszy utrzymywane jest stanie logicznej wartoci 1. Transmisja rozpoczyna si od bitu startu, ktry zawsze przyjmuje warto logicznego 0. Po nim nastpuje transmisja omiu bitw reprezentujcych znak. Pniej jest bit parzystoci,
potem dwa bity stopu zamykajce ramk. Bitowi stopu odpowiada stan niski. Po nim
cze wraca do stanu ciszy. Jeden lub dwa bity stopu stosowane s po to, by odbiornik
i nadajnik mogy dokona wzajemnej synchronizacji przed transmisj kolejnej ramki
danych. W praktyce ukady nadajnikw zasilane s napiciem 12 V, dajc amplitud
sygnaw 8 V. W tej sytuacji bitom wartoci 0 oraz 1 transmitowanego bajta odpowiadaj napicia odpowiednio +12 V oraz 12 V1.
1
Zgodnie z zaleceniami protokou V.28 CCITT (Midzynarodowy Komitet Doradczy ds. Telefonii
i Telegrafii) logicznemu zeru powinien odpowiada potencja dodatni +3 V+15 V, za logicznej
jedynce potencja ujemny 3 V15 V.
21
Standardow lini interfejsu RS 232C stanowi 25-yowy przewd, przy czym wikszo z tych linii wykorzystuje si dla potrzeb transmisji synchronicznej. W standardzie
IBM wykorzystuje si jedynie 9 sygnaw, ktre s wystarczajce do zrealizowania
transmisji asynchronicznej. W komputerach PC uywano pocztkowo dwch rodzajw zczy szeregowych: 9- oraz 25-kocwkowych typu DB-9 i odpowiednio DB25. W komputerach zaopatrzonych w nowsze pyty gwne spotyka si jedynie zcza
DB-9. Podobnie, wersji DB-25 nie spotyka si ju w nowoczesnych urzdzeniach pomiarowych. Na rysunku 2.3 przedstawiono wygld obydwu rodzajw tych zczy.
Rysunek 2.3.
Kocwki DB-9
i DB-25. Ciemne
kka oznaczaj
nieaktywne
wyprowadzenia
DB-9
Opis sygnau
Kierunek sygnau
Wejcie DTE
Wyjcie DTE
Wejcie DTE
Wejcie DTE
Wejcie DTE
20
Wyjcie DTE
22
Wejcie DTE
22
RTS-CTS handshaking
Jak ju wspomniano, zamierzonym byo, aby ksika ta jak najmniej dotyczya wtkw
historycznych cza szeregowego. Peny opis funkcji linii magistrali interfejsu RS 232C
Czytelnik moe znale w bogatej literaturze przedmiotu. Nie bdziemy si rwnie
szczegowo zajmowa poszczeglnymi trybami transmisji szeregowej. Dla nas tak
naprawd istotnym bdzie tryb pdupleksowy z potwierdzeniem odbioru (transmisja
dwukierunkowa naprzemienna), tzw. handshaking. W tym trybie komputer i urzdzenie
mog naprzemiennie nadawa i odbiera, wykorzystujc jeden logiczny kana danych.
Jest to metoda pytanie-odpowied. Naley przyzna, e sposb ten jest najprostszym
i najskuteczniejszym rodkiem wyegzekwowania interesujcej nas informacji. Aby
zrealizowa tak prawdziw konwersacj pomidzy komputerem a urzdzeniem, wystarczy wykorzysta dwie linie danych RxD i TxD oraz dwie linie sterujce RTS i CTS
z magistrali RS 232C. Sygna RTS musi by stale aktywny lub przeczany do tego stanu
przed rozpoczciem nadawania. Podobnie, nadawanie znakw moe nastpi tylko wwczas, gdy sygna CTS bdzie wczony. Taki sposb sprztowej kontroli transmisji nazywany jest Hardware flow control lub RTS-CTS handshaking lub jako Out-of-Band flow
control sygnay sterujce s generowane i sprawdzane niezalenie od sygnaw danych.
Dostpny jest on w wikszoci wspczesnych systemw komunikacyjnych. Ide takiej
konwersacji przedstawimy na przykadzie poczenia pomidzy dwoma zczami DB-9.
Rysunek 2.4.
Przykad poczenia
poprzez zcza DB-9
komputera
z urzdzeniem
pracujcym
w penym trybie
pdupleksowym
Linia wejciowa TxD (3) komputera poczona jest z lini wejciow RxD (2) urzdzenia. Linie te su obustronnej wymianie danych. Za pomoc sygnaw RTS (7)-CTS (8)
dokonywany jest wybr aktualnego kierunku transmisji. Po uaktywnieniu cza szeregowego linia DTR (4) zostaje wczona. W odpowiedzi urzdzenie aktywuje lini
DSR (6), sygnalizujc gotowo do wsppracy. Komputer, chcc przesa dane do
urzdzenia, aktywuje swj sygna RTS (7), czekajc na potwierdzenie od urzdzenia
na linii CTS (8). Jeeli zostaa ona uaktywniona, komputer wysya dane lini TxD.
Po zakoczeniu transmisji linia RTS jest wyczana (OFF), na co urzdzenie odpowiada
23
rwnie przeczeniem linii CTS do stanu nieaktywnego (OFF). Oglnie rzecz biorc,
dane przesyane do komputera lini RxD bd odbierane wwczas, gdy linie DSR
i RLSD (DCD) (1) bd wczone. Patrzc na rysunek 2.4 mona zauway, e jest to typowy ukad pocze stosowany przy wsppracy pomidzy dwoma urzdzeniami DTE.
Jak to si ma do klasycznego poczenia DTE-DCE? Naley przyzna, e z owym klasycznym sposobem czenia ma to niewiele wsplnego. Przyczyna jest prosta nowoczesne urzdzenia pomiarowe zaopatrzone s ju w programowalne jednostki arytmetyczno-logiczne i tak na dobr spraw s ju same w sobie komputerami. Innych produktw
nie spotyka si obecnie zbyt czsto na rynku. Jeeli w instrukcji obsugi kupionego urzdzenia nie umieszczono schematu podobnego do tego z rysunku 2.4, oznacza to bdzie,
e sprzedawca zrobi kolejny dobry interes, pozbywajc si magazynowych zapasw.
Rysunek 2.5 przedstawia pen sekwencj stanw linii interfejsu RS 232C. Naley jednak
zwrci uwag, e w wikszoci spotykanych obecnie przypadkw DSR i DTR pozostaj zwarte, gdy nowoczesne urzdzenia pomiarowe w ogle nie posuguj si lini
DSR, za linia DCD wykorzystywana jest przewanie przez modemy.
Rysunek 2.5.
Pena sekwencja
stanw linii
interfejsu RS 232C
Jeeli jednak chcielibymy z niej zrobi uytek, naley wejcie DCD komputera poczy
z lini wyjciow DTR urzdzenia. Analogicznie jak na rysunku 2.4 mona poczy
ze sob dwa komputery. W tym przypadku ukad pocze mona jeszcze uproci,
zwierajc linie RTS-CTS oraz DSR-DTR.
W nowoczesnych przyrzdach pomiarowych coraz czciej spotyka si zcze moduowe RJ-11, charakteryzujce si niewielkimi rozmiarami i prostot montau przewodw
we wtyczkach. Bardzo czsto wykorzystuje si tu jedynie dwa sygnay dla potrzeb transmisji asynchronicznej.
Na rysunku 2.6 pokazano wygld takiego zcza, natomiast w tabeli 2.3 specyfikacj
najczciej wykorzystywanych przez nie sygnaw.
Rysunek 2.6.
Zcze moduowe
RJ-11
24
Opis sygnau
ComputOne
SPECIALIX
DTR
RLSD (DCD)
TxD
RxD
Gnd
DTR / RTS
RLSD (DCD)
Gnd
RxD
TxD
RTS
CTS
Na rysunkach 2.7 i 2.8 pokazano przykady moliwego ukadu pocze pomidzy komputerem zaopatrzonym w zcze DB-9 lub DB-25 oraz nowoczesnym urzdzeniem wyprowadzajcym sygnay poprzez RJ-11. Tutaj rwnie wida, e linia wyjciowa TxD
komputera poczona jest z odpowiedni lini wejciow RxD urzdzenia.
Rysunek 2.7.
Przykad
nowoczesnego
ukadu pocze
zczy DB-9
oraz RJ-11
stosowanego
przez LakeShore
Pozostae linie po stronie komputera pozostaj zwarte lub niewykorzystane. Nowoczesne urzdzenia nie wykorzystuj zbyt wielu linii sterujcych. Linie DTR (4), CTS
(8), DSR (6) i DCD (1) pozostaj zwarte. Linia RTS (7), danie nadawania, nie jest
wykorzystywana. Kto mgby zapyta, jak bdzie wybierany kierunek transmisji. Taki
sposb podczenia, jaki przedstawiono na przykadzie rysunkw 2.6 i 2.7 natychmiast
sugeruje, e mamy do czynienia z inteligentnym urzdzeniem znaczcym koniec wysyanych przez siebie danych par znakw CR LF, tzw. terminatorem.
25
Rysunek 2.8.
Przykad
nowoczesnego
ukadu pocze
zczy DB-25
oraz RJ-11
stosowanego
przez LakeShore
Program obsugujcy taki przyrzd, napotykajc przy odbiorze danych znaki CR LF,
bdzie ju wiedzia, e wanie otrzyma kompletn informacj i ewentualnie naley
przej do nadawania.
Jeeli tylko potrafimy w ten sam lub inny chytry sposb odpowiedzie miernikowi,
otrzymamy bezbdn obustronn transmisj. Taka metoda programowej kontroli transmisji okrelana jest mianem Software flow control. Nieustanne ledzenie poziomw wielu
sygnaw pojawiajcych si na zczu RS przechodzi powoli do historii. Jedyn trudnoci do przezwycienia bdzie wwczas problem zbudowania odpowiedniej aplikacji.
Nieco inn specyfikacj sygnaw w zczu RJ-11 podaj ComputOne oraz SPECIALIX.
Wielu producentw stosuje rwnie zcza moduowe RJ-45. Poniej zostay przedstawione niektre stosowane rozwizania.
Rysunek 2.9.
Zcze moduowe
RJ-45
1
2
RJ-45
DCD
DSR
RTS
RTS
CTS2
RTS
RTS
RTS
DTR
DTR
DTR
DTR2
RxD
PG
PG
TxD
TxD
RxD
TxD2
DCD
TxD
TxD
DCD
Gnd
Gnd2
Gnd
RxD
RxD
RxD
RxD
TxD
DCD2
TxD
Gnd
Gnd
Gnd
Gnd
Gnd
RxD2
DTR
CTS
CTS
DSR
DSR
RTS2
CTS
DTR
DTR
CTS
CTS
CTS
Linia PG zwykle poczona jest z obudow. Jako potencja odniesienia uywana jest linia Gnd.
Identycznie jak w ComputOne, odwrcono tylko numeracj stykw.
26
27
Na rysunkach 2.10, 2.11 oraz 2.12 pokazano odpowiednio schemat przekroju czteroyowego kabla wykorzystywanego przez USB, wygld zcza typu A wykorzystywanego do podczenia urzdze z komputerem (hostem, ang. upstream port) oraz
numeracj sygnaw USB, ktrych wykaz zawiera tabela 2.6.
Rysunek 2.10.
Czteroyowy
kabel USB
Rysunek 2.11.
Zcze USB typu A
Rysunek 2.12.
Numeracja stykw
zcza USB typu A
Oznaczenie
Opis sygnau
Kolor przewodu
VBUS
Czerwony
Data(D)
Biay
Data+(D+)
Zielony
GND
Czarny
Shell
Shield
Ekran
Protok XON-XOFF
Wiele urzdze wymaga stosowania programowej kontroli przepywu danych z wykorzystaniem tzw. protokou XON-XOFF. Przykadem praktycznego wykorzystania
niektrych znakw pokazanych w tabeli 2.1 jest wanie ten protok, czasami nazywany DC1-DC3 lub ^Q-^S.
Jeeli dane przychodz zbyt szybko do odbiornika i urzdzenie odbierajce nie moe
ich tak szybko pobiera z bufora wejciowego, program sterujcy moe wysa znak
XOFF (DC3 lub dziesitnie 19 albo Control + S). Urzdzenie nadajce zatrzymuje dalsz
transmisj (jeeli oczywicie wie, co to jest XOFF), dopki od strony odbiornika nie
nadejdzie znak XON (DC1 lub dziesitnie 17 albo Control + Q).
28
Jeeli jednak XOFF zostanie wysany zbyt pno, moe nastpi przepenienie bufora
wejciowego. Podobnie opnienie wysania XON z reguy powoduje zablokowanie
portu komunikacyjnego.
We wspczesnych, inteligentnych urzdzeniach o wysokim stopniu wzajemnej synchronizacji protok ten przewiduje wysanie XOFF, jeeli bufor wejciowy jest wypeniony powyej deklarowanego rozmiaru. Program sterujcy urzdzeniem wysya
znak XON, jeeli bufor jest wypeniony mniej ni w . W tym przypadku transmisja
musi przebiega w penym trybie dupleksowym. Dane przekazywane s jednoczenie
w obu kierunkach niezalenie od siebie, po oddzielnych liniach transmisyjnych (patrz
tabela 2.3). Wykorzystujemy tu dwie pary linii RxD i TxD (RTS i CTS nie maj znaczenia), linia DTR moe (ale nie musi) by wykorzystywana do wczania i wyczania
urzdzenia. Windows podtrzymuje ten protok, o czym Czytelnik moe si przekona,
zagldajc do Panelu sterowania i Waciwoci portw komunikacyjnych oraz czytajc dalej t ksik.
Protok ENQ-ACK
Jest to obecnie jedna z rzadziej stosowanych metod kontroli przepywu danych w urzdzeniach pomiarowych. Urzdzenie transmitujce wysya regularnie zapytanie ENQ
(patrz tabela 2.1) po kadej, wczeniej ustalonej porcji transmitowanych danych. Kiedy
odbierajcy jest gotowy do przyjcia kolejnego bloku informacji, wysya do nadajcego potwierdzenie ACK, sygnalizujc tym samym gotowo przyjcia nastpnej porcji
danych. W metodzie tej z reguy nie kontroluje si stopnia wypenienia bufora pamici.
Jeeli nadajcy po wysaniu kolejnej porcji informacji nie otrzyma potwierdzenia
jej odbioru, zaczyna wysya przez pewien, cile ustalony czas, znak, np. LF, dajc
odbiornikowi moliwo ewentualnego przetworzenia wczeniej otrzymanych danych.
Jeeli po okrelonym czasie nie nadejdzie potwierdzenie ACK, nadajnik wstrzymuje
dalsz transmisj do czasu jego otrzymania.
Protok ETX-ACK
Protok ten funkcjonuje nieco inaczej. Komputer wysya cay blok danych zakoczonych znakiem ETX. Odbiornik wysya do komputera znak potwierdzenia ACK dopiero
po cakowitym przetworzeniu odebranej porcji danych. Zastosowanie tego protokou
wymaga istnienia w odbiorniku wystarczajco duego bufora pamici, aby transmisja
nie bya zatrzymywana przed odebraniem caej porcji informacji.
Protok SOH-ETX
Protok SOH-ETX bywa coraz czciej wykorzystywany w tzw. urzdzeniach wielozakresowych, gdzie zwracana informacja obejmuje nie tylko np. aktualn warto
mierzonego prdu przemiennego, ale jeszcze inne jego parametry. Pocztek nagwka
29
tekstu lub aktualny adres odpytywanego urzdzenia jednoznacznie okrela znak SOH
(ale nie STX, gdy tekst taki moe by poprzedzony specjalnymi znakami formatowania
lub znakami nie bdcymi tekstem). Koniec przesyanej porcji danych wyranie okrela
znak ETX (End of Text por. tabela 2.1).
Rola oprogramowania,
a podstawowe funkcje interfejsu
Aby zrealizowa prawidow wymian informacji pomidzy komputerem a urzdzeniami zewntrznymi, dla ktrych peni on bdzie rol kontrolera, naley w pierwszej
kolejnoci okreli funkcje szeroko rozumianego interfejsu w tym systemie. W dobrze
zaprojektowanym ukadzie interfejs powinien spenia nastpujce wymagania:
1. Zapewnienie waciwego sposobu inicjalizacji poczenia.
30
31
i wysyania danych.
Standardowe interfejsy maj moliwo buforowania danych. Jest to zaleta,
ktr doceniamy wtedy, gdy nie jestemy w stanie w sposb cigy odbiera
przychodzcych danych lub nie moemy ich wysa w cile okrelonym
momencie. Oprogramowanie sterujce przepywem danych peni w takich
przypadkach rol wspomagajc. Aplikacja powinna umie odczyta aktualny
stan bufora wejciowego i zdecydowa o pobraniu z niego interesujcych nas
danych. Odbierajc informacje w sposb cigy, naley nieustannie kontrolowa
bufor danych, nawet w sensie fizycznej ingerencji. Dobrze dziaajcy program
nie moe dopuci do jego przepenienia, gdy grozi to cakowit utrat informacji.
Rol oprogramowania bdzie rwnie odpowiednie czyszczenie bufora danych
w trakcie transmisji. Jest to zawsze punkt newralgiczny systemu
komunikacyjnego.
W celu ujednolicenia i uproszczenia sposobw projektowania oprogramowania wykorzystywanego w rnych systemach pomiarowych stworzono standard opisujcy zestaw uniwersalnych instrukcji programujcych urzdzenia pomiarowe, tzw. jzyk SCPI
(ang. Standard Commands for Programmable Instruments). Zdefiniowane s tam wszystkie ujednolicone przez producentw urzdze pomiarowych instrukcje (rozkazy) umoliwiajce zaprogramowanie nowoczesnego przyrzdu w zalenoci od wykonywanego
przeze zadania. Programici dostali wic do dyspozycji uniwersalny jzyk zapyta
i odpowiedzi, naley tylko umiejtnie go wykorzysta. Niestety, to niewtpliwe udogodnienie nie zwalnia nas z koniecznoci samodzielnego stworzenia (lub kupna) aplikacji,
potraficej wykorzysta zalety SCPI. Czytelnikw pragncych poszerzy swoje wiadomoci na ten temat odsyam do ksiki Wojciecha Mielczarka Urzdzenia pomiarowe
i systemy kompatybilne ze standardem SCPI, wyd. Helion (1999).
Podsumowanie
W rozdziale tym zostay zaprezentowane podstawowe wiadomoci dotyczce szeregowej
transmisji asynchronicznej oraz standardu RS 232C. Tematy te zostay potraktowane
w sposb zwizy, ale zupenie wystarczajcy do zrozumienia zagadnie zwizanych
z programow kontrol czy szeregowych. Przedstawione te zostay rzadko spotykane
przykady nowoczesnych sposobw pocze coraz czciej stosowane w szeregowej
transmisji danych. Omwiono rwnie najwaniejsze stosowane obecnie protokoy
kontroli transmisji danych. Wymieniono te, jakimi cechami powinny charakteryzowa
si aplikacje, obsugujce transmisj szeregow.
W ksice tej, wraz z wprowadzaniem konkretnych algorytmw mogcych obsugiwa
komunikacj szeregow, omwione zagadnienia bd stopniowo uzupeniane. Bardziej
szczegowe informacje dotyczce standardu RS 323C Czytelnik moe znale w bogatej
literaturze przedmiotu oraz na licznych stronach WWW. Osobom pragncym poszerzy
swoje wiadomoci na temat szeregowych interfejsw cyfrowych polecamy ksik
Wojciecha Mielczarka Szeregowe interfejsy cyfrowe, wyd. Helion (1994).