PRESS-POLSKANowy Elektronik, ul. Junaków 2, 82-300 Elbl¹g, tel./fax
055 236-22-63, e-mail: press-polska@pro.onet.pl
Konwerter RS232C<=>RS232 +5V
Nowy Elektronik 213-K
Konwerter s³u¿y do dopasowania sygna³u typowego interfejsu RS232C, na przyk³ad z komputera PC, do interfej-
su spotykanego w mikrokontrolerach, gdzie poziomy napiêcia to +5V i 0V. Konwerter jest równie¿ przydatny przy
pisaniu programów w pakiecie BASCOM i innych rodowiskach programistycznych.
Do budowy konwertera zmusi³a mnie potrzeba. Podczas
testowania oprogramowania do sterownika wywietlacza LCD
mia³em do wyboru zbudowaæ na p³ytce uniwersalnej ma³y uk³a-
dzik oparty na 89C2051 i pisaæ dla niego oprogramowanie, albo
zaprojektowaæ ma³y konwerter umo¿liwiaj¹cy pod³¹czenie 89C51
do portu RS232C komputera PC i wykorzystaæ jeden z terminali
np. z pakietu BASCOM. Oczywicie z lenistwa wybra³em drug¹
mo¿liwoæ. Poza tym uk³ad wykorzystam równie¿ do budowy in-
nych konstrukcji wspó³pracuj¹cych z komputerem PC. Ca³y czas
piszê o komputerze PC, ale konwerter mo¿e wspó³pracowaæ z
dowolnym komputerem wyposa¿onym z interfejs RS232C.
Budowa i dzia³anie
Schemat konwertera zosta³ przedstawiony na rys.1. Kon-
werter zawiera tylko jeden uk³ad scalony. Jest nim MAX232 lub
jego odpowiednik z innych firm. Wiêkszoci czytelników NE jest
on dobrze znany, ale dla przypomnienia napiszê kilka podstawo-
wych informacji. Zadaniem uk³adu jest dopasowanie poziomów
logicznych RS232C do poziomów logicznych sygna³u TTL przy
napiêciu zasilania samego uk³adu +5V. Poziomy logiczne stan-
dardu RS232C to 1 +12V, 0 -12V. Tak du¿a ró¿nica napiêæ
miêdzy 1 a 0 wynika z pocz¹tków tworzenia standardu. Obec-
nie problem komunikacji rozwi¹zuje siê przy du¿o ni¿szych na-
piêciach, jednak standard jest standardem i nale¿y siê do niego
dostosowaæ, tym bardziej ¿e ka¿dy komputer klasy PC ma co naj-
mniej dwa porty RS232C zwane popularniem COM1...n. Równie¿
wiêkszoæ mikrokontrolerów jest wyposa¿anych w pe³ny lub zu-
bo¿a³y interfejs. Jednak najwa¿niejsz¹ ró¿nic¹, jaka nie pozwala
bezporednio podpi¹æ mikrokontrolera do z³¹cza w PC jest w³a-
nie ró¿nica w poziomach. Zazwyczaj kontrolery s¹ wyposa¿ane
w z³¹cze o poziomach logicznych standardu TTL. Do wyj¹tków
nale¿¹ np. mikrokontrolery ADUC. Ale s¹ drogie i rzadko stoso-
wane w konstrukcjach amatorskich, a tak¿e przemys³owych. Za-
pomnijmy o ADUC i powróæmy do naszego konwertera. Jak wspo-
mnia³em zadaniem uk³adu jest dostosowanie poziomów napiêæ.
Uk³ad to wykonuje za pomoc¹ powielaczy napiêcia umieszczo-
nych w samej strukturze MAX232. Na zewn¹trz wystarczy do³¹-
czyæ trzy kondensatory o pojemnoci 100nF i uk³ad jest gotów do
pracy. Z pomiarów jakie przeprowadzi³em wynika, ¿e MAX232 nie
dostarcza pe³nego napiêcia +/-12V. Jednak nie ma to wiêkszego
znaczenia dla komputera PC. Nawet, gdy poziomy logiczne maj¹
napiêcie +/-4V wszystko dzia³a poprawnie. W praktyce uk³ad do-
starcza napiêcie o wartoci oko³o +/-6-7V. Wewn¹trz uk³adu znaj-
duj¹ siê cztery drivery. Dwa dopasowuj¹ce poziom TTL na RS232C
i dwa poziomy TTL na RS232C. Po jednym zosta³y wykorzystane
do komunikacji z PC, a dwa pozosta³e do sygnalizacji optycznej
wykonanej na dwóch diodach LED. Rozwi¹zanie takie umo¿liwia
optyczn¹ kontrolê czy transmisja ma miejsce. Dioda zielona sy-
gnalizuje odbiór danych, a dioda czerwona nadawanie danych.
Jednak aby nie by³o tak ró¿owo, przy wzglêdnie prostej konstruk-
cji muszê lojalnie uprzedziæ, ¿e owa kontrola jest bardzo dobrze
widoczna przy niskich prêdkociach komunikacji rzêdu 110-9600
bodów. Wraz ze wzrostem prêdkoci, diody coraz s³abiej wiec¹.
Dzieje siê tak, poniewa¿ impulsy, które s¹ wysy³ane lub odbiera-
ne s¹ bardzo krótkie i oko ludzkie odbiera je jako s³aby impuls
wietlny. Z przeprowadzonych prób wynika, ¿e s³abe wiecenie
mo¿na zaobserwowaæ jeszcze przy prêdkoci 128k bodów. Jest
to praktycznie graniczna prêdkoæ dla wiêkszoci mikrokontrole-
rów. Dodam tylko, ¿e zmuszenie do pracy popularnej 51 z prêd-
koci¹ 56k bodów jest bardzo trudne, a w wiêkszoci zastosowañ
niemo¿liwe. Nieco lepiej wygl¹da sprawa z AVR'ami, jednak i tu
128kB to bardzo du¿o.
Monta¿ i uruchomienie
Monta¿ uk³adu sprowadza siê do wlutowania wszystkich
elementów i sprawdzeniu czy nie ma zwaræ lub przerw na p³ytce
drukowanej. Po zmontowaniu uk³ad powinien od razu zadzia³aæ.
Aby siê o tym przekonaæ, musimy wykonaæ kabel ³¹cz¹cy nasz
konwerter z komputerem. Schemat kabla zosta³ zamieszczony na
rys.3. Po po³¹czeniu konwertera z komputerem uruchamiamy
dowolny terminal, na przyk³ad wbudowany w pakiet BASCOM.
Po uruchomieniu programu musimy go skonfigurowaæ. Rozpo-
czynamy od ustawienia portu, do którego zosta³ przy³¹czony ter-
minal np. COM2, prêdkoæ transmisji 1200 bodów, parzystoæ
brak, iloæ bitów danych 8, bit stopu 1, kontrola brak, typ emulo-
wanego terminala TTY. Po tych ustawieniach w oknie terminala
mo¿emy wpisaæ s³owo TEST. Podczas pisania powinna migaæ dio-
da czerwona. Oznacza to, ¿e nasz konwerter na pewno przyjmuje
dane z komputera. Teraz ³¹czymy na p³ytce konwertera punkty
RxD z TxD i ponownie wpisujemy s³owo TEST. Powinny migaæ dwie
diody. Jednoczenie w terminalu powinien pojawiæ siê napis TEST.
R1 IN
13
R2 IN
8
T1 IN
11
T2 IN
10
GND
15
V+
2
V-
6
VCC
16
R1 OUT
12
R2 OUT
9
T1 OUT
14
T2 OUT
7
C1+
1
C1 -
3
C2+
4
C2 -
5
U1
MAX232
C1
100nF
C3
100nF
C2
100nF
C4
100nF
R2 10
R1 10
+5
GND
GND
1
6
2
7
3
8
4
9
5
Z1
DB9
TxD
RxD
GND
D2
LED-G
D1
LED-R
R3
100
R4
100
GND
DL1
4,7µH
1
6
2
7
3
8
4
9
5
DB
9
1
6
2
7
3
8
4
9
5
DB
9
Komputer
Kon
werter
Rys. 1 Schemat konwertera
Rys. 3 Schemat kabla
³¹cz¹cego komputer z
konwerterem
Rys. 2 Rozmieszczenie
elementów na p³ytce
drukowanej (skala 1:1)
Spis elementów
Rezystory:
R1 10
R2 10
R3 100
R4 100
Kondensatory:
C1 100nF
C2 100nF
C3 100nF
C4 100nF
Pó³przewodniki:
D1 LED R
D2 LED G
Uk³ady scalone:
MAX 232
Inne:
D³1 4,7µH
Z1 DB9
Z2 - PLS5