8 bitowy przetwornik A C i C A do PC 2


8-bitowy przetwornik A/C i C/AKdo PC
P R O J E T Y
8-bitowy przetwornik A/C
i C/A do PC, część 2
kit AVT-444
Pierwsza czÍśĘ artykuÅ‚u
zawierała opis konstrukcji
elektrycznej karty przetwornika
oraz procedurÍ montaÅ‚owÄ…
i uruchomieniowÄ…. W drugiej
czÍÅ›ci postaramy siÍ pokazaĘ
Czytelnikom, w jaki sposÛb
mołna stworzyĘ samodzielnie
oprogramowanie do tej karty,
ktÛra mimo niewielkiej liczby
elementÛw, posiada duÅ‚e
mołliwości funkcjonalne. Daje
ona naprawdÍ szerokie pole
do popisu dla programisty.
montaÅ‚, a uniknie siÍ pÛüniej
kÅ‚opotÛw z uruchamianiem urzÄ…-
Jeszcze trochÍ dzenia.
o montału Przed zainstalowaniem karty
i uruchomieniu naleÅ‚y zwrÛciĘ uwagÍ czy nie ma
Zapewne kaÅ‚dy, po zmonto- zwarĘ na zÅ‚Ä…czu krawÍdziowym
waniu karty, z wielkimi emocja- (ze wzglÍdu na technologiÍ zÅ‚o-
mi zainstaluje ją w swoim kom- cenia złącza jest to wielce praw-
puterze. Po pierwszej chwili nie- dopodobne). Jełeli, po włołeniu
pewności (czy komputer wystar- karty, komputer nie uruchomił
tuje, czy teÅ‚ nie da znaku Å‚ycia) siÍ, tzn. jego ekran pozostaÅ‚ czar-
zwykle pojawi siÍ ekran starto- ny lub zatrzymaÅ‚ siÍ podczas
wy komputera i system operacyj- procedur POST, mołemy stwier-
ny zostanie załadowany. Słowo dziĘ, łe został popełniony błąd
zwykle pojawiÅ‚o siÍ w poprzed- podczas montaÅ‚u karty lub pÅ‚ytka
nim zdaniu nie bez powodu. drukowana jest uszkodzona. Na-
Z doÅ›wiadczeÒ serwisu AVT wy- leÅ‚y pamiÍtaĘ, Å‚e zainstalowanie
nika, Å‚e wiele osÛb prÛbuje üle zmontowanej karty w kompu-
zmontowaĘ dosyĘ delikatną kon- terze mołe doprowadziĘ do jego
strukcjÍ, jakÄ… z pewnoÅ›ciÄ… jest uszkodzenia!
karta do komputera, nie posia- JeÅ‚eli komputer uruchomiÅ‚ siÍ
dajÄ…c odpowiedniego sprzÍtu lub i system operacyjny zostaÅ‚ zaÅ‚ado-
doświadczenia w lutowaniu. wany, to mołna wykonaĘ proce-
Konstrukcja karty, dziÍki zasto- durÍ testujÄ…cÄ… karty za pomocÄ…
sowaniu wyrafinowanych ukła- programu PTEST. Procedura ta
dÛw scalonych, jest niezwykle zostaÅ‚a opisana w pierwszej czÍÅ›ci
prosta i wystarczy poÅ›wiÍciĘ tro- artykuÅ‚u. Program PTEST pracuje
chÍ wiÍcej czasu na dokÅ‚adny pod kontrolÄ… MS-DOS, tak wiÍc
Elektronika Praktyczna 5/98
63
8-bitowy przetwornik A/C i C/A do PC
wstÍpnego uruchomienia karty Druga za-
mołna dokonaĘ na dowolnym kładka umołli-
komputerze. Sytuacja jest idealna, wia przetesto-
jeÅ‚eli do takich eksperymentÛw wanie karty
posiadamy starÄ… pÅ‚ytÍ gÅ‚ÛwnÄ… (na pracujÄ…cej jako
rynku wtÛrnym jest sporo pÅ‚yt przetwornik
gÅ‚Ûwnych komputerÛw klasy AT AC. W trybie
w cenie okoÅ‚o 30..40 zÅ‚). JeÅ‚eli tym rÛwnieÅ‚
diody bÍdÄ… Å›wieciĘ siÍ zgodnie jest moÅ‚liwe
z opisem, to mołna stwierdziĘ zmienianie za-
dwie rzeczy: kresu napiÍĘ
Rys. 11. WyglÄ…d ekranu programu testowego 444_TEST -
1.karta prawdopodobnie jest wyjściowych,
zakładka przetwornika AC.
zmontowana prawidłowo; dodatkowo
2.dekoder adresowy (US2) jest mołna sterowaĘ wzmacniaczem ne tylko bity B2, B3, B4 i B5.
sprawny i prawdopodobnie nie o programowalnym wzmocnieniu Pierwsze dwa ustawiajÄ… wzmoc-
wystÍpuje konflikt adresÛw PGA103 (US5). Przetwornik US1 nienie wzmacniacza wyjÅ›ciowego
z innymi urzÄ…dzeniami. jest odczytywany co 100 ms, zgodnie z tabelÄ… 2, natomiast B4
W tym momencie nie mołna a odczytywana wartośĘ jest wy- i B5 ustawiają zakresy przetwarza-
jednak mieĘ pewnoÅ›ci czy prze- Å›wietlana w centralnej czÍÅ›ci ok- nia zgodnie z tabelÄ… 1. Znaczenie
twornik AD7569 (US1) dziaÅ‚a pra- na (rys. 11). tych bitÛw byÅ‚o przedstawione
widÅ‚owo. Aby siÍ o tym przeko- Karta, ktÛra pomyÅ›lnie prze- w pierwszej czÍÅ›ci artykuÅ‚u. Na
naĘ moÅ‚na skorzystaĘ z programu jdzie wyÅ‚ej wymienione prÛby, listingu 1 zostaÅ‚a przedstawiona
TEST_444 znajdujÄ…cego siÍ na jest sprawna. procedura reagujÄ…ca na zmianÍ
dyskietce dołączanej do kitu. Pro- przycisku typu RadioButton
gram ten pracuje pod kontrolÄ… PrzestrzeÒ adresowa w grupie przyciskÛw o nazwie Ra-
Windows 95 i zawiera dwie za- Komunikacja z kartÄ… odbywa dioGroupWzmocnienie. Pod na-
kÅ‚adki: siÍ poprzez dwa 8-bitowe porty zwÄ… Kbyte jest ukryty rejestr
- do karty pracującej jako prze- o adresach 31Eh i 31Fh. Pierwszy kontrolny. Procedura została
twornik CA (rys. 10); z nich jest portem danych. Po- skompilowana przy pomocy kom-
- do karty pracujÄ…cej jako prze- przez ten port odbywa siÍ odczyt pilatora Delphi firmy Borland,
twornik AC (rys. 11). zmierzonych wartości z przetwor- a jej efektem jest zmiana wartości
W pierwszym trybie, w central- nika AC oraz zapis wartości do wzmocnienia wzmacniacza wy-
nej czÍÅ›ci okna programu jest przetwornika CA. NaleÅ‚y pamiÍ- jÅ›ciowego. AnalogicznÄ… procedurÍ
umieszczony pionowy pasek prze- taĘ, Å‚e dla zakresÛw unipolarnych moÅ‚na napisaĘ do obsÅ‚ugi zdarze-
wijania. PrzesuniÍcie tego paska dane sÄ… zapisywane/odczytywane nia zmiany zakresu przetwarza-
powoduje zmianÍ napiÍcia na wy- w naturalnym kodzie binarnym nia.
jÅ›ciu przetwornika. Po doÅ‚Ä…czeniu (NKB), a dla zakresÛw bipolar- OprÛcz dwÛch wymienionych
do tego wyjÅ›cia woltomierza po- nych w kodzie uzupeÅ‚nieÒ do portÛw, do pracy karty jest nie-
winien on mierzyĘ napiÍcie o war- dwÛch (U2). Drugi port jest re- zbÍdne zarezerwowanie portu
tości zgodnej z wyświetlaną obok jestrem sterującym pracą karty. o adresie 31Dh. Port ten jest wy-
paska przewijania wartością na- Podczas odczytu tego portu jedy- korzystywany przy odczycie war-
piÍcia. Dodatkowo moÅ‚na zmie- nie bit piÄ…ty jest istotny. JeÅ‚eli toÅ›ci zmierzonej z przetwornika.
niaĘ zakres napiÍĘ wyjÅ›ciowych jest on rÛwny ì0î, to przetwornik Przed kaÅ‚dym odczytaniem war-
przeÅ‚Ä…czajÄ…c przycisk w grupie Za- zakoÒczyÅ‚ przetwarza-
kres przetwarzania. Przy przełą- nie i mołna odczytaĘ
Listing 1.
czaniu pomiÍdzy napiÍciami uni- wynik pomiaru z por-
procedure ZmianaWzmocnienia;
polarnymi i bipolarnymi powinno tu danych. Podczas za-
begin
byĘ sÅ‚yszalne przeÅ‚Ä…czanie stykÛw pisu do rejestru steru-
case RadioGroupWzmocnienie.ItemIndex of
przekaünika. jÄ…cego sÄ… wykorzysta-
0 : {wzmocnienie 1/1 V }
begin
KByte := KByte and $f3; { 0 na D2 i D3 }
end; { 1/1 V }
1 : {wzmocnienie 1/10 V }
begin
KByte := KByte and $f3; { 0 na D2 i D3 }
KByte := KByte or $0b; { 0 na D2 i 1 na D3 }
end; { 1/10 V }
2 : {wzmocnienie 1/100 V }
begin
KByte := KByte and $f3; { 0 na D2 i D3 }
KByte := KByte or $07; { 1 na D2 i 0 na D3 }
end; { 1/100 V }
end; {case }
asm { wysłanie bajtu kontrolnego }
mov dx,Kport
mov al,Kbyte
out dx,al.
end; { asm }
Rys. 10. WyglÄ…d ekranu programu testowego 444_TEST - end; { zmiana wzmocnienia }
zakładka przetwornika CA.
Elektronika Praktyczna 5/98
64
8-bitowy przetwornik A/C i C/A do PC
Fragment programu odczytują- wcześniej, komponenty umołli-
Listing 2.
cego wartośĘ zmierzonÄ… z prze- wiajÄ…ce zmianÍ zakresu przetwa-
procedure ScrollBar1Change;
twornika moÅ‚e wyglÄ…daĘ nastÍpu- rzania oraz wzmocnienia. W cen-
begin
jÄ…co: tralnej czÍÅ›ci jest umieszczone
Dana := ScrollBar1.Position;
mov dx,31dh rozwijane menu słułące do wy-
asm
out dx,al. boru czÍstotliwoÅ›ci prÛbkowania.
mov dx,DPort
mov al,Dana ; zapis przypadkowej Do wyboru sÄ… nastÍpujÄ…ce wartoÅ›-
out dx,al
; wartości do portu 31Dh ci:
end; { asm }
mov dx,Port - 0,01 Hz;
end; { zmiana napięcia na wyjściu CA }
; 31Eh lub 31Fh - 0,02 Hz;
in al,dx - 0,05 Hz;
tości z przetwornika naleły doko- ; odczyt portu - 0,1 Hz;
naĘ wpisania dowolnej wartości mov Dana,al - 0,2 Hz;
pod ten adres. ; dana 8-bitowa - 0,5 Hz;
Na listingu 3 została przedsta- - 1 Hz;
Zapis i odczyt rejestrÛw wiona procedura odczytujÄ…ca po- - 2 Hz;
Zapis do portu danych prze- miar z przetwornika. ProcedurÍ tÄ… - 5 Hz;
twornika i do rejestru sterującego mołna uływaĘ do obsługi zdarze- - 10 Hz;
odbywa siÍ w standardowy spo- nia OnTimer (wystÍpujÄ…cego co - 20 Hz;
sÛb. Fragment programu w asem- zadanÄ… liczbÍ milisekund) kompo- - 50 Hz;
blerze dokonującego zapisu do nentu Timer lub mołna ją wywo- - 100 Hz;
portu jest umieszczony poniÅ‚ej: Å‚ywaĘ po naciÅ›niÍciu przycisku. - 200 Hz;
; zapis do portu karty WartośĘ odczytana z przetwornika - 500 Hz;
mov dx,Port jest zapisywana w zmiennej Dana. - 1 kHz;
; 31Eh lub 31Fh - 2 kHz;
mov al,Dana Program AVT444 - 5 kHz;
; dana 8-bitowa Dyskietka dołączana do płytki - 10 kHz;
out dx,al. (AVT-444A) i kitu (AVT-444B) za- - 20 kHz;
; zapis do portu wiera, oprÛcz programu PTEST - 50 kHz;
Na listingu 2 została przedsta- i 444_TEST, program o nazwie - 100 kHz.
wiona procedura obsÅ‚ugujÄ…ca zda- AVT444. Jest to przykÅ‚adowa ap- Z prawej strony znajduje siÍ
rzenie zmiany pozycji na kompo- likacja umoÅ‚liwiajÄ…ca wykorzysta- przyciski: OtwÛrz, Start/Stop, Za-
nencie typu ScrollBar. Aby proce- nia karty przetwornika AC i CA pisz, Drukuj, Koniec. Po wciÅ›niÍ-
dura dziaÅ‚aÅ‚a poprawnie naleÅ‚y jako prostego oscyloskopu z gene- ciu przycisku OtwÛrz jest moÅ‚li-
ustawiĘ, dla ScrollBar1, wartości ratorem funkcyjnym. Program we wczytanie z dysku pliku z da-
właściwości Min i Max odpowied- AVT444, podobnie jak program nymi pomiarowymi. Dane te moł-
nio na 0 i 255. Przy takich zaÅ‚o- testujÄ…cy, ma dwie zakÅ‚adki, dziÍ- na przeglÄ…daĘ lub drukowaĘ (przy-
Å‚eniach przesuniÍcie paska bÍdzie ki ktÛrym jest moÅ‚liwe przeÅ‚Ä…cza- cisk Drukuj). Przycisk Zapisz
powodowaÅ‚o zmianÍ napiÍcia wy- nie pomiÍdzy oscyloskopem a ge- umoÅ‚liwia zapisanie danych zare-
jściowego przetwornika CA. Nale- neratorem. jestrowanych przez przetwornik
Å‚y zwrÛciĘ uwagÍ, Å‚e przytoczona Na rys. 12 pokazano wyglÄ…d na dysk. Przycisk Start/Stop
procedura jest uproszczona, gdył okna oscyloskopu (przetwornik umołliwia włączenie/wyłączenie
nie uwzglÍdnia faktu, Å‚e dla na- AC). W gÛrnej czÍÅ›ci okna jest rejestrowania danych. Dane te
piÍĘ bipolarnych bajt danych po- wyÅ›wietlany wykres czasowy. Po- moÅ‚na pÛüniej przeglÄ…daĘ (posÅ‚u-
winien byĘ zapisany w kodzie U2. niÅ‚ej wykresu jest umieszczony gujÄ…c siÍ poziomym paskiem prze-
poziomy pasek wijania), nagraĘ na dysk, lub
przewijania, wydrukowaĘ. Po naciÅ›niÍciu przy-
ktÛry umoÅ‚li- cisku Koniec praca programu zo-
wia przeglÄ…da- staje zakoÒczona.
nie zarejestro- Na rys. 13 pokazano wyglÄ…d
wanego w pa- okna generatora (przetwornik CA).
miÍci kompu- W gÛrnej czÍÅ›ci okna jest wy-
tera lub od- świetlany wykres czasowy, poka-
czytanego
z dysku, wy-
kresu pomia- Listing 3.
rowego. Dolna
procedure TimerTick;
czÍśĘ okna za- begin
asm
wiera przycis-
mov dx,$31d
out dx,al
ki sterujÄ…ce
mov dx,DPort
pracÄ… karty.
in al,dx
mov Dana,al
Z lewej strony
end;
sÄ… umieszczo-
Rys. 12. Wygląd ekranu przykładowego programu
end; { Timer tick }
ne, opisane
AVT444 - zakładka przetwornika AC.
Elektronika Praktyczna 5/98
65
8-bitowy przetwornik A/C i C/A do PC
zujÄ…cy przebieg, generowany przez m o Å‚ l i w e
kartÍ przetwornika. Dolna czÍśĘ wygenerowanie
okna zawiera elementy umołli- przebiegu
wiajÄ…ce sterowanie pracÄ… karty. opisanego
Z lewej strony sÄ… umieszczone danymi z
cztery przyciski, ktÛrymi moÅ‚na pliku wej-
wybraĘ rodzaj sygnału na wyjściu ściowego przy
przetwornika. Do wyboru mamy: zadanej czÍs-
- napiÍcie staÅ‚e; totliwoÅ›ci.
- przebieg prostokątny; Jełeli nie
- przebieg sinusoidalny; bÍdzie to moÅ‚-
- przebieg wg wzorca wczytanego liwe, zostanie
z pliku. wyświetlony
Po wybraniu pierwszego przy- odpowiedni
cisku na wyjściu przetwornika komunikat, w
pojawia siÍ napiÍcie staÅ‚e o war- ktÛrym bÍdzie
tości regulowanej pionowym pas- p o d a n a
Rys. 12. Wygląd ekranu przykładowego programu
kiem przewijania z centralnej maksymalna
AVT444 - zakładka przetwornika CA.
czÍÅ›ci okna. Przebiegi: prostokÄ…t- czÍstotliwośĘ,
ny i sinusoidalny, nie wymagają z jaką zadany przebieg mołna ty. Przy tak bogatych mołliwoś-
omÛwienia. CiekawÄ… wÅ‚aÅ›ciwoÅ›ciÄ… generowaĘ. ciach, jakie posiada omawiana
programu jest czwarta moÅ‚liwośĘ, W centralnej czÍÅ›ci, oprÛcz karta, moÅ‚e ona znaleüĘ zastoso-
czyli generowanie sygnaÅ‚u zgod- wspomnianego juÅ‚ paska do usta- wanie w nieskoÒczonej liczbie ap-
nie z wzorcem uÅ‚ytkownika. Wzo- wiania napiÍcia staÅ‚ego, znajduje likacji. PrzykÅ‚adem moÅ‚e byĘ sys-
rzec ten jest wczytywany po siÍ grupa przyciskÛw typu Radio- tem nadzorujÄ…cy jakiÅ› proces,
naciÅ›niÍciu przycisku OtwÛrz, zna- Button umoÅ‚liwiajÄ…ca zmianÍ za- ktÛry monitoruje sygnaÅ‚ wejÅ›cio-
jdujÄ…cego siÍ z prawej strony. Plik kresu przetwarzania. W centralnej wy (przetwornik AC) i po prze-
taki moÅ‚na stworzyĘ za pomocÄ… czÍÅ›ci jest umieszczone rozwijane kroczeniu pewnej wartoÅ›ci gene-
dowolnego edytora tekstu. Plik menu sÅ‚uÅ‚Ä…ce do wyboru czÍstot- ruje sygnaÅ‚ alarmowy (przetwor-
tego typu musi speÅ‚niaĘ nastÍpu- liwoÅ›ci prÛbkowania (wartoÅ›ci nik CA). Karta moÅ‚e rÛwnieÅ‚
jÄ…ce warunki: czÍstotliwoÅ›ci prÛbkowania sÄ… ta- pracowaĘ jako oscyloskop dla
- maksymalna dÅ‚ugośĘ pliku z kie same, jak dla przetwornika czÍstotliwoÅ›ci akustycznych, lub
danymi: 5000 bajtÛw; AC). Z prawej strony znajdujÄ… siÍ jako ürÛdÅ‚o sygnaÅ‚u zegarowego.
- dane muszą byĘ zapisane w przyciski o znaczeniu analogicz- Przy konstruowaniu przystawek
formacie heksadecymalnym; nym, jak dla przetwornika AC. wykonawczych naleÅ‚y pamiÍtaĘ,
- w kałdym wierszu mołe byĘ łe układ OPA633 (US4) nie jest
podana tylko jedna wartośĘ. Podane wyłej informacje są zabezpieczony przed przeciąłe-
Po wczytaniu pliku z danymi, wystarczajÄ…ce, aby samodzielnie niem.
program sprawdza czy jest stworzyĘ oprogramowanie do kar- Paweł Zbysiński
Elektronika Praktyczna 5/98
66


Wyszukiwarka