Интерфейс DMTF - PC.pdf

(297 KB) Pobierz
32021703 UNPDF
Interfejs−modem DTMF do komputera PC
P R O J E K T Y
Interfejs−modem DTMF
do komputera PC
AVT−834
ìPanie Watson, proszÍ tu
przyjúÊ, jest mi pan
potrzebnyî. By³a to pierwsza
informacja przekazana za
pomoc¹ telefonu. Zbudowa³em
prosty uk³ad s³uø¹cy do
zdalnego sterowania poprzez
liniÍ telefoniczn¹, ale bardziej
chcia³bym zbudowaÊ maszynÍ
czasu. Tylko w†jednym celu:
aby cofn¹Ê siÍ w†czasie do
roku 1876, w†ktÛrym
wypowiedziane zosta³y te
s³owa i†zaprosiÊ pana
Grahama Bella na wizytÍ
w†naszych czasach. Bardzo
jestem ciekaw, jak
zareagowa³by wybitny
amerykaÒski wynalazca
widz¹c, do czego zosta³
wykorzystany jego wynalazek!
Informacja s³owna to zaledwie
niewielki procent danych przeka-
zywanych obecnie za pomoc¹ te-
lefonu. Po opleceniu Ziemi przez
monstrualnej wielkoúci pajÍczynÍ
Internetu, w†liniach telefonicznych
zaczͳy kr¹øyÊ miliardy, biliony
bajtÛw informacji przekazywanych
z†jednego zak¹tka úwiata do dru-
giego.
Telefon sta³ siÍ obecnie nie
tylko narzÍdziem do przeprowa-
dzania rozmÛw, ale instrumentem
do pozyskiwania wszelkiego ro-
dzaju informacji.
WúrÛd rozlicznych zastosowaÒ
wynalazku pana Grahama istnieje
jedno, moøe nieco mniej znane
szerokiemu ogÛ³owi. Kaødy wie
bowiem, øe za pomoc¹ telefonu
moøemy porozmawiaÊ ze znajo-
mymi i†ìúci¹gn¹Êî z†Internetu po-
trzebne nam dane. Nie wszyscy
jednak zdaj¹ sobie sprawÍ, øe
telefon moøemy wykorzystaÊ do
zdalnego sterowania zupe³nie do-
wolnymi urz¹dzeniami znajduj¹-
cymi siÍ w†naszym mieszkaniu
czy miejscu pracy. Moøemy zdal-
nie - z†dowolnego miejsca na
úwiecie, gdzie tylko znajduje siÍ
aparat telefoniczny - w³¹czaÊ i†wy-
³¹czaÊ ogrzewanie domu, spraw-
dzaÊ stan instalacji alarmowych,
odczytywaÊ wiadomoúci z†auto-
matycznej sekretarki i†wykonywaÊ
wiele innych czynnoúci.
Jeøeli moøemy to robiÊ, to
dlaczego nie u³atwiÊ sobie øycia
i†nie zleciÊ wykonywania tych
czynnoúci domowemu centrum in-
formacyjnemu - komputerowi? Ot-
war³oby to przed nami zupe³nie
nowe moøliwoúci i†pozwoli³o na
szybkie przekazywanie instrukcji
przez telefon oraz na otrzymywa-
nie danych od uk³adu, ktÛry
mÛg³by znajdowaÊ siÍ nawet na
innym kontynencie. Zastosowanie
komputera, a†moøe to byÊ zupe³-
nie dowolny komputer klasy PC
(nawet muzealne AT czy 386),
pozwoli takøe na zautomatyzowa-
nie czynnoúci zdalnego sterowa-
nia i†wykonywanie ich nawet bez
naszej obecnoúci, zgodnie z†algo-
rytmem zapisanym w†programie
steruj¹cym.
Nie ma oczywiúcie øadnych
przeszkÛd, aby zastosowaÊ dwa
interfejsy DTMF do po³¹czenia ze
sob¹ dwÛch komputerÛw. Nie wy-
daje mi siÍ to jednak celowe:
by³aby to najpowolniejsza i†naj-
bardziej niepewna ³¹cznoúÊ. Do
³¹czenia dwÛch komputerÛw za
pomoc¹ linii telefonicznej naleøy
stosowaÊ specjalnie do tego celu
Elektronika Praktyczna 1/2000
65
32021703.024.png 32021703.025.png
Interfejs−modem DTMF do komputera PC
Rys. 1. Schemat elektryczny urządzenia.
opracowane i†obecnie bardzo ta-
nie urz¹dzenia - modemy telefo-
niczne.
UM91531 jest scalonym kode-
rem DTMF przeznaczonym do
wspÛ³pracy z†systemami mikro-
procesorowymi i†komputerowymi.
Zawiera w†swojej strukturze
wszystkie elementy niezbÍdne do
generowania wszystkich 15 ko-
dÛw DTMF oraz wejúcia i†wyjúcia
s³uø¹ce do porozumiewania siÍ
z†komputerem. Najlepsz¹ metod¹
zapoznania siÍ z†tym uk³adem
bÍdzie jednoczesne omÛwienie
zasad programowania naszego in-
terfejsu.
Wejúcia danych D0..D3 zosta³y
za poúrednictwem z³¹cza CON1
do³¹czone do czterech najm³od-
szych wyjúÊ szyny danych inter-
fejsu CENTRONICS komputera.
Pierwszym krokiem, zmierzaj¹cym
do wygenerowania przez uk³ad
okreúlonego kodu DTMF, bÍdzie
wys³anie na te wyjúcia odpo-
wiedniej liczby z†przedzia³u
0000 (BIN) ..1110 (BIN) (stan 1111 jest
zakazany), odpowiadaj¹cej ø¹da-
nemu kodowi. Moøemy to uczyniÊ
za pomoc¹ polecenia:
OUT &H [adres bazowy inter-
fejsu CENTRONICS], xxxx
NastÍpnym krokiem bÍdzie
przepisanie danych z†wyjúÊ inter-
fejsu CENTRONICS do rejestru
wewnÍtrznego uk³adu UM91531
i†wydanie mu polecenia wygene-
rowania sygna³u DTMF. Moøemy
uczyniÊ to podaj¹c krÛtki impuls
dodatni na wejúcie LATCH po³¹-
Opis dzia³ania uk³adu
Schemat elektryczny uk³adu in-
terfejsu pokazano na rys. 1 . Jak
widaÊ, uk³ad nie jest skompliko-
wany, g³Ûwnie dziÍki zastosowa-
niu dwÛch wyspecjalizowanych
uk³adÛw scalonych pe³ni¹cych
funkcje kodera i†dekodera DTMF.
Z†jednym z†nich - koderem DTMF
typu UM91531 - mieliúmy juø
okazjÍ siÍ zapoznaÊ i†omawianie
uk³adu rozpoczniemy od skrÛto-
wego przypomnienia sobie wiado-
moúci o†tym interesuj¹cym uk³a-
dzie.
66
Elektronika Praktyczna 1/2000
32021703.026.png 32021703.027.png 32021703.001.png 32021703.002.png 32021703.003.png 32021703.004.png 32021703.005.png 32021703.006.png 32021703.007.png 32021703.008.png 32021703.009.png 32021703.010.png 32021703.011.png 32021703.012.png 32021703.013.png 32021703.014.png
Interfejs−modem DTMF do komputera PC
Rys. 2. Sposób programowania nadajnika DTMF.
Sygna³ DTMF
przekazany zo-
staje na uzwo-
jenie transfor-
matora TR1
i†dalej do linii
telefonicznej.
Wiemy juø,
w†jaki sposÛb
komputer wykorzystuj¹cy nasz in-
terfejs moøe przekazywaÊ sygna³y
DTMF do linii telefonicznej. Po-
patrzmy teraz, w†jaki sposÛb moøe
je odbieraÊ.
Jako odbiornik i†dekoder syg-
na³Ûw DTMF zastosowa³em scalo-
ny dekoder typu UM92870. Uk³ad
ten nie by³ dot¹d szczegÛ³owo
opisywany na ³amach EP i†dlatego
naleøy poúwiÍciÊ mu parÍ zdaÒ.
UM92870 jest, podobnie jak
jego funkcjonalne odpowiedniki
MT8870 i†HT9170, scalonym de-
koderem kodu DTMF przeznaczo-
nym takøe do wspÛ³pracy z†sys-
temami mikroprocesorowymi
i†komputerowymi. Posiada w†swo-
jej strukturze wszystkie elementy
niezbÍdne do odebrania sygna³u
DTMF, zdekodowania go i†przed-
stawienie w†formie s³owa cztero-
bitowego. W† tab. 1 zawarto skrÛ-
cony opis sposobu dekodowania
informacji DTMF przez ten uk³ad.
Przed rozpoczÍciem odbiera-
nia sygna³Ûw DTMF uk³ad
UM92870 musi zostaÊ przygoto-
wany do pracy przez podanie
stanu wysokiego na jego wejúcie
Tab1. Tabela prawdy układu UM92870
pracującego w dwutonowym systemie
wybiórczym DTMF.
Ton 1 Ton 2 Cyfra STD Q4 Q3 Q2 Q1
[Hz] [Hz] kodu
697 1209 1 H L L L H
697 1336 2 H L L H L
697 1447 3 H L L H H
770 1209 4 H L H L L
770 1336 5 H L H L H
770 1477 6 H L H H L
852 1209 7 H L H H H
852 1336 8 H H L L L
852 1477 9 H H L L H
941 1336 0 H H L H L
941 1209 * H H L H H
941 1477 # H H H L L
697 1633 A H H H L H
770 1633 B HHHHL
852 1633 C HHHHH
941 1633 D H L L L L
BRAK BRAK
czone z†wyjúciem D4 szyny da-
nych. Czynimy to za pomoc¹
polecenia:
OUT &H[adres bazowy interfej-
su CENTRONICS],xxxx + 16
a†nastÍpnie
OUT &H[adres bazowy interfej-
su CENTRONICS],xxxx
Dodatnie zbocze impulsu spo-
woduje przepisanie danych do
rejestru wewnÍtrznego kodera
DTMF, a†ujemne rozpoczÍcie ge-
neracji sygna³u. Na rys. 2 po-
kazano stany logiczne na trzech
najbardziej - w†tym momencie -
istotnych dla pracy uk³adu wy-
prowadzeniach. Przebieg A†ob-
razuje stan wejúcia LATCH,
a†przebieg B†czas trwania emisji
kodu DTMF. Bardzo waøny dla
dzia³ania uk³adu i†jego wspÛ³-
pracy z†komputerem jest stan
wyjúcia ACK (przebieg C). Bez-
poúrednio po podaniu na we-
júcie LATCH dodatniego impul-
su inicjuj¹cego proces generacji
sygna³u DTMF, na wyjúciu tym
pojawia siÍ stan niski i†trwa
przez czas wysy³ania sygna³u
oraz okres przerwy pomiÍdzy
kolejnymi sygna³ami, o†czasie
trwania okreúlonym odpowied-
nimi normami. £¹czny czas
trwania impulsu na wyjúciu
ACK wynosi 140 ms i†powtÛrne
wyst¹pienie na nim stanu wy-
sokiego jest sygna³em dla kom-
putera, zezwalaj¹cym na rozpo-
czÍcie emisji kolejnego kodu
DTMF.
InformacjÍ o†stanie wyjúcia
ACK moøemy odebraÊ z†rejestru
wejúciowego portu CENTRONICS
komputera za pomoc¹ polecenia:
INP(&[adres bazowy interfej-
su CENTRONICS]+1)
Uwaga: najstarszy bit rejestru
wejúciowego, odpowiadaj¹cy wy-
korzystywanemu do badania stanu
uk³adu UM91531 wejúciu BUSY
jest sprzÍtowo negowany.
Podczas generowania sygna³u
DTMF, na wyjúciu TONE IC1
pojawia siÍ ci¹g impulsÛw, ktÛre
wysterowuj¹ bazÍ tranzystora T2.
L Z Z Z Z
“Z” stan wysokiej impedancji
zezwolenia TOE. Poniewaø we-
júcie to zosta³o do³¹czone do
wyjúcia D6 szyny danych inter-
fejsu CENTRONICS, moøemy
uczyniÊ to za pomoc¹ nastÍpu-
j¹cego polecenia:
OUT &H[adres bazowy interfej-
su CENTRONICS],64
Wejúcie analogowe IC2 zosta-
³o za poúrednictwem kondensa-
tora C3 do³¹czone do wtÛrnego
uzwojenia transformatora TR1,
ktÛrego zadaniem jest galwanicz-
Rys. 3. Odpowiedź odbiornika DTMF na dowolny sygnał standardowy.
Elektronika Praktyczna 1/2000
67
32021703.015.png 32021703.016.png 32021703.017.png
Interfejs−modem DTMF do komputera PC
pozostaje nam juø tylko stwier-
dzenie, jaki jest jego kod. Uczy-
nimy do odczytuj¹c stan czterech
m³odszych bitÛw rejestru wejúcio-
wego interfejsu CENTRONICS, za
pomoc¹ polecenia:
INP(&[adres bazowy interfej-
su CENTRONICS] +1)
Przekaünik REL1 s³uøy do
do³¹czania linii telefonicznej do
naszego interfejsu podczas jego
pracy. Przekaünik zostaje w³¹-
czony przez tranzystor T2 po
podaniu stanu wysokiego na wy-
júcie D5 szyny danych interfejsu
CENTRONICS. Stan ten musi
byÊ utrzymywany na tym wyjúciu
przez ca³y czas pracy interfejsu.
WYKAZ ELEMENTÓW
Rezystory
R1, R5: 100k
R3: 300k
R4, R6: 10k
Kondensatory
C1: 10nF
C2, C3, C5: 100nF
C4: 220
F/16V
Półprzewodniki
IC1: UM91531 lub odpowiednik
IC2: UM92870 lub odpowiednik
D1, D2: 1N4148 lub odpowiednik
T1, T2: BC548 lub odpowiednik
Różne
CON1: złącze Centronics−36
CON2, CON3: ARK2 (3,5mm)
Q1, Q2: kwarc 3,579MHz
REL1: przekaźnik OMRON 5V
TR1: transformator telefoniczny
Rys. 4. Rozmieszczenie elementów
na płytce drukowanej.
Montaø i†uruchomienie
Na rys. 4 pokazano rozmiesz-
czenie elementÛw na dwustronnej
p³ytce drukowanej, ktÛrej mozaiki
úcieøek s¹ dostÍpne w Internecie
pod adresem: http://www.ep.com.-
pl/pcb.html oraz na p³ycie CD-
EP01/2000.
Montaø wykonujemy w†typowy
sposÛb, rozpoczynaj¹c od wluto-
wania w†p³ytkÍ rezystorÛw, a†koÒ-
cz¹c na zamontowaniu z³¹cza
CENTRONICS. Jest to jedyna czyn-
noúÊ, na wykonanie ktÛrej musi-
my zwrÛciÊ wiÍksz¹ uwagÍ. Z³¹-
cze posiada 36 cienkich wypro-
wadzeÒ, ktÛre ³atwo przez nie-
uwagÍ zgi¹Ê i†uszkodziÊ.
Zmontowany ze sprawnych
elementÛw uk³ad nie wymaga
jakiegokolwiek uruchamiania ani
regulacji i†dzia³a natychmiast
prawid³owo, oczywiúcie po na-
pisaniu odpowiedniego progra-
mu. SprawnoúÊ wykonanego
uk³adu moøna szybko przetesto-
waÊ za pomoc¹ prostego progra-
miku napisanego w†jÍzyku BA-
SIC ( list. 1 ).
Program ten wykonuje arcy-
prost¹ czynnoúÊ: wysy³a do nie
pod³¹czonej jeszcze linii telefo-
nicznej kolejne kody DTMF, na-
tychmiast sam je odczytuje i†wy-
úwietla na ekranie.
ne odizolowanie interfejsu (i co
waøniejsze, cennego komputera!)
od linii telefonicznej. Bezpoúred-
nio po odebraniu przez uk³ad
IC2 waønej transmisji DTMF na
jego wyjúciu informacyjnym STD
pojawia siÍ impuls dodatni
(patrz rys. 3 ) o†d³ugoúci propor-
cjonalnej do czasu trwania ode-
branego sygna³u. ObecnoúÊ tego
impulsu moøemy stwierdziÊ od-
czytuj¹c stan wejúcia STROBE
interfejsu CENTRONICS za po-
moc¹ polecenia:
INP ([adres bazowy interfejsu
CENTRONICS +2])
Takøe i†w†tym przypadku naj-
m³odszy bit rejestru dwukierunko-
wego (STROBE) jest poddawany
inwersji sprzÍtowej.
Po stwierdzeniu odebrania
przez IC2 waønego sygna³u DTMF,
chyî na inne sygna³y. Uniemoø-
liwia to np. odebrania w†prosty
sposÛb informacji nagranych na
automatycznej sekretarce.
Na szczÍúcie przystosowanie
interfejsu do odbierania informa-
cji s³ownej bÍdzie polegaÊ w†naj-
prostszym przypadku na do³¹cze-
niu za poúrednictwem kondensa-
tora wtÛrnego obwodu transforma-
tora separuj¹cego do wejúcia linii
karty düwiÍkowej komputera.
Uzyskamy w†ten sposÛb moøli-
woúÊ nie tylko s³uchania informa-
cji g³osowej, ale takøe zapisywa-
nia jej na dysku, np. w†formacie
*.WAV.
Zbigniew Raabe, AVT
zbigniew.raabe ep.com.pl
Wzory p³ytek drukowanych w for-
macie PDF s¹ dostÍpne w Internecie
pod adresem: http://www.ep.com.pl/
pcb.html oraz na p³ycie CD-EP01/
2000 w katalogu PCB .
List. 1.
X = 0
DO
OUT &H378, X + 64 + 32
z = INP(&H379)
PRINT z,
REM FOR r = 1 TO 200: NEXT r
OUT &H378, X + 16 + 32 + 64
FOR r = 1 TO 1000: NEXT r
OUT &H378, X + 64 + 32
FOR r = 1 TO 1000: NEXT r
z = INP(&H379)
PRINT z
FOR r = 1 TO 100000: NEXT r
X = X + 1
IF X = 16 THEN X = 0
LOOP
Moøliwe modyfikacje
uk³adu
Prezentowany w†artykule inter-
fejs posiada jedn¹, nie zawsze
istotn¹ i†³atw¹ do usuniÍcia wadÍ.
Przystosowany jest tylko do prze-
kazywania informacji w†kodzie
DTMF i†pozostaje ca³kowicie ìg³u-
68
Elektronika Praktyczna 1/2000
R2: 51k
32021703.018.png 32021703.019.png 32021703.020.png 32021703.021.png 32021703.022.png 32021703.023.png
Zgłoś jeśli naruszono regulamin