|
Kategorie: Diplomové, bakalářské práce |
Tento dokument chci!
Cílem této práce je seznámit čtenáře se základním principem a možnostmi řešení digitálního modulátoru pro vícestavové modulace s integrovaným obvodem AD9957 od firmy Analog Devices. Navrhnout blokové i konkrétní schéma modulátoru a celé zařízení zrealizovat. Dále se zabývá využitím standardního rozhraní USB ke komunikaci, ovládání a přenosu dat mezi modulátorem a ovládacím počítačem. Práce popisuje jednotlivé bloky navrženého zařízení, desku plošných spojů, vytvořený firmware a aplikační program pro snadné ovládání pomocí PC. V závěru práce jsou popsány některé výsledky měření a zhodnoceny dosažené výsledky.
Pokud pin nakonfigurován jako výstupní, nastavena
logická úroveň „0“ nebo „1“. Při rozeznání konkrétní instrukce kontroluje, zda jsou
v pořádku všechny vstupní parametry poté zavolána funkce pro její vykonání. Funkce instrukce()
rozhoduje tom jaký příkaz byl přijat, volá jednotlivé funkce pro ovládání, nastavování,
čtení výpis. Dále nastavují jednotlivé periferie
mikrokontroléru.28
2.
Vytvořený firmware verze 1.13. Jednotka USART
je nastavena příjem vysílání asynchronních rámců osmi datových bitech,
bez parity jedním stop bitem. SPI
sběrnice používána režimu znamená, mikrokontrolér konfigurován jako
Master, nejdříve přenáší nejvýznamnější bit MSB konec nejméně významný bit
LSB, neaktivní polarita hodinového signálu nízká čtení probíhá vzestupnou
hranu hodinového signálu. Mikokontrolér
je taktován krystalem frekvenci MHz. Program poté
vstoupí nekonečné smyčky while(1) čeká přerušení jednotky USART
při přijmu znaku.
Hlavní část programu (kostra) naznačena obrázku 2.c“ přeložený kód, vhodný
pro implementaci přímo mikrokontroléru, název „firmware. Všechny tři čítače/časovače, analogový komparátor, integrovaný A/D
převodník, jednotka TWI (I2
C) WDT (WatchDog) jsou vypnuty. Znak ‘\n’ označuje konec ovládacího příkazu jeho přijmutí zakáže
přerušení jednotky USART zavolá funkce instrukce(). Její struktura zobrazena obrázku obr.
Po vykonání instrukce volá funkce smaz(), která vymaže celý přijatý ovládací příkaz. 2.
Tento firmware lze nalézt přiloženém paměťovém médiu, které součástí této práce.13.7 Popis software
2. Frekvence hodinového signálu pomocí děličky fOSC/4
nastavena MHz.hex“.14. Rychlost komunikace nastavena 9600 Baud. Každý přijatý
znak ovládacího příkazu uložen stanovenou pozici.
Nakonec povoleno přerušení tím měřicí jednotka připravena příjem dalšího
příkazu.
Zdrojový kód jazyce název „firmware. Maximálně však čtyři.13 povoleno globální přerušení. Pokud pin vstupní, zvoleno, zda být stavu
vysoké impedance nebo připojen pull-up rezistor. Jednotlivé části jsou odděleny
znakem ‘:’.7. Celý příkaz rozdělen
na několik dílčích částí.
Postup programu přijmutí znaku naznačen obrázku 2. 2.
. inicializaci periférii volána funkce rst(), jejíž vývojový
diagram zobrazen obrázku obr. zapnutí mikrokontroléru provede
inicializace globálních proměnných, poté nastavení jednotlivých pinů portů D
jako vstupní výstupní. Pokud přijatý příkaz
neshoduje žádným, který zařízením podporován, nazpět vyslán řetězec
„UNKNOWN_COMMAND“.0 zabírá přibližně paměti mikrokontroléru.1 Firmware řídicího mikrokontroléru
Firmware pro řídicí mikrokontrolér ATmega32 byl napsán vývojovém prostředí
CodeVisionAVR Toto prostředí obsahuje nejen samotný překladač jazyka ale také
průvodce pro automatické generování zdrojového kódu knihovny pro ovládání
různých periférií (viz [9])