ˇ ´ UCEN ´I TECHNICKE ´ V BRNEˇ VYSOKE BRNO UNIVERSITY OF TECHNOLOGY
ˇ ´ICH TECHNOLOGI´I FAKULTA INFORMACN ´ ´ U ˚ USTAV INTELIGENTN´ICH SYSTEM FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS
´ VYUKOV Y´ OSCILOSKOP EDUCATION PURPOSE OSCILLOSCOP
´ RSK ˇ ´ PRACE ´ BAKALA A BACHELOR’S THESIS
´ AUTOR PRACE
ˇ MARTIN SVANTNER
AUTHOR
´ VEDOUC´I PRACE SUPERVISOR
BRNO 2008
ˇ ´I KUNOVSKY, ´ CSc. doc. Ing. JIR
Abstrakt Tato pr´ ace analyzuje moˇznosti, jak vybavit ˇskoln´ı uˇcebnu digit´aln´ımi osciloskopy. Z´amˇerem je podat student˚ um v´ yuku v laboratoˇr´ıch pˇredmˇet˚ u Teorie obvod˚ u a Prvky poˇc´ıtaˇc˚ u zaj´ımavˇejˇs´ı a praktiˇctˇejˇs´ı formou. Sloˇzit´ a profesion´aln´ı zaˇr´ızen´ı nejsou pro potˇreby v´ yuky vhodn´a, nejenom svou cenou ale pˇredevˇs´ım sloˇzitost´ı obsluhy. Proto jsem se zamˇeˇril tak´e na nestandardn´ı ˇreˇsen´ı, kter´ a mohou b´ yt pro v´ yuku pˇr´ınosnˇejˇs´ı.
Kl´ıˇ cov´ a slova osciloskop, ADuC832, IPR, v´ yuka
Abstract This bachelor’s thesis analyses possibilities, how purchase digital oscilloscopes into school laboratory. Target is to make education more interesting and more practital than is teoretical explication. Complicated professional equipments are not right for education because they are very expensive and hard to use. So I aim for special equipment, which can be more acquisition.
Keywords Oscilloscop, ADuC832, IPR, Education
Citace ˇ Martin Svantner: V´ yukov´ y osciloskop, bakal´aˇrsk´a pr´ace, Brno, FIT VUT v Brnˇe, 2008
V´ yukov´ y osciloskop Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze jsem tuto bakal´ aˇrskou pr´aci vypracoval samostatnˇe pod veden´ım pana doc. Ing. Jiˇr´ıho Kunovck´eho CSc. ....................... ˇ Martin Svantner 11. kvˇetna 2008
Podˇ ekov´ an´ı T´ımto bych chtˇel podˇekovat pˇredevˇs´ım panu doc. Ing. Kunovsk´emu CSc. za vˇecn´e a pˇr´ınosn´e pˇripom´ınky pˇri vytv´ aˇren´ı t´eto bakal´aˇrsk´e pr´ace.
ˇ c Martin Svantner,
2008. Tato pr´ ace vznikla jako ˇskoln´ı d´ılo na Vysok´em uˇcen´ı technick´em v Brnˇe, Fakultˇe informaˇcn´ıch technologi´ı. Pr´ ace je chr´ anˇena autorsk´ym z´ akonem a jej´ı uˇzit´ı bez udˇelen´ı opr´ avnˇen´ı autorem je nez´ akonn´e, s v´yjimkou z´ akonem definovan´ych pˇr´ıpad˚ u.
Obsah ´ 1 Uvod 1.1 Charakteristika osciloskopu . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.1 Blokov´ y popis klasick´eho osciloskopu . . . . . . . . . . . . . . . . . . 1.2 Parametry osciloskopu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 2 2 3
2 Moˇ znosti ˇ reˇ sen´ı 2.1 Hotov´e ˇreˇsen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Vlastn´ı ˇreˇsen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 5 7
3 V´ ybˇ er ˇ reˇ sen´ı 3.1 Rozbor moˇznost´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Popis vybran´eho ˇreˇsen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9 9 9
4 Implementace ˇ reˇ sen´ı 4.1 Nap´ ajen´ı . . . . . . . . . . . 4.2 Vstupn´ı modul . . . . . . . 4.3 Mikrokontrol´er ADuC 832 . 4.3.1 Charakteristika . . . 4.3.2 A/D pˇrevodn´ık . . . 4.3.3 Datov´ a komunikace .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
13 13 13 14 14 16 19
5 Z´ avˇ er
22
A V´ yukov´ y materi´ al AD pˇ revodn´ık
23
B Z´ akladn´ı zapojen´ı ADuCu 832
35
1
Kapitola 1
´ Uvod C´ılem t´eto bakal´ aˇrsk´e pr´ ace je navrhnout ˇreˇsen´ı digit´aln´ıho osciloskopu. Pˇri n´avrhu jsem mˇel pˇredevˇs´ım ve vˇsech parametrech zohlednit uˇzit´ı v r´amci v´ yuky pˇredmˇet˚ u Prvky poˇc´ıtaˇc˚ u (IPR) a Teorie obvod˚ u (ITO). V n´asleduj´ıc´ıch ˇc´ast´ıch t´eto pr´ace se postupnˇe zamˇeˇr´ım na z´akladn´ı vlastnosti osciloskop˚ u, nad kter´ ymi je vhodn´e se pˇri n´avrhu zamyslet. D´ale zde pop´ıˇsi moˇznosti ˇreˇsen´ı takov´ehoto osciloskopu. Velkou ˇc´ast t´eto pr´ace pot´e vˇenuji popisu vybran´eho ˇreˇsen´ı a jeho vlastnost´ı. Nakonec zhodnot´ım dosaˇzen´e v´ ysledky a navrhnu rozˇs´ıˇren´ı a vylepˇsen´ı, kter´ ymi bych se chtˇel zab´ yvat ve sv´e diplomov´e pr´aci. V n´ asleduj´ıc´ı kapitole hloubˇeji sezn´am´ım ˇcten´aˇre s problematikou a vlastnostmi osciloskop˚ u.
1.1
Charakteristika osciloskopu
y osciloskop je elektronick´e zaˇr´ızen´ı um´ıstˇen´e v krabici pˇribliˇznˇe o velikosti stoln´ıho [8] Typick´ poˇc´ıtaˇce. Na jeho ˇceln´ı stranˇe se nach´az´ı obrazovka s mˇr´ıˇzkou, nˇekolik otoˇcn´ ych a pˇrep´ınac´ıch ovl´adac´ıch prvk˚ u. Tak´e zde b´ yvaj´ı um´ıstˇeny konektory pro pˇripojen´ı mˇeˇr´ıc´ıch sond. Osciloskop z praktick´eho hlediska je pˇr´ıstroj, umoˇzn ˇuj´ıc´ı na sv´e obrazovce sledovat pr˚ ubˇeh mˇeˇren´eho napˇet´ı v z´ avislosti na ˇcase nebo na druh´em pr˚ ubˇehu napˇet´ı.
1.1.1
Blokov´ y popis klasick´ eho osciloskopu
• vstup V z´ akladn´ım reˇzimu jsou dva vertik´aln´ı kan´aly YA a YB . V reˇzimu XY jeden X a jeden Y kan´ al. Velikost vstupn´ıho sign´alu je upravena dˇeliˇcem a zesilovaˇcem na u ´roveˇ n, kterou lze d´ ale zpracovat (zobrazit, pˇrev´adˇet). • ˇ casov´ a z´ akladna ˇ ˇ je obvod generuj´ıc´ı pilov´e napˇet´ı, kter´ Casov´ a z´ akladna [9] (d´ ale jen CZ) ym se ˇr´ıd´ı posun aktu´ alnˇe zobrazen´eho bodu po obrazovce ve smˇeru zleva doprava (n´ar˚ ust napˇet´ı ˇ ˇ CZ). Pˇri zpˇetn´em bˇehu paprsku doleva (prudk´ y pokles napˇet´ı CZ) je obrazovka zatemnˇena. • synchronizace Spouˇstˇen´ı generov´ an´ı sign´ alu ˇcasov´e z´akladny je nutno synchronizovat s pozorovan´ ym ˇ se mus´ı sign´ alem. Pˇriv´ ad´ıme-li na vstup osciloskopu napˇr. sinusov´e napˇet´ı, bˇeh CZ ˇ spustil vˇzdy spustit vˇzdy v definovan´e f´azi vstupn´ıho sign´alu. Pokud by se bˇeh CZ
2
v jin´e f´ azi, na obrazovce by bylo zobrazeno mnoho pˇres sebe pˇreloˇzen´ ym sinusov´ ych ˇ pr˚ ubˇeh˚ u, protoˇze kaˇzd´ y pr˚ ubˇeh CZ by zobrazil vstupn´ı sign´al s jinou poˇc´ateˇcn´ı f´az´ı. ˇ spouˇst´ı podle u Pouˇz´ıvaj´ı se dva zp˚ usoby synchronizace, a sice intern´ı, kdy se CZ ´rovnˇe sledovan´eho sign´ alu nebo extern´ı, kdy se synchronizaˇcn´ı impulsy pˇriv´ad´ı na samostatn´ y konektor “ext sync”. • zobrazovac´ı jednotka Pro zobrazen´ı mˇeˇren´eho sign´alu je moˇzno pouˇz´ıt CRT 1 obrazovku. V tomto pˇr´ıpadˇe je na vertik´ aln´ı vychylovac´ı destiˇcky obrazovky pˇriveden upraven´ y mˇeˇren´ y sign´al a ˇ na horizont´ aln´ı sign´ al z CZ, toto pro jednoduch´e mˇeˇren´ı. Pˇri mˇeˇren´ı v reˇzimu XY je na horizont´ aln´ı vychylovac´ı destiˇcky pˇriveden druh´ y vstupn´ı sign´al X. Pro odeˇc´ıt´ an´ı vlastnost´ı zobrazen´eho sign´alu slouˇz´ı mˇr´ıˇzka, kterou je obrazovka pˇrekryt´a. Z poˇctu odeˇcten´ ych d´ılku obrazovky a nastaven´ı vstupn´ıch dˇeliˇc˚ u je moˇzno vypoˇc´ıtat amplitudu a frekvenci sign´ alu. Dalˇs´ı moˇznost´ı pro zobrazen´ı je u modern´ıch pˇr´ıstroj˚ u pouˇzit´ı LCD
1.2
2
displeje.
Parametry osciloskopu
Pˇri v´ ybˇeru vhodn´eho osciloskopu je nutno sledovat nˇekolik parametr˚ u, kter´e urˇcuj´ı vhodnost dan´eho pˇr´ıstroje pro zam´ yˇslen´e pouˇzit´ı. • frekvenˇ cn´ı rozsah Frekvenˇcn´ı rozsah urˇcuje, jak´ y sign´al, s jakou frekvenc´ı je moˇzno takov´ ymto osciloskopem sledovat. Parametry vzorkovac´ı frekvence a frekvenˇcn´ı rozsah spolu u ´zce souvis´ı. ˇ C´ım v´ıce vzork˚ u se odeˇcte, t´ım “rychlejˇs´ı” sign´al je moˇzno sledovat. • vzorkovac´ı frekvence Vzorkovac´ı frekvence se ud´ av´a v poˇctech vzork˚ u za ˇcasovou jednotku. Nejˇcastˇeji v ksps (kilo sample per second), tj. 1000 vzork˚ u nebo Msps (mega sample per second), tj. 1000000 vzork˚ u. Vyjadˇruje z kolika vzork˚ u za sekundu bude sloˇzen v´ ysledn´ y zobrazen´ y sign´ al. • napˇ et’ov´ y rozsah Napˇet’ov´ y rozsah urˇcuje, jak´e maxim´aln´ı a minim´aln´ı napˇet´ı je moˇzno osciloskopem mˇeˇrit. Tento rozsah lze rozˇs´ıˇrit pouˇzit´ım vhodn´e mˇeˇr´ıc´ı sondy. • poˇ cet bit˚ u pˇ revodn´ıku Tento parametr je relevantn´ı pouze pro digit´aln´ı osciloskopy. Poˇcet bit˚ u AD 3 pˇrevodn´ıku ovlivˇ nuje pˇresnost, resp. citlivost s jakou je mˇeˇren´ y analogov´ y sign´al pˇrev´adˇen na digit´ aln´ı, tj. ˇc´ıselnou hodnotu. • poˇ cet kan´ al˚ u Poˇcet kan´ al˚ u urˇcuje, kolik sign´al˚ u lze na jednom osciloskopu sledovat z´aroveˇ n. 1
4
Cathode ray tube, katodov´ a trubice, obrazovka kter´ a se dlouhou dobu pouˇz´ıvala napˇr. v televizorech Liquid crystal display, displej z tekut´ ych krystal˚ u 3 Analogovo-digit´ aln´ı, elektronick´ a souˇc´ astka, kter´ a pˇrev´ ad´ı spojit´ y sign´ al na diskr´etn´ı, tj. ˇc´ıslicov´ y 4 Na dvoukan´ alov´em osciloskopu lze sledovat nejen dva sign´ aly z´ aroveˇ n, ale tak´e vyuˇz´ıt reˇzimu XY, kdy je jeden sign´ al zobrazen v z´ avislosti na druh´em. 2
3
• zp˚ usob zpracov´ an´ı sign´ alu Z tohoto hlediska m˚ uˇzeme osciloskopy rozdˇelit na analogov´e a digit´aln´ı. Mnoho sign´ al˚ u lze sledovat obˇema druhy, ale pˇresto oba maj´ı specifick´e vlastnosti, d´ıky kter´ ym se v´ıce nebo m´enˇe hod´ı pro dan´ yu ´kol. Pro sign´aly s vysokou frekvenc´ı, kter´e je nutn´e zobrazit v re´ aln´em ˇcase jsou ˇcasto preferov´any analogov´a zaˇr´ızen´ı. Naopak digit´ aln´ı zaˇr´ızen´ı umoˇzn ˇuj´ı zachytit a prohl´ıˇzet ud´alosti, kter´e se mohou ud´at pouze jednou. • komunikaˇ cn´ı schopnosti Moˇznost pˇredat namˇeˇren´ a data k dalˇs´ımu zpracov´an´ı, napˇr. osobn´ımu poˇc´ıtaˇci nebo tisk´ arnˇe je v´ ysadou digit´ aln´ıch zˇr´ızen´ı. Z hlediska vyuˇzit´ı ve v´ yuce jsou tyto vlastnosti velmi d˚ uleˇzit´e, nebot’ umoˇzn ˇuj´ı n´asledn´ y rozbor namˇeˇren´ ych pr˚ ubˇeh˚ u, diskusi nebo vzdˇel´ av´ an´ı bez nutnosti m´ıt vlastn´ı osciloskop. • cena Tak´e cena je d˚ uleˇzit´ ym faktorem pˇri v´ ybˇeru vhodn´eho zaˇr´ızen´ı. Levnˇejˇs´ı zaˇr´ızen´ı sice nedosahuj´ı ˇspiˇckov´ ych parametr˚ u, ale pro v´ yukov´e pouˇzit´ı mohou b´ yt dostaˇcuj´ıc´ı.
4
Kapitola 2
Moˇ znosti ˇ reˇ sen´ı Pˇri analyzov´ an´ı moˇznost´ı ˇreˇsen´ı, jak´ y osciloskop by byl nejvhodnˇejˇs´ı pro v´ yukov´e pouˇzit´ı jsem musel vz´ıt v u ´vahu vˇsechny v´ yˇse uveden´e parametry. Zhodnocen´ı vybran´ ych ˇreˇsen´ı pop´ıˇsi v n´ asleduj´ıc´ı kapitole.
2.1
Hotov´ eˇ reˇ sen´ı
Prvn´ım zp˚ usobem jak vybavit ˇskoln´ı uˇcebny, je n´akup hotov´eho zaˇr´ızen´ı. Poˇr´ızen´ı vyzkouˇsen´eho ˇreˇsen´ı je snazˇs´ı, rychlejˇs´ı a v´ ysledky mˇeˇren´ı mohou b´ yt pˇresnˇejˇs´ı. Je nutno ale zv´aˇzit nejenom cenu a jednoduchost, ale pˇredevˇs´ım pˇr´ınos pro v´ yuku. N´asleduj´ıc´ı seznam zaˇr´ızen´ı je pr˚ uˇrezem souˇcasn´e nab´ıdky na trhu. • Tektronix TDS3052B [6]Poloprofesion´ aln´ı digit´ aln´ı dvoukan´alov´ y osciloskop od zn´am´e firmy Tektronix. Toto zaˇr´ızen´ı disponuje 500 MHz ˇs´ıˇrkou frekvenˇcn´ıho p´asma, vzorkovac´ı frekvenc´ı 5.0 Gsps, barevn´ ym LCD monitorem, rozsahem vstupn´ıho napˇet´ı 150V. Zaznamenan´a data lze pro dalˇs´ı zpracov´ an´ı ukl´adat pomoc´ı vestavˇen´e disketov´e mechaniky. Komfort a vlastnosti tohoto pˇr´ıstroje jsou vyv´aˇzen´e cenou, kter´a se pohybuje kolem 150000 Kˇc.
Obr´ azek 2.1: Tektronix TDS3052B
5
• Ruˇ cn´ı osciloskop Velleman HPS40 Kapesn´ı, jednokan´ alov´ y digit´aln´ı osciloskop urˇcen´ y pro pr´aci v ter´enu, nebo vˇsude tam, kde nen´ı prostor a ˇcas pouˇz´ıt zaˇr´ızen´ı standardn´ı velikosti. Umoˇzn ˇuje sledovat sign´ aly s frekvenc´ı aˇz 12 MHz a maxim´aln´ım napˇet´ım 100V. Z dalˇs´ıch parametr˚ u: vzorkovac´ı frekvence aˇz 40 Msps, vertik´aln´ı rozliˇsovac´ı schopnost 8 bit˚ u. Funkce automatick´eho nastaven´ı usnadˇ nuje mˇeˇren´ı, v pˇr´ıpadech, kdy si potˇrebujeme rychle a snadno udˇelat pˇredstavu o nezn´am´eho sign´alu. Z´ıskan´a data lze pˇres rozhran´ı RS-232 snadno pˇren´est do poˇc´ıtaˇce. Cel´e toto zaˇr´ızen´ı lze koupit za 10000 Kˇc.
Obr´azek 2.2: Velleman HPS40
• EZ Digital OS-5020 Analogov´ y dvoukan´ alov´ y osciloskop, kter´ ym lze sledovat sign´al s frekvenc´ı max. 20 MHz a napˇet´ı aˇz 400 V. Cena za tento pˇr´ıstroj je kolem 6000 Kˇc.
Obr´ azek 2.3: EZ Digital OS-5020
6
• USBScope50 aln´ıho osciloskopu. Zaˇr´ızen´ı se pˇripojuje do USB portu poˇc´ıtaˇce, [7]Miniaturn´ı ˇreˇsen´ı digit´ ze kter´eho je tak´e nap´ ajeno. Sign´al vzorkuje 8 bitov´ ym pˇrevodn´ıkem s frekvenc´ı 50 Msps. V reˇzimu opakovan´eho vzorkov´an´ı, kdy se jeden pr˚ ubˇeh vzorkuje nˇekolikr´ at (pro periodick´e sign´ aly) lze dos´ahnout 1 Gsps. Maxim´aln´ı u ´roveˇ n vstupn´ıho napˇet´ı je 300 V. Vstup je galvanicky oddˇelen od poˇc´ıtaˇce, ˇc´ımˇz je chr´anˇen proti zniˇcen´ı. D´ıky speci´ aln´ımu konektoru je moˇzno zapojit nˇekolik takov´ ychto osciloskop˚ u z´aroveˇ n a t´ım z´ıskat ekvivalent v´ıcekan´alov´eho osciloskopu. Ovl´adac´ı program je pro oba nejrozˇs´ıˇrenˇejˇs´ı operaˇcn´ı syst´emy Windows i Linux. Cena pˇribliˇznˇe 10000 Kˇc nezahrnuje bohuˇzel mˇeˇr´ıc´ı sondu. Na obr´azku 2.4 je samotn´e zaˇr´ızen´ı a uk´azka obrazovky ovl´ adac´ıho programu.
Obr´azek 2.4: USBScope50
2.2
Vlastn´ı ˇ reˇ sen´ı
Jinou moˇznost´ı je vyvinut´ı vlastn´ıho zaˇr´ızen´ı. Pˇri n´avrhu mohu vyuˇz´ıt sv´ ych dosavadn´ıch znalost´ı a d´ ale si je rozˇs´ıˇrit. T´ımto zp˚ usobem z´ısk´am produkt s plnou dokumentac´ı a snadnou n´aslednou rozˇsiˇritelnost´ı, kter´ y je upraven´ y “na m´ıru” v´ yukov´ ym potˇreb´am. • Jednoduch´ y mikrokontrol´ erov´ y osciloskop Koncept tohoto ˇreˇsen´ı je vyuˇz´ıt obecn´eho mikrokontrol´eru ke zpracov´an´ı vstupn´ıch dat a osobn´ıho poˇc´ıtaˇce k jejich zobrazen´ı. Z´akladn´ımi bloky jsou vstupn´ı modul upravuj´ıc´ı u ´roveˇ n napˇet´ı, AD pˇrevodn´ık, mikrokontrol´er a komunikaˇcn´ı modul. • LPTScope [3] Jednoduch´e ˇreˇsen´ı jednokan´alov´eho osciloskopu vyuˇz´ıvaj´ıc´ı AD pˇrevodn´ık pˇripojen´ y 1 na LPT port. Rychlost je z´avisl´a na dobˇe pˇrevodu na ˇc´ıslicovou hodnotu a rychlosti poˇc´ıtaˇce, kter´ y data z LPT ˇcte. Podle dostupn´ ych zdroj˚ u je praktick´a dosaˇziteln´a frekvence vzorkov´ an´ı 300 kHz, coˇz umoˇzn ˇuje sledovat sign´aly o frekvenci [5] maxim´alnˇe 150 kHz. 2 Bez obvodu reguluj´ıc´ıho u ´roveˇ n vstupn´ıho napˇet´ı je cena toho pˇr´ıpravku cca 200 Kˇc. 1
Line Print Terminal, paraleln´ı port osobn´ıch poˇc´ıtaˇc˚ u, p˚ uvodnˇe navrˇzen pro komunikaci s tisk´ arnou “Pˇresn´ a rekonstrukce spojit´eho, frekvenˇcnˇe omezen´eho, sign´ alu z jeho vzork˚ u je moˇzn´ a tehdy, pokud byl vzorkov´ an frekvenc´ı alespoˇ n dvakr´ at vyˇsˇs´ı neˇz je maxim´ aln´ı frekvence rekonstruovan´eho sign´ alu.”- Shannon˚ uv-Nyquist˚ uv-Kotˇelnik˚ uv teor´em 2
7
Obr´azek 2.5: LPTScope
• SoundScope [4] yhodou je Toto ˇreˇsen´ı vyuˇz´ıv´ a linkov´ y vstup zvukov´e karty osobn´ıho poˇc´ıtaˇce3 . V´ snadn´e pouˇzit´ı, dva vstupn´ı kan´aly a n´ızk´a poˇrizovac´ı cena, kter´a se skl´ad´a pouze z ceny mˇeˇric´ı sondy a softwaru (existuj´ı volnˇe ˇs´ıˇriteln´e programy umoˇzn ˇuj´ıc´ı zpracovat 4 usob pˇrin´ aˇs´ı data zachycen´ a zvukovou kartou, napˇr. SoundScope . Naopak tento zp˚ omezen´ı v podobˇe frekvenˇcn´ı rozsahu 20 Hz - 22 kHz 5 , vzorkovac´ı frekvenci 44 kHz a pouze jednosmˇernou komunikaci mezi mˇeˇr´ıc´ı a zobrazovac´ı ˇc´ast´ı. vedouc´ı
3
vˇetˇsina souˇcasn´ ych PC m´ a jiˇz zvukovou kartu integrovanou na z´ akladn´ı desce http://www.halicky.sk/om3cph/sb/soundscope.zip 5 slyˇsiteln´e frekvenˇcn´ı p´ asmo zvuku 4
8
Kapitola 3
V´ ybˇ er ˇ reˇ sen´ı 3.1
Rozbor moˇ znost´ı
V pˇredmˇetech IPR a ITO nejsou na v´ yukov´e prostˇredky kladeny stejn´e n´aroky jako v elektrotechnick´ ych laboratoˇr´ıch. Pro vˇetˇs´ı n´azornost a efektivitu v´ yuky je optim´aln´ı aby na kaˇzd´eho studenta byl jeden osciloskop. Aby bylo moˇzno vybavit celou uˇcebnu cca 25 kusy je nutno vybrat ˇreˇsen´ı s pˇrimˇeˇrenou cenou. Napˇet’ov´ y rozsah 20 V a vzorkovac´ı frekvence 30 kHz se d´a povaˇzovat za dostaˇcuj´ıc´ı. Pro studenty pˇrich´ azej´ıc´ı na Fakultu informaˇcn´ıch technologi´ı z gymn´azi´ı nebo ˇskol netechnick´eho zamˇeˇren´ı je pˇredmˇet teorie obvod˚ u ˇcasto prvn´ı moˇznost´ı, kdy se fyzicky sezn´am´ı s elektrotechnick´ ymi souˇc´ astkami a pˇr´ıstroji k analyzov´an´ı stav˚ u v obvodech. Z tohoto hlediska je pˇr´ıstroj sloˇzit´ y na obsluhu, pro v´ yukov´e u ´ˇcely nevhodn´ y, stejnˇe jako pˇr´ıstroj, kter´ y je netolerantn´ı k uˇzivatelsk´ ym chyb´am (napˇr. ˇspatnˇe nastaven´ y napˇet’ov´ y rozsah vedouc´ı ke zniˇcen´ı). Teoretickou v´ yuku je vhodn´e doplnit praktick´ ymi uk´azkami. Proto pokud se bav´ıme o parametrech osciloskop˚ u, m˚ uˇze b´ yt n´azorn´e pˇredv´est napˇr. vliv vzorkovac´ı frekvence na zobrazen´ y sign´ al. M˚ uˇzeme tedy s v´ yhodou vyuˇz´ıt jednoduˇsˇs´ı zaˇr´ızen´ı s niˇzˇs´ımi parametry. Po t´eto u ´vaze mohu, tak´e z finanˇcn´ıch d˚ uvod˚ u, vylouˇcit uveden´ y osciloskop Tektronix. Pro nemoˇznost komunikace s poˇc´ıtaˇcem a sloˇzitost ovl´ad´an´ı je i analogov´ y osciloskop nevhodn´ y. D´ıky jednoduˇsˇs´ımu ovl´ad´an´ı se zd´a b´ yt vhodnˇejˇs´ı pˇr´ıstroj od firmy Velleman. Bohuˇzel sledovat mˇeˇren´ y sign´ al na relativnˇe mal´em displeji, kter´ y je v zaˇr´ızen´ı, nen´ı pˇr´ıliˇs pohodln´e. Obzvl´ aˇstˇe, m´ ame-li uˇcebnu vybavenu poˇc´ıtaˇci s monitory, chtˇel bych jich ke sledov´an´ı pr˚ ubˇehu vyuˇz´ıt. Z˚ ust´ av´ a USBScope50, kter´ y vyhovuje jak po str´ance technick´ ych parametr˚ u i sloˇzitost´ı ovl´ ad´ an´ı. Pˇresto uveden´a cena m˚ uˇze b´ yt pˇr´ıliˇs vysok´a. Nab´ız´ı se vyvinout si vlastn´ı zaˇr´ızen´ı. Protoˇze SoundScope umoˇzn ˇuje sledovat pouze stˇr´ıdav´e sign´ aly (vstup zvukov´e karty odfiltruje stejnosmˇernou sloˇzku) z˚ ust´avaj´ı dvˇe ˇreˇsen´ı. Jelikoˇz je rozˇs´ıˇren´ı paraleln´ıho port v u ´tlumu a vˇetˇsina modern´ıch zaˇr´ızen´ı se dnes pˇripojuje pˇres s´eriov´ a rozhran´ı a tak´e pro n´ızkou vzorkovac´ı frekvenci je LPTScope nevyhovuj´ıc´ı. Jako nejvhodnˇejˇs´ı jsem proto vybral jednoduch´ y digit´aln´ı osciloskop s mikrokontrol´erem.
3.2
Popis vybran´ eho ˇ reˇ sen´ı
ych se skl´ad´a navrˇzen´e ˇreˇsen´ı. Na obr´ azku 3.1 jsou sch´ematicky zn´azornˇeny bloky, ze kter´ Z´akladn´ı rozhodnut´ı, kter´e ovlivˇ nuje v´ ysledn´e parametry je zvolen´ı vhodn´eho mikrokont-
9
rol´eru a AD pˇrevodn´ıku. Zvaˇzoval jsem dvˇe moˇznosti, a sice pouˇz´ıt MCU 1 s integrovan´ ym AD pˇrevodn´ıkem nebo dva samostatn´e obvody. Nyn´ı uvedu pr˚ uˇrez variantami ˇreˇsen´ı. • MCU + extern´ı AD pˇ revodn´ık – ATMEL 2051 Mikrokontrol´er ATMEL 2051, resp. AT89C2051 disponuje pro uloˇzen´ı programu u pamˇeti RAM 3 . Pˇri maxim´aln´ım taktovac´ım 2 kB FLASH 2 pamˇeti a 128 bajt˚ kmitoˇctu 24 MHz a 12 takt˚ um na cykl zpracuje procesor 2 miliony cykl˚ u za sekundu, pˇriˇcemˇz instrukce mohou b´ yt jedno, dvou nebo ˇctyˇrcyklov´e. Pro komunikaci s periferiemi je k dispozici 15 vstupnˇe/v´ ystupn´ıch pin˚ u, nˇekter´e z nich pln´ı dodateˇcn´e funkce, jako napˇr. s´eriov´a komunikace, extern´ı pˇreruˇsen´ı nebo napˇet’ov´ y kompar´ ator. Instrukˇcn´ı sada je shodn´a s MCU 8051. Tento MCU je moˇzno poˇr´ıdit za cca 30 Kˇc. – ATMEL 2052 ATMEL 89LP2052 m´ a oproti MCU 2051 256 bajt˚ u pamˇeti RAM a vyˇsˇs´ı rychlost zpracov´ an´ı instrukc´ı. Pomˇer takt/cykl je 1/1, pˇri taktu 20 MHz zpracuje 20 MIPS 4 . Tak´ e cenovˇe je podobn´ y pˇredchoz´ımu uveden´emu, a sice 40 Kˇc. – ADC 804 Analogovo - digit´ aln´ı aproximaˇcn´ı pˇrevodn´ık. Pro pˇreveden´ı na bin´arn´ı hodnotu potˇrebuje 100 µs, v´ ystup je v paraleln´ı formˇe na 8 pinech, celkov´a chyba v´ ysledn´e hodnoty je ±1 LSB 5 . Umoˇzn ˇuje pˇrev´adˇet napˇet´ı v rozsahu 0 - 2.5 V. Cena tohoto pˇrevodn´ıku je 50 Kˇc. – ADC 809 Vylepˇsen´ a verze pˇredchoz´ıho uveden´eho pˇrevodn´ıku. Vstupn´ı napˇet´ı m˚ uˇze b´ yt v rozmez´ı 0 aˇz 5 V. Jedn´a se o 8 kan´alov´ y pˇrevodn´ık, je moˇzno adresovat kter´ y z 8 vstup˚ u se m´ a pˇrev´est. Cena je 230 Kˇc. • MCU s intern´ım AD pˇ revodn´ıkem Jelikoˇz se mi nepodaˇrilo vˇzdy zjistit cenu obvod˚ u v ˇcesk´ ych korun´ach u ˇcesk´ ych prodejc˚ u, uv´ ad´ım ceny pˇrepoˇcten´e kurzem dolaru podle ceny v´ yrobc˚ u[1]. Konkr´etn´ı ceny pˇri objedn´ an´ı se mohou (budou) liˇsit. – ADuC 812 Tento mikrokontrol´er od firmy Analog Devices s j´adrem 8052 a instrukˇcn´ı sadou zaloˇzenou na 8051 je moˇzno koupit za 150 Kˇc. Programy zpracov´av´a rychlost´ı 1.3 MIPS a pro jeho uloˇzen´ı je k dispozici 8 kB FLASH pamˇeti. Aktu´alnˇe zpracov´ avan´ a data lze uloˇzit do 256 bajt˚ u SRAM pamˇeti. Vestavˇen´ y 12 bitov´ y 8 kan´ alov´ y AD pˇrevodn´ık pracuje s rychlost´ı 200 ksps. Mikrokontrol´er je moˇzno provozovat v teplot´ ach od -40 do 125 ◦ C. Pokud bych potˇreboval generovat analogov´e napˇet´ı, mohu vyuˇz´ıt dvou 12 bitov´ ych DA 6 pˇrevodn´ık˚ u. – ADuC 832 Dalˇs´ı z ˇrady mikrokontrol´er˚ u firmy Analog Devices. Pro uloˇzen´ı k´odu programu 1
Microcontroller, mikrokontrol´er, nebo tak´e jednoˇcipov´ y poˇc´ıtaˇc non-volatile, tj. nez´ avisl´ a na nap´ ajen´ı, elektricky zapisovateln´ a, mazateln´ a, ˇcten´ a pamˇet’ 3 Random access memory, pamˇet’ s n´ ahodn´ ym pˇr´ıstupem, elektricky mazateln´ a, pˇreprogramovateln´ a 4 Million Operations per Second, milion operac´ı za sekundu 5 Least significant bit, nejm´enˇe v´ yznamn´ y bit 6 ˇc´ıslicovou hodnotu pˇrevede na spojit´e napˇet´ı, tj. ˇc´ıslo 1.3 pˇrevede na napˇet´ı o u ´rovni 1.3 V
2
10
m˚ uˇze program´ ator vyuˇz´ıt 62 kB FLASH pamˇet’, pamˇeti SRAM je 2304 bajt˚ u. Integrovan´ y AD pˇrevodn´ık se liˇs´ı pouze ve vzorkovac´ı frekvenci, kter´a je 247 ksps. – ADuC 842 Posledn´ı mikrokontrol´er z ˇrady 8*2 kter´ y zde uvedu, je opˇet podobn´ y dvˇema pˇredchoz´ım. U tohto obvodu doˇslo k n´ar˚ ustu rychlosti zpracov´an´ı instrukc´ı na 16 MIPS a rychlosti AD pˇrevodn´ıku na 400 ksps. Cenovˇe je tento obvod podobn´ y s pˇredeˇsl´ ymi, pˇribliˇznˇe 160 Kˇc. – ADuC 847 ADuC 847 je zaj´ımav´ y t´ım, ˇze obsahuje 24 bitov´ y AD pˇrevodn´ık. Vˇetˇs´ı rozliˇsen´ı pˇrevodn´ıku je ale na u ´kor rychlosti, kter´a je pouze 1.37ksps. Uveden´e extern´ı AD pˇrevodn´ıky (vybran´e z katalogu ˇcesk´ ych prodejc˚ u[2]) jsou ˇr´adovˇe pomalejˇs´ı neˇz integrovan´e varianty v mikrokontrol´erech. Tak´e programov´a spolupr´ace s vestavˇen´ ym pˇrevodn´ıkem je jednoduˇsˇs´ı. Proto jsem se rozhodoval mezi mikrokontrol´ery ADuC. Podle uveden´ ych parametr˚ u je nejvhodnˇejˇs´ı ADuC 842. Jelikoˇz jsem jiˇz mˇel z dˇr´ıvˇejˇs´ı doby jeden zkuˇsebn´ı vzorek ADuCu 832 a prvn´ı implementaci povaˇzuji za zkuˇsebn´ı vzorek, rozhodl jsem se jej pouˇz´ıt. Instrukˇcn´ı sada obou mikrokontrol´er˚ u je shodn´a, nen´ı tedy probl´em v pˇr´ıpadˇe pˇr´ızniv´ ych v´ ysledk˚ u pouˇz´ıt stejn´ y program na vyˇsˇs´ım modelu mikrokontrol´eru.
Obr´azek 3.1: Blokov´e sch´ema V´ ysledn´e navrˇzen´e ˇreˇsen´ı odpov´ıd´a obr´azku 3.1. Mˇeˇr´ıc´ı sonda je pˇripojena do zkouman´eho obvodu, vstupn´ı modul upravuje napˇet’ov´e u ´rovnˇe do rozsahu 0 - 2.5 V. Blok AD pˇrevodn´ıku a MCU jsou slouˇceny do jednoho. Hodnota napˇet´ı je pravidelnˇe ˇctena MCU a pos´ıl´ ana do PC. Odes´ıl´ an´ı dat je moˇzno dvˇema zp˚ usoby. Pouˇzit´ım USB obvodu, nebo 11
pˇrevodn´ıkem na rozhran´ı RS-232 a n´asledn´ ym pˇrevodn´ıkem RS-232 na virtu´aln´ı s´eriov´ y port, kter´ y je do PC pˇripojen fyzicky tak´e pˇres USB rozhran´ı. Popis implementace jednotliv´ ych blok˚ u je uveden v n´asleduj´ıc´ı kapitole.
12
Kapitola 4
Implementace ˇ reˇ sen´ı V t´eto kapitole podrobnˇe pop´ıˇsi navrˇzen´e ˇc´asti ˇreˇsen´ı.
4.1
Nap´ ajen´ı
Podle katalogov´eho listu vyˇzaduje ADuC 832 nap´ajen´ı v rozsahu 4,5 - 5,5 V pˇri proudu 20 mA. Aby nedoˇslo k nestabilitˇe nebo zniˇcen´ı mikrokontrol´eru, je vhodn´e obvod nap´ajet stabilizovan´ ym zdrojem napˇet´ı. Vybral jsem integrovan´ y stabiliz´ator MC7805. Vstupn´ı napˇet´ı mus´ı b´ yt v rozsahu 7 aˇz 35 V. V´ ystupn´ı napˇet´ı 5 V je s toleranc´ı ±0.2 V, pˇri teplotˇe 25 ◦ C. Maxim´aln´ı odeb´ıran´ y proud je 1 A, coˇz s velkou rezervou postaˇcuje pro nap´ajen´ı ADuCu vˇcetnˇe perifern´ıch obvod˚ u. Obvod je odoln´ y proti zkratu v´ ystup˚ u a tak´e proti pˇrehˇr´at´ı. Na obr´azku 4.1 je standardn´ı zapojen´ı tohoto stabiliz´atoru.
Obr´ azek 4.1: Standartn´ı zapojen´ı stabiliz´atoru
4.2
Vstupn´ı modul
Protoˇze AD pˇrevodn´ık je schopen pˇrev´est pouze napˇet´ı v rozsahu 0 aˇz 2.5 V je nutn´e pˇred nˇej zaˇradit modul, kter´ y mˇeˇren´e napˇet´ı do tohoto rozsahu uprav´ı. ´ Uroveˇ n napˇet´ı lze upravit odporovou s´ıt´ı a pˇrep´ın´an´ım jednotliv´ ych odpor˚ u. Toto ˇreˇsen´ı ale neumoˇzn´ı upravit velmi mal´ a napˇet´ı, kter´e nepotˇrebuji zeslabit ale naopak zes´ılit. Toto je moˇzno vyˇreˇsit pouˇzit´ım operaˇcn´ıch zesilovaˇc˚ u. V invertuj´ıc´ım zapojen´ı je zes´ılen´ı d´ ano odporem ve zpˇetn´e vazbˇe. V´ ysledn´e zes´ılen´ı nemus´ı b´ yt tedy vˇetˇs´ı neˇz 1. Pˇrep´ın´an´ı odporu lze ˇreˇsit manu´ alnˇe pˇrep´ınaˇcem. Toto ˇreˇsen´ı je ale neefektivn´ı a poˇr´ad umoˇzn ˇuje pˇripojit 13
na vstup pˇrevodn´ıku vyˇsˇs´ı napˇet´ı a zp˚ usobit jeho poˇskozen´ı. Mnohem lepˇs´ı je pouˇz´ıt elektronicky programovateln´ y potenciometr a pomoc´ı mikrokontrol´eru ˇr´ıdit zes´ılen´ı/zeslaben´ı. Pouˇz´ıt dvojici kompar´ ator˚ u, jeden pro urˇcen´ı polarity a druh´ ym porovn´avat s referenˇcn´ım napˇet´ı 2.5V. Pokud je na vstupu z´aporn´e napˇet´ı, pouˇzit´ım invertuj´ıc´ıho zapojen´ı operaˇcn´ıho zesilovaˇce jej upravit do kladn´ ych hodnot.
4.3 4.3.1
Mikrokontrol´ er ADuC 832 Charakteristika
ADuC 832 je modern´ı 8 bitov´ y mikrokontrol´er, jehoˇz konstrukce je zaloˇzena na j´adˇre mikroprocesoru 8052 s jehoˇz instrukˇcn´ı sadou je plnˇe kompatibiln´ı. Disponuje v´ ypoˇcetn´ım v´ ykonem 1,3 MIPS. Pro uloˇzen´ı k´ odu programu je dostupn´ ych 64 kB FLASH pamˇeti (v´ yrobce garantuje trvanlivost dat 100 let a 100 000 cykl˚ u z´apis/ˇcten´ı), pro data jsou dalˇs´ı 4 kB FLASH a pro bˇehov´ a data je 2304 bajt˚ u pamˇeti RAM. Na ˇcipu je integrov´an 8 kan´alov´ y 12 bitov´ y ◦ AD pˇrevodn´ık a teplotn´ı ˇcidlo s pˇresnost´ı ±3 C. Je moˇzno vyuˇz´ıt 12 zdroj˚ u pˇreruˇsen´ı ve 2u ´rovn´ıch. K realizaci ˇc´ıt´ an´ı je moˇzno vyuˇz´ıt 3 ˇc´ıtaˇce/ˇcasovaˇce.
Obr´ azek 4.2: Blokov´e sch´ema ADuCu 832 Pˇri vyuˇzit´ı v mobiln´ıch zaˇr´ızen´ıch, kde se hl´ıd´a spotˇreba elektrick´e energie mohu pouˇz´ıt Power-down m´ od ve kter´em je sn´ıˇzen´ y proudov´ y odbˇer. Pˇri komunikaci s jin´ ymi zaˇr´ızen´ımi lze snadno naprogramovat s´eriovou komunikaci, pro kterou je integrov´ana hardwarov´a podpora. Obvod Watchdog hl´ıd´ a, aby nedoˇslo k zacyklen´ı programu, kter´e m˚ uˇze b´ yt nebezpeˇcn´e 14
obzvl´aˇstˇe v real-time aplikac´ıch. Pro pˇripojen´ı perifern´ıch zaˇr´ızen´ı je moˇzno pouˇz´ıt ˇctyˇr paraleln´ıch port˚ u, tj. 4x8bit˚ u. Blok PSM (Power Supply Monitor) hl´ıd´a u ´roveˇ n nap´ajec´ıho napˇet´ı. Pokud poklesne pod stanovenou hodnotu, zastav´ı bˇeh programu. V pˇr´ıpadˇe poklesu nap´ajec´ıho napˇet´ı m˚ uˇze doj´ıt k neˇz´adouc´ım chybn´ ym v´ ypoˇct˚ um. T´ım, ˇze PSM zastav´ı prov´adˇen´ı, upozorn´ı uˇzivatele na chybu a sn´ıˇz´ı riziko poruchy, kter´a by mohla nastat obzvl´aˇstˇe v real-time 1 procesech. Na blokov´em sch´ematu 4.2 jsou zn´azornˇeny v´ yˇse popsan´e funkˇcn´ı ˇc´asti, ze kter´ ych se mikrokontrol´er skl´ ad´ a. Vyr´ ab´ı se ve dvou pouzdrech, obˇe pro povrchovou mont´aˇz. Jedno v proveden´ı s v´ yvody do boku (52 ld MQFP) o velikosti 13.9 x 13.9 mm. Druh´e proveden´ı s v´ yvody ve formˇe vodiv´ ych ploch na spodn´ı stranˇe obvodu (56 ld LFCSP) s rozmˇery 8x8 mm. Z´akladn´ı zapojen´ı mikrokontorl´eru je uvedeno v katalogov´em listu, podle kter´eho jsem navrhnul a osadil desku ploˇsn´eho spoje. V pˇr´ıloze uv´ad´ım sch´ema tohoto zapojen´ı. Pro v´ yvojov´e u ´ˇcely je urˇcitˇe v´ yhodn´e uˇz´ıt nab´ıdky firmy Analog Devices a objednat si testovac´ı vzorky zdarma. Nab´ızej´ı v´ yvoj´aˇr˚ um nˇekter´e ze sv´ ych produkt˚ u zdarma k vyzkouˇsen´ı. Po registraci lze objednat aˇz 2 kusy dvou r˚ uzn´ ych obvod˚ u, kter´e budou zasl´any na uvedenou adresu pˇrepravn´ı sluˇzbou. Organizace vnitˇ rn´ı pamˇ eti ’ Intern´ı pamˇet RAM je rozdˇelena na dvˇe ˇc´asti: 256 bytu univerz´aln´ı pamˇeti (GeneralPurpose) a 2 kB intern´ı XRAM pamˇeti. Grafick´e zobrazen´ı rozloˇzen´ı doln´ıch 128 bytu z univerz´ aln´ı pamˇeti je na obr´ azku 4.3.
Obr´ azek 4.3: Doln´ıch 128 bytu vnitˇrn´ı RAM
Od adresy 00h po 1Fh jsou um´ıstˇeny ˇctyˇri banky registr˚ u. Kaˇzd´a banka je po 8 adresovateln´ ych registrech (r0 - r7). V´ ybˇer banky se provede nastaven´ım 2. a 3. bitu v PSW 2 1 2
procesy v re´ aln´em ˇcase, napˇr. v´ yrobn´ı linka nebo ˇr´ıd´ıc´ı zaˇr´ızen´ı Program Status Word
15
registru. Adresy v rozsahu 20h aˇz 2Fh je moˇzno bitovˇe adresovat. Naopak vyˇsˇs´ı adresy 30h aˇz 7Fh jsou pro vˇseobecn´e pouˇzit´ı a je moˇzno je adresovat pouze po bytech. D´ale se v horn´ıch 128 byte intern´ı pamˇeti nach´az´ı prostor pro speci´aln´ı registry (Special function registers) urˇcen´e pro spr´avu a nastaven´ı funkˇcn´ıch blok˚ u mikrokontrol´eru, jako napˇr. AD, ˇcasovaˇce, s´eriov´ a linka... Organizace tohoto registru je podrobnˇe pops´ana v katalogov´em listu.
4.3.2
A/D pˇ revodn´ık
Pro pˇrevod analogov´eho napˇet´ı na ˇc´ıslicovou hodnotu jsem vyuˇzil rychl´eho 8 kan´alov´eho 12 bitov´eho pˇrevodn´ıku. Mezi jednotliv´ ymi kan´aly se pˇrep´ın´a pomoc´ı multiplexoru. Cel´ y blok pˇrevodn´ıku je ˇr´ızen tˇremi registry ADCCON1, ADCCON2 a ADCCON3, kter´e se nach´ az´ı v prostoru SFR. Chyba pˇ revodu Analogov´ y vstupn´ı rozsah pro pˇrevodn´ık je 0 aˇz Vref , pˇriˇcemˇz referenˇcn´ı napˇet´ı je v tomto pˇr´ıpadˇe 2.5 V. Pˇrevodn´ık pracuje s chybou ±1 LSB, mohu tedy vypoˇc´ıtat re´alnou chybu ve voltech. Vref 1 LSB = rozliseni 2 2.5 1 LSB = 12 2 2.5 1 LSB = 4096 = 0.61mV 2 Pokud bude mˇeˇren´ı napˇet´ı v z´ akladn´ım rozsahu do 2.5 V bude pˇrevedeno s maxim´aln´ı chybou 0.61 mV. Budu nyn´ı uvaˇzovat zapojen´ y vstupn´ı modul, kter´ y vstupn´ıch napˇr. 25 1 V uprav´ı v pomˇeru . Touto u ´pravou se samozˇrejmˇe zmˇen´ı i v´ ysledn´a chyba z 0.61 mV 10 na 6.1 mV. Nastaven´ı pˇ revodu Registr ADCCON1 nen´ı bitovˇe adresovateln´ y a po zapnut´ı nap´ajen´ı m´a v´ ychoz´ı hodnotu 00h. Slouˇz´ı pro nastaven´ı parametr˚ u pˇrevodu. Nyn´ı pop´ıˇsi jednotliv´e bity: • ADCCON1.0 - EXC: nastaven´ım tohoto bitu se povoluje/zakazuje extern´ı spouˇstˇec´ı impuls, kter´ y je oˇcek´ av´ an na pinu 3.5 (CONVST) • ADCCON1.1 - T2C: pouˇz´ıv´ a se k povolen´ı pˇreteˇcen´ı od ˇc´ıtaˇce/ˇcasovaˇce 2 jako spouˇstˇec´ıho impulsu pˇrevodn´ıku • ADCCON1.2 - AQ0 • ADCCON1.3 - AQ1: bity AQ0 a AQ1 se nastavuje doba (poˇcet hodinov´ ych cykl˚ u), po kterou vstupn´ı obvod pˇrevodn´ık z´ısk´av´a vzorek sign´alu, v´ yrobce doporuˇcuje alespoˇ n 3 cykly AQ1 AQ0 poˇ cet cykl˚ u 0 0 1 0 1 2 1 0 3 1 1 4 16
• ADCCON1.4 - CK0 • ADCCON1.5 - CK1: dvojice bit˚ u CK0 a CK1 nastavuj´ı dˇelic´ı pomˇer mezi frekvenc´ı oscil´ atoru procesoru a frekvenc´ı hodinov´eho sign´alu AD pˇrevodn´ıku, v´ yrobce doporuˇcuje zvolit tento pomˇer tak, aby frekvence hodinov´eho sign´alu pˇrevodn´ıku byla 4.5 kHz nebo m´enˇe. CK1 0 0 1 1
CK0 0 1 0 1
dˇ elic´ı pomˇ er 8 4 16 32
• ADCCON1.6 - EXT REF: tento bit urˇcuje, jestli se bude pouˇz´ıvat vnitˇrn´ı nebo vnˇejˇs´ı referenˇcn´ı napˇet´ı, pro vnitˇrn´ı se nastav´ı do 0 • ADCCON1.7 - MD1: bit pro ˇr´ızen´ı cel´eho bloku AD pˇrevodn´ıku, nulov´an´ım se AD pˇrevodn´ık vyp´ın´ a, nastaven´ım do 1 se zap´ın´a Druh´ y registr ADCCON2 slouˇz´ıc´ı k nastaven´ı kan´alu a m´odu pˇrevodn´ıku. Je bitovˇe adresovateln´ y. N´ asleduje popis jednotliv´ ych bit˚ u. • ADCCON2.0 - CS0 • ADCCON2.1 - CS1 • ADCCON2.2 - CS2 • ADCCON2.3 - CS3: ˇctveˇrice bit˚ u urˇcuj´ıc´ı v´ ybˇer kan´alu pˇrevodn´ıku CS3 CS2 CS1 CS0 kan´ al 0 0 0 0 0 0 0 0 1 1 0 0 1 0 2 0 0 1 1 3 0 1 0 0 4 0 1 0 1 5 0 1 1 0 6 0 1 1 1 7 1 0 0 0 teplotn´ı senzor 1 0 0 1 DAC0 1 0 1 0 DAC1 1 0 1 1 AGND 1 1 0 0 VREF 1 1 0 1 DMA STOP • ADCCON2.4 - SCONV: nastaven´ım tohoto bitu do 1 urˇcujeme, ˇze se provede pouze jedno mˇeˇren´ı, nastavuje se programovˇe, po ukonˇcen´ı pˇrevodu je hardwarovˇe nulov´ an • ADCCON2.5 - CCONV: bit CCONV nastavuje kontinu´aln´ı mˇeˇren´ı, bit je nastavov´ an i maz´ an programovˇe, mˇeˇren´ı prob´ıh´a dokud nen´ı bit vynulov´an
17
• ADCCON2.6 - DMA: bit pro aktivaci DMA hardwarovˇe nulov´ an po ukonˇcen´ı DMA cyklu
3
m´odu, je programovˇe nastavov´an a
• ADCCON2.7 - ADCI: bit pˇr´ıznaku pˇreruˇsen´ı, je nastavov´an hardwarovˇe po ukonˇcen´ı jednoho pˇrevodu nebo po ukonˇcen´ı bloku DMA pˇrevodu, je nulov´an hardwarovˇe, pokud dojde k obsluze pˇreruˇsen´ı nebo softwarovˇe pokud se pˇreruˇsen´ı nevyuˇz´ıv´a Posledn´ı z kontroln´ıch registr˚ u AD pˇrevodn´ıku je registr ADCCON3, kter´ y slouˇz´ı pro kalibraci pˇrevodn´ıku. V´ yznam jednotliv´ ych bit˚ u je n´asleduj´ıc´ı: • ADCCON3.0 - SCAL: nastaven´ım tohoto bitu do 1 se spust´ı kalibraˇcn´ı cykl, je automaticky hardwarovˇe nulov´ an po ukonˇcen´ı kalibrace • ADCCON3.1 - TYPICAL: t´ımto bitem se nastavuje typ poˇzadovan´e kalibrace, pokud je 0 poˇzaduje se kalibrace offsetu (nastaven´ı nuly) pokud je bit nastaven do 1 poˇzadujeme tzv. ”gain“ (cel´eho rozsahu) kalibraci • ADCCON3.2 - RSVD: tento bit by mˇel program´ator nastavit do 1, pokud zap´ın´ a kalibraci • ADCCON3.3 - RSVD: rezervovan´ y bit, program´atorem by mˇel b´ yt nastaven do 0 • ADCCON3.4 - AVGS0: • ADCCON3.5 - AVGS1: dvojici bit˚ u AVGS urˇcuj´ı poˇcet ˇcten´ı pr˚ umˇer˚ u bˇehem kalibraˇcn´ıho cyklu AVGS0 AVGS1 poˇ cet pr˚ umˇ er˚ u 0 0 15 0 1 1 1 0 31 1 1 63 • ADCCON3.6 - GNCLD: tento bit v 0 povoluje celorozsahovou kalibraci, pokud je nastaven do 1 tak zakazuje • ADCCON3.6 - BUSY: bit pouze pro ˇcten´ı, je hardwarovˇe nastaven v pr˚ ubˇehu kalibrace AD pˇrevodn´ıku, je automaticky nulov´an po ukonˇcen´ı kalibrace V´ ysledek pˇrevodu je rozloˇzen do dvou registr˚ u ADCDATAL (doln´ıch 8 bit˚ u) a ADCDATAH (horn´ı 4 bity). Nastaven´ı pˇ revodn´ıku v tomto projektu Pro potˇreby tohoto projektu jsem nastavil AD pˇrevodn´ık n´asleduj´ıc´ım zp˚ usobem. Uvedu u ´seky okomentovan´eho zdrojov´eho k´odu v jazyce Asembler. Nastaven´ı dˇelen´ı kmitoˇctu 32, poˇctu hodinov´ ych cykl˚ u na 4 a spuˇstˇen´ı bloku AD. mov ADCCON1, #10111100b Nastaven´ı pro offset kalibraci, m´ısto mˇeˇren´eho kan´alu se vybere analogov´a zem. 3
Direct Memory Access, umoˇzn ˇuje vyuˇz´ıt rychl´eho pˇrenosu mezi AD pˇrevodn´ıkem a XRAM pamˇet´ı
18
mov ADCCON2, #00001011b Povolen´ı offsetov´e kalibrace, nastaven´ı 31 pr˚ umˇer˚ u ˇcten´ı, nastaven´ı RSVD bit˚ u a spuˇstˇen´ı kalibrace. Pot´e je v programu ˇcekac´ı smyˇcka na ukonˇcen´ı kalibrace. mov ADCCON3, #00100101b Nastaven´ı pro celorozsahovou kalibraci, m´ısto kan´alu se vybere referenˇcn´ı napˇet´ı Vref . mov ADCCON2, #00001100b Nastaven´ı kan´ alu a jednotliv´eho mˇeˇren´ı. mov ADCCON2, #00010001b
4.3.3
Datov´ a komunikace
Pro moˇznost komunikace je v ADuCu mimo jin´e integrov´ana podpora pro asynchronn´ı s´eriovou komunikaci po rozhran´ı UART 4 . Blok s´eriov´e komunikace se ovl´ad´a dvojic´ı registr˚ u SCON a SBUF a m˚ uˇze pracovat ve 4 reˇzimech. Pracovn´ı reˇ zimy • MOD 0 V tomto m´ odu se pracuje s 8 bitov´ ym synchronn´ım pˇrenosem s pevnou pˇrenosovou 1 rychlost´ı, kter´ a je rovna frekvence oscil´atoru. 2 Data se pˇren´ aˇsej´ı na pinu TxD a v´ ystup RxD je pouˇzit k pˇrenosu synchronizaˇcn´ıho sign´ alu. Nepˇren´ aˇs´ı se tedy r´amce s pomocn´ ymi bity a pˇrenosov´a rychlost se poˇc´ıt´ a v bitech. Protoˇze bit RxD je vyuˇzit pro synchronizaci, nen´ı tento m´od, narozd´ıl od ostatn´ıch plnˇe duplexn´ı. Pˇrenos zaˇc´ın´a od nejniˇzˇs´ıho bitu. 1 Maxim´ aln´ı pˇrenosov´ a rychlost je rovna frekvence oscil´atoru. Pˇri 12 MHz frekvenci 12 oscil´ atoru je maxim´ aln´ı pˇrenosov´a rychlost 1 Mbit/s. • MOD 1 Tento m´ od nab´ız´ı 8 bitov´ y asynchronn´ı m´od. Pˇren´aˇs´ı se 10 bit˚ u, k 8 datov´ ym se na zaˇc´ atek pˇripoj´ı tzv. START bit, kter´ y je roven 0 a na konec tzv. STOP bit roven 1. Data se vys´ılaj´ı na pinu TxD a pˇrij´ımaj´ı na vstupu RxD. Stop bit se ukl´ad´a do registru SCON, bitu RB8. Pˇrenosov´ a rychlost se nastavuje programovˇe pomoc´ı pˇreteˇcen´ı ˇc´ıtaˇce/ˇcasovaˇce 1 nebo 2. V tomto reˇzimu pˇri frekvenci oscil´atoru 12 MHz, SMOD rovno 1, ˇc´ıtaˇci/ˇcasovaˇci 1 m´ odu 2 a TH1=FFh lze dos´ahnout maxim´aln´ı pˇrenosov´e rychlosti 62.5 kb/s. • MOD 2 Jedn´ a se o 9 bitov´ y asynchronn´ı pˇrenos s volitelnou pˇrenosovou rychlost´ı. Data jsou pˇrij´ım´ ana na pinu RxD a vys´ıl´ana na pinu TxD. Vys´ıl´a se 11 bit˚ u, kter´e se skl´adaj´ı ze start bitu, osmi uˇziteˇcn´ ych bit˚ u, 9. bit je moˇzno pouˇz´ıt pro paritu nebo jako dalˇs´ı uˇziteˇcn´ y a jeden stop bit. Dev´at´ y bit se pˇri vys´ıl´an´ı ukl´ad´a do bitu TB8 v registru SCON a pˇri pˇrij´ım´ an´ı do bitu RB8. Stop bit se ignoruje. 4
Universal asynchronous receiver-transmitter
19
Hodnotu paritn´ıho bitu nen´ı tˇreba poˇc´ıtat. K tomuto slouˇz´ı v registru PSW bit P. Uloˇzen´ım cel´eho bajtu do akumul´atoru se aktualizuje bit P, kter´ y indikuje lichou paritu. Pˇrenosov´ a rychlost se v tomto reˇzimu nastavuje bitem SMOD v registru PCON. Pro 1 frekvence oscil´atoru, pro SMOD = SMOD = 1 se pˇren´ aˇs´ı rychlost´ı, kter´a je rovna 32 1 0 je rychlost´ı z kmitoˇctu oscil´atoru. Nejvyˇsˇs´ı rychlost se nastav´ı pˇri fosc =12 MHz 64 a SMOD=1 na 375 kb/s. • MOD 3 V tomto m´ odu se pouˇz´ıv´ a 9 bitov´ y asynchronn´ı pˇrenos s programovatelnou rychlost´ı. Pˇr´ıjem dat je na pinu RxD a vys´ıl´a se na pinu TxD. Pˇrenosov´a rychlost je odvozena od ˇcetnosti pˇreteˇcen´ı ˇc´ıtaˇce/ˇcasovaˇce 1 a hodnoty bitu SMOD v registru PCON. Maxim´ aln´ı pˇrenosov´ a rychlost je tedy 62.5 kb/s pˇri frekvenci oscil´atoru 12 MHz, SMOD rovno 1 a TH1=FFh. Registr SCON je bitovˇe adresovateln´ y a d´ale pop´ıˇsi v´ yznam jednotliv´ ych bit˚ u: • SCON.0 - RI: pˇr´ıznak naplnˇen´ı pˇrij´ımac´ıho vyrovn´avac´ıho registru platn´ ymi daty, nastavuje se hardwarovˇe po pˇrijmut´ı osm´eho bitu v m´odu 0, nebo STOP bitu v m´odu 1 nebo v polovinˇe pˇrij´ım´ an´ı bitu RB8 v m´odu 2 a 3 • SCON.1 - TI: tento bit indikuje pr´azdn´ y vys´ılac´ı registr, to znamen´a, ˇze data jiˇz byla odesl´ ana, nastavuje se hardwarovˇe po odvys´ıl´an´ı osm´eho bitu v reˇzimu 0 nebo pˇri vys´ıl´ an´ı stop bitu v reˇzimech 1,2 a 3, protoˇze tento bit z´aroveˇ n pln´ı funkci poˇzadavku na pˇreruˇsen´ı od s´eriov´eho kan´alu, nelze jej nulovat hardwarovˇe ale mus´ı se to zajistit programem • SCON.2 - RB8: dev´ at´ y pˇrijat´ y bit v m´odech 2 a 3, v m´odu 1 obsahuje pˇrijat´ y stop bit a v m´ odu 0 se nepouˇz´ıv´ a • SCON.3 - TB8: dev´ at´ y bit pˇri vys´ıl´an´ı v m´odech 2 a 3 • SCON.4 - REN: Serial Port Receive Enable Bit, bit pro povolen´ı pˇr´ıjmu dat, pˇr´ıjem je povolen pro REN=1, nastavuje se i nuluje softwarovˇe • SCON.5 - SM2: t´ımto bitem se povoluje vytvoˇren´ı v´ıceprocesorov´e s´eriov´e sbˇernice v m´ odech 2 a 3 • SCON.6 - SM1 • SCON.7 - SM0: dvojic´ı bit˚ u SM1 a SM0 se nastavuje m´od, ve kter´em bude blok s´eriov´e komunikace pracovat SM1 SM0 m´ od 0 0 0 0 1 1 1 0 2 1 1 3 Druh´ ym registrem, kter´ ym se ˇr´ıd´ı s´eriov´ y pˇrenos je SBUF. Pln´ı funkci vys´ılac´ıho i pˇrij´ımac´ıho 20
registru z´ aroveˇ n. Z´ apisem do SBUF ukl´ad´ame data do vys´ılac´ıho registru a ˇcten´ım SBUF ˇcteme z pˇrij´ımac´ıho vyrovn´ avac´ıho registru. Registr SBUF se nach´az´ı na adrese 99h. Ve skuteˇcnosti jsou na t´eto adrese dva registry, zvl´aˇst’ pro pˇr´ıjem a vys´ıl´an´ı. Udˇelen´ım shodn´e adresy je dosaˇzeno plnˇe duplexn´ıho reˇzimu. Pˇr´ıstup je ˇr´ızen pomoc´ı speci´aln´ıho pˇr´ıznaku procesoru, kter´ y se nastav´ı podle pouˇzit´e instrukce pro z´apis nebo ˇcten´ı. Pˇ r´ıklad konfigurace s´ eriov´ eho pˇ renosu Nastaven´ı 8-bitov´e komunikace, promˇenn´e pˇrenosov´e rychlosti. mov SCON, #01011100b Nastaven´ı pˇrenosov´e rychlosti 9600 Baud, nastaven´ım ˇc´ıtaˇce/ˇcasovaˇce 3. mov T3CON, #082h mov T3FD, #02Dh Pˇ r´ıklad vysl´ an´ı dat Uloˇzen´ı vys´ılan´eho bajtu do akumul´atoru. mov A,#’A’ Nulov´an´ı pˇr´ıznaku ukonˇcen´eho vys´ıl´an´ı. clr ti Uloˇzen´ı vys´ılan´eho bajtu do vys´ılac´ıho registru. mov SBUF,A ˇ an´ı na ukonˇcen´ı vys´ıl´ Cek´ an´ı, testov´an´ım bitu ti. vysli_cekej: jnb ti, vysli_cekej
21
Kapitola 5
Z´ avˇ er Navrˇzen´e ˇreˇsen´ı se podob´ a komerˇcn´ımu USBScope50. V porovn´an´ı mnou navrˇzen´e ˇreˇsen´ı umoˇzn ˇuje teoreticky sledovat sign´aly s frekvenc´ı max. 100 kHz, prakticky m´enˇe, protoˇze je nutno zapoˇc´ıtat zpoˇzdˇen´ı na vstupn´ım modulu a pˇri zpracov´an´ı a pˇrenosu do poˇc´ıtaˇce. Pˇresto to je pro v´ yukov´e potˇreby dostaˇcuj´ıc´ı. Studenti nepotˇrebuj´ı v pˇr´ıpadˇe v´ yuky IPR ˇspiˇckov´e ani pr˚ umˇern´e zaˇr´ızen´ı. Potˇrebuj´ı jednoduch´e a snadno ovladateln´e zaˇr´ızen´ı, kter´e jim uk´ aˇze, ˇze sledovat pr˚ ubˇeh napˇet´ı v obvodu nen´ı ˇz´adn´a ”vˇeda”. Nezanedbateln´a je tak´e poˇrizovac´ı cena, kter´ a je u komerˇcn´ıho zaˇr´ızen´ı kolem 10000 Kˇc, navrˇzen´e ˇreˇsen´ı by se podaˇrilo realizovat za poloviˇcn´ı ˇca´stku. Po naprogramov´ an´ı vhodn´eho programu pro zpracov´an´ı namˇeˇren´ ych dat a dopracov´ an´ı vstupn´ıho modulu m˚ uˇze b´ yt navrˇzen´e ˇreˇsen´ı vhodn´e pro v´ yukov´e potˇreby.
22
Dodatek A
V´ yukov´ y materi´ al AD pˇ revodn´ık Protoˇze AD pˇrevodn´ık je ned´ılnou souˇc´ast´ı digit´aln´ıho osciloskopu a ve sv´e pr´aci se bl´ıˇzi nezab´ yv´ am principem funkˇcnosti, uv´ad´ım zde v pˇr´ıloze, vlastn´ı v´ yukov´e materi´aly pro pˇredmˇet IPR, pojedn´ avaj´ıc´ı o principu pˇrevodu analogov´eho ˇc´ısla na bin´arn´ı.
Obr´azek A.1:
23
Obr´azek A.2:
Obr´azek A.3:
24
Obr´azek A.4:
Obr´azek A.5:
25
Obr´azek A.6:
Obr´azek A.7:
26
Obr´azek A.8:
Obr´azek A.9:
27
Obr´azek A.10:
Obr´azek A.11:
28
Obr´azek A.12:
Obr´azek A.13:
29
Obr´azek A.14:
Obr´azek A.15:
30
Obr´azek A.16:
Obr´azek A.17:
31
Obr´azek A.18:
Obr´azek A.19:
32
Obr´azek A.20:
Obr´azek A.21:
33
Obr´azek A.22:
Obr´azek A.23:
34
Dodatek B
Z´ akladn´ı zapojen´ı ADuCu 832
Obr´azek B.1:
35
Literatura [1] WWW str´ anky. Analog devices. http://www.analog.com/en/. [2] WWW str´ anky. Katalog souˇc´astek. http://www.gme.cz/cz/index.php. [3] WWW str´ anky. Lptscope. http://www.volny.cz/elecon/cz/lptosciloskop/lptosciloskop. [4] WWW str´ anky. Om3cph home page. http://www.halicky.sk/om3cph/om3cph.html. [5] WWW str´ anky. Shannon˚ uv teor´em. http://cs.wikipedia.org/wiki/. [6] WWW str´ anky. Tektronix. http://www.tek.com/products/oscilloscopes/tds3000b/. [7] WWW str´ anky. Usb scope. http://www.elandigitalsystems.com/usb/usbscope50.php. [8] WWW str´ anky. Wikipedia, otevˇren´a encyklopedie. http://simple.wikipedia.org/wiki/Oscilloscope. [9] WWW str´ anky. Wikipedia, otevˇren´a encyklopedie. http://cs.wikipedia.org/wiki/Osciloskop.
36