. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Spektrální analyzátor s PIC32
21. listopadu 2010 - 8:46 | Pandatron | Spektrální analyzátor s PIC32 | Komentářů: 5  

Spektrální analyzátor s PIC32

Konstrukce spektrálního analyzátoru audio pásma s výkonným obvodem řady PIC32. Spektrum vstupního signálu je zobrazováno na barevném grafickém displeji s rozlišením QVGA.

Konstrukce jednoduchého spektrálního analyzátoru pro audio pásmo je založena na obvodu Microchip PIC32. Konkrétně byl zvolen obvod typu PIC32MX360F512L, který nabízí až 1,56 DMIPS/MHz při maximální pracovní frekvenci 80 MHz a zároveň je snadno dostupný za přijatelnou cenu. Pro zobrazení spektra vstupního signálu je použit barevný LCD displej s rozlišením 320 × 240 px typu LVC75Z779 (Eval Board). Analyzátor může být připojen ke zdroji audio signálu, jako je například zvuková karta počítače, MP3 přehrávač a podobně. Tedy výstupu bez výkonového koncového stupně.


Obr. 1: Spektrální analyzátor s PIC32

Schéma zapojení:
Celá konstrukce vychází z použitého vývojového kitu LVC75Z779, jehož schéma je uvedeno na následujícím obrázku.


Obr. 2: Schéma zapojení analyzátoru

Přesto že se jedná o poměrně náročné zařízení, je většina funkcí řešena softwarově, uvnitř použitého procesoru. Díky tomu je hardwarové provedení velice jednoduché a díky použitému kitu spočívá pouze ve vhodném přivedení analogového signálu, podle obr. 3.


Obr. 3: Jediná modifikace kitu spočívá v přivedení analogového signálu a zajištění referenčního napětí

Referenční napětí pro interní ADC převodník je nastaveno na 1V a to s pomocí potenciometru připojeného k pinu Vref+ obvodu PIC32. Jeho hodnota však není kritická. Vstupní audio signál je samozřejmě symetrický kolem společné země a nabývá tedy i záporných hodnot. Jelikož použitý integrovaný ADC neumožňuje měření záporných napětí, je analogový signál posunut o hodnotu 0,5 V. Od zdroje signálu je poté oddělen kondenzátorem. Tím je uvedený problém vyřešen jednoduše i bez použití dalších integrovaných obvodů.

Software:
Na následujícím obrázku je uveden vývojový diagram hlavní smyčky programu obvodu PIC32:


Obr. 4: Vývojový diagram hlavní smyčky programu

Program je napsán v jazyce C s použitím MPLAB C32 kompilátoru.

Integrovaný ADC v PIC32 je nakonfigurován na samplovací frekvenci 48 kHz. Při každém novém vzorku je generováno přerušení hlavního programu, při kterém je nová hodnota uložena do paměti. Jakmile je buffer o velikosti 2048 bodů naplněn, jsou data předána k dalším zpracování. Jeho naplnění při samplovací frekvenci 48 kHz vychází zhruba na 42 ms.

Vzhledem k tomu, že se odběr vzorků provádí automaticky na pozadí, má procesor dost času na to, aby provedl zpracování všech výpočtů předchozích vzorků dříve, než jsou připravena další data. Při zpracování je jako první aplikována rychlá Fourierova transformace – FFT. Následuje převod hodnot na volty nebo decibely a konečně zobrazení spektra na připojeném LCD. Při 80 MHz taktovací frekvenci jádra použitého procesoru, trvají veškeré výpočty a vykreslení na displeji zhruba 35 ms.

Použitý FFT algoritmus je zde dostupný ke stažení. Výpočty jsou prováděny s použitím pevné desetinné čárky a jsou napsány čistě v jazyce C, bez jakýchkoliv optimalizací pro PIC32. Pouze bylo provedeno jednoduché rozšíření, aby bylo možné počítat 2048 bodů grafu FFT. Vlastní výpočet 2048 bodů trvá jen asi 9 ms a předpokládám, že by se dal výkon ještě více zvýšit provedením optimalizace kódu pro architekturu MIPS. Ovšem takto je možné uvedenou knihovnu velice snadno převzít a použít i na jiných platformách.

Následuje několik fotografií analyzátoru:


Obr. 5: Obdélníkový signál 1 kHz


Obr. 6: Signál s FM modulací – nosná = 7 kHz, modulovaná = 10 kHz


Obr. 7: Signál s AM modulací – nosná = 2 kHz, modulovaná = 5 kHz

Na následujícím klipu je spektrální analyzátor v akci. Snímková obnovovací frekvence analyzátoru je 23fps.

Stáhněte si prosím Flash Player pro přehrávání videí.

Závěr:
Uvedené řešení s využitím vývojového kitu poskytuje základní zdroj informací pro návrh vlastních aplikací, vyžadujících zpracování a vyhodnocení spektra analogového signálu. Uvedené řešení s procesorem PIC32 je vhodné nejen pro základní použití ve zvukové technice, ale i aplikacích jako jsou měřicí a testovací přístroje, datové modemy, přijímače PLC a řada dalších.
Zdrojové kódy a další soubory k projektu jsou volně ke stažení pod článkem, nebo na webových stránkách autora.

Odkazy & Download:
Domovská stránka autora
Audio spectrum analyzer

Informace o LVC75Z779
Zdrojové kódy k projektu







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (5):

Zobrazit starší 30 dnů (5)...



Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
PU232R - modul, převodník USB-UART
Modul s obvodem nové generace FT232RQ - převodník USB-UART pro vývoj a malosériovou výrobu.
od 390 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007