GENEROVÁNÍ ZVUKŮ POMOCÍ MIKROKONTROLÉRŮ



Podobné dokumenty
APLIKACE MIKROKONTROLÉRŮ PIC32MX


MIKROKONTROLÉRY PIC PRO POKROČILÉ

ALGORITMY ČÍSLICOVÉHO ZPRACOVÁNÍ SIGNÁLŮ

USBASP AVR programovací modul Uživatelská příručka

MIKROKONTROLÉRY PIC BEZ PŘEDCHOZÍCH ZNALOSTÍ

APLIKACE ALGORITMŮ ČÍSLICOVÉHO ZPRACOVÁNÍ SIGNÁLŮ 1. DÍL


Maturitní témata - PRT 4M


1 Podrobná specifikace Yunifly Datasheet

MIKROPROCESOROVÁ TECHNIKA 9 Událostní systém 9.1 Události Síť ERN Časování událostí Filtrace


STŘEDOŠKOLSKÁ TECHNIKA 2013


PK Design. MB-ATmega16/32 v2.0. Uživatelský manuál. Základová deska modulárního vývojového systému MVS. Verze dokumentu 1.0 (21.12.


Grafický výtahový displej

Inovace předmětu Mikroprocesorové praktikum I, II



O autorovi 6 O odborném redaktorovi 7 Úvod 21 Laptop nebo notebook? 21 Co je cílem této knihy 22 Webové stránky autora 23 Osobní poznámka 23

Informace. HiPath 1100 Dokonalá komunikace pro malé a střední podniky. Communication for the open minded

Elektronická stavebnice: Deska s jednočipovým počítačem

Cílem této kapitoly je seznámit s parametry a moduly stavebnice NXT. Obr. 1: Brick s moduly [3]

Konfigurátor idům. Manuál pro konfiguraci systémů Melody, Duo+ Rychlý obsah: - 1 -

erotor Návod k obsluze erotor erotor ovládací terminál elektronické sirény

možnost připojení k tabletu ipad (pomocí sady pro připojení kamery) nebo chytrému telefonu (s kabelem OTG) podporujícími formát USB audio

Vestavné systémy BI-VES Přednáška 10

PK Design. MB-S2-150-PQ208 v1.4. Základová deska modulárního vývojového systému MVS. Verze dokumentu 1.0 ( )


Elektrická informační zařízení pro cestující

WDV5270 HD "Lagoon" Uživatelský manuál

Univerzální jednočipový modul pro řízení krokových motorů

Obsah. 1. Upozornění. 2. Všeobecný popis

XD Routing a vstupní I/O systém. Digitální broadcast technologie

AQ CONTROL UNIT - MANUÁL




Návod na použití Konfigurační softvér DJ LCD config v1.3

Připojení systému A3600 k aplikaci DDS2000

Číslicové rozváděčové měřicí přístroje DIGEM prioritní program

MLE2 a MLE8. Datalogery událostí

BLOW PRO4U Wifi Multifunkční sportovní kamera Stručný uživatelský návod

Ukazovací zařízení a klávesnice Uživatelská příručka

Univerzální regulační systém TERM 4M. Technická data vstupy Pt100. proud (IMEA) binární (BIN) výstupy binární: (OUTPUTS)

Uživatelský Manuál. Digitální Fotorámeček PF810

Uživatelská příručka

Pociťte vibrace senzačního zvuku

PX213. MultiMedia Player. Multimediální přehrávač

Česky. Návod k použití

Uživatelský manuál. (cz) Tablet S7.1

KONTROLA VSTUPŮ / ČASOVÁ PREZENCE OBRAZOVKA WEBU. Uživatelský manuál

Hudební přehrávač. mivvy record M5 UŽIVATELSKÝ MANUÁL

Položkový rozpočet - vybavení Koncertní sál

Akční kamera EAGLE EYE CUBICAM. Obj. č.: Vlastnosti a funkce. Popis a ovládací prvky

2 Menu Otevře nabídku Menu 9 Port USB 2.0 Umožní připojit externí USB zařízení (např. USB Flash disk)

Elektronická stavebnice: Generátor frekvence s optickým a akustickým výstupem

Displej DT20-6. Update firmware řadiče. Simulační systémy Řídicí systémy Zpracování a přenos dat TM 2012_10_

Obsah. Obsah balení. Hlavní funkce. Prvky a funkce. Základní ovládání. Uživatelské prostředí Obrazovka přehrávání Moje hudba Nastavení

Řídicí systémy řady 400 str.2 z 16 MICROPEL

Braun DigiFrame 1160 Návod k použití


TVAC16000B. Uživatelská příručka

U ž i v a t e l s k ý m a n u á l. PowerMaster-10 PG2 PowerMaster-30 PG2. Vis

Průmyslové pece Tepelné procesy Sušárny a klimatizační komory Zkušebny Technologické linky Stroje

URMET DOMUS DIGITÁLNÍ SYSTÉM 1072 DIGITÁLNÍ SYSTÉM 1072 OBECNÁ ČÁST

Displej pro solární regulátor Tracer-2215RN MT-5

WRT OZS-121C COLOUR 5,6 MEMORY

Řada Aspire Stručné pokyny

AWGD 46 MWGD 46. Dveřní moduly APS mini / APS mini Plus s rozhraním WIEGAND s podporou zámků APERIO. Uživatelská příručka

Gladiator RG300 - Uživatelský manuál

Hlasový modul HLM-410, HLM-411 firmware 1.5/VREG/VOX/AIN

TECHNICKÁ UNIVERZITA V LIBERCI Studentská 1402/ Liberec 1

BLUETOOTH ZVUKOVÝ PRUH SE SUBWOOFEREM

Vše otestováno. Ústředna EZS - Easy Series Snadné zabezpečení s využitím wlsn* * bezdrátová lokální bezpečnostní síť


Představení notebooku Uživatelská příručka

Komerèní využití stavebních návodù je povoleno jen s písemným souhlasem autora a nakladatelství. Soubory na CD ROM mající pøímo vztah ke knize, které

PK Design. EVMS-mega128. Uživatelský manuál. v1.0. Výuková deska s mikrokontrolerem ATmega128. Obr. 1 - výuková deska s LCD displejem

Firmware USBasp pro modul AVRUSB. Milan Horkel. Parametr Hodnota Poznámka. Rozhraní USB Low Speed. Procesor ATmega8 ATmega88 Varianty překladu

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

2N NetSpeaker. Quick Start. IP Audio Systém. Version Firmware

Digitální klávesy RK-61. Obj. č.:


XSL-V80P Videozvonek ZONEWAY

ÚAMT FEKT VUT. mikroprocesor Rabbit. Diplomová prá ce. Tomá škreuzwieser. Brno

UNIVERZITA PARDUBICE ÚSTAV ELEKTROTECHNIKY A INFORMATIKY

Bakalářská práce. Programovatelný termostat k bojleru

Datasheet Fujitsu LIFEBOOK A512 Notebook

Měřič krevního tlaku. 1 Měření krevního tlaku. 1.1 Princip oscilometrické metody 2007/

Abyste předešli úrazům osob nebo poškození nástroje nebo připojených zařízení, dodržujte zejména následující zásady:

Kuchyňské rádio Reflexion CLR 2610 USB. Obj. č.: BEZPEČNOSTNÍ POKYNY PRVKY OVLÁDACÍHO PANELU

Prùvodce obecnîmi nastaveními


ČEMU ROZUMÍ MIKROPROCESOR?

Výklad učiva: Co je to počítač?

Ústředna EZS Easy Series. Referenční příručka

Uživatelský manuál. Vnitřní videojednotka s pamětí

Transkript:

David Matoušek GENEROVÁNÍ ZVUKÙ POMOCÍ MIKROKONTROLÉRÙ PIC16F628A + ATMEGA8 Praha 2015

David Matoušek Generování zvukù pomocí mikrokontrolérù Recenzent Bohumil Brtník Bez pøedchozího písemného svolení nakladatelství nesmí být kterákoli èást kopírována nebo rozmnožována jakoukoli formou (tisk, fotokopie, mikrofilm nebo jiný postup), zadána do informaèního systému nebo pøenášena v jiné formì èi jinými prostøedky. Autor a nakladatelství nepøejímají záruku za správnost tištìných materiálù. Pøedkládané informace jsou zveøejnìny bez ohledu na pøípadné patenty tøetích osob. Nároky na odškodnìní na základì zmìn, chyb nebo vynechání jsou zásadnì vylouèeny. Všechny registrované nebo jiné obchodní známky použité v této knize jsou majetkem jejich vlastníkù. Uvedením nejsou zpochybnìna z toho vyplývající vlastnická práva. Veškerá práva vyhrazena David Matoušek, 2015 Nakladatelství BEN technická literatura, Vìšínova 5, Praha 10 David Matoušek: Generování zvukù pomocí mikrokontrolérù BEN technická literatura, Praha 2015 1. vydání ISBN 978-80-7300-528-3 (tištìná kniha) ISBN 978-80-7300-529-0 (elektronická kniha v PDF)

Předmluva Kniha se věnuje problematice generování zvuků pomocí mikrokontrolérů, je určena široké odborné veřejnosti včetně začátečníků. Série příkladů určených pro mikrokontroléry PIC16F628A a ATmega8A (resp. ATmega16A) vysvětluje jednotlivé možnosti generování zvuků počínaje jednoduchými obdélníkovými impulzy a konče přehráváním zvukových souborů typu WAV a MP3 z SD karty na kodeku VS1053b. Pro lepší pochopení je doplněna řada aplikací určených pro Windows, které analyzují zvukové soubory nebo vytvářejí zvuky na zvukové kartě počítače. Velká pozornost je rovněž věnována rozhraní digitálních hudebních nástrojů (MIDI). Kromě jiného je realizována MIDI klaviatura a MIDI syntezátor. Předpokládá se, že čtenář má znalosti programovacího jazyka C a orientujete se v základních pojmech mikroprocesorové techniky. Pro zájemce je text doplněn odkazy na další literaturu, kde lze dohledat doprovodné informace. První kapitola vysvětluje základní pojmy spojené se zvukem a uvádí principy generování zvuku pomocí mikrokontroléru (jednoduché obdélníkové impulzy, použití PWM, použití D/A převodníku). Dále je řešeno buzení reproduktoru a piezoměniče. Druhá kapitola je stručným popisem mikrokontrolérů PIC16F628A a ATmega8A, které jsou v knize používány pro realizaci jednotlivých příkladů. Též jsou uvedeny konstrukce vývojového kitu PKIT627 a kitu COM644KIT včetně redukce pro ATmega8A. Uvedené typy mikrokontrolérů byly vybrány s ohledem na poměr výkon : cena a patří k nejoblíbenějším mikrokontrolérům řad PIC a ATMEL. Třetí kapitola předvádí generování jednoduchých obdélníkových impulzů pomocí mikrokontrolérů PIC16F628A a ATmega8. Nejdříve je vysvětlena funkce jednotky Timer2, přerušovacího systému, vstupně/výstupních vývodů a konfigurace fuses (propojek). Poté je realizován první příklad ve vývojovém prostředí MPLAB X s použitím překladače XC8 (pro případ PIC16F628A) resp. Atmel Studio 6.1 s použitím překladače GCC (pro případ ATmega8A). Příklad je označen jako PROG_01. Čtvrtá kapitola je věnována generování jednoduchých zvukových efektů pomocí mikrokontrolérů PIC16F628A a ATmega8. Nejdříve jsou vysvětleny principy generování přerušovaného tónu, střídání dvou tónů různé výšky a plynulé změny výšky tónu. Příklad je označen jako PROG_02. Pátá kapitola ukazuje možnost přehrávání jednoduchých melodií pomocí mikrokontrolérů PIC16F628A a ATmega8. Nejdříve jsou připomenuty pojmy z hudební nauky nutné pro správné pochopení problematiky (temperované ladění, kmitočty jednotlivých tónů). Následně je pomocí piezoměniče (s využitím přerušení časovače) přehrána krátká melodie. Příklad je označen jako PROG_03. Šestá kapitola je věnována problematice harmonické syntézy (vytváření tónů různých barev skládáním harmonických složek různých kmitočtů, fází a amplitudy). S ohledem na výpočetní náročnost generování zvuku tímto způsobem v reálném čase, je realizace předvedena pomocí zvukové karty PC a ovládací program je napsán pro Windows. Aplikace je označena jako GENER. Sedmá kapitola se zabývá detaily vlnového zvuku. Nejdříve je podrobně popsán formát souboru WAV. Pomocí Windows aplikace WAVEINFO je předvedena pokročilejší práce s vlnovými zvuky včetně přehrávání na zvukové kartě PC ale také extrakce zvukových dat pro mikrokontroléry řady PIC nebo ATMEL. Osmá kapitola ukazuje přehrávání vlnového zvuku pomocí jednoduchého přípravku MWAVEOUT (obsahuje 12bitový D/A převodník a výkonový zesilovač) na mikrokontrolérech PIC16F628A a ATmega8. Jeden nebo více zvuků je uloženo v programové Flash. Vzhledem k nízké kapacitě paměti Flash se jedná pouze o krátké zvuky, které tvoří například reakci na stisk tlačítka (kliknutí). Příklad je označen jako PROG_04. Devátá kapitola je nazvána Úvod do MIDI. Po úvodním popisu hardware MIDI a přenosu zpráv je věnována pozornost systému MIDI z úrovně programování pod Windows. Výsledkem je pak Windows aplikace MIDITEST, která slouží pro úvodní seznámení s rozhraním MIDI. Tato aplikace přehrává jednoduché tóny a také akordy na zvukové kartě PC. i

Desátá kapitola představuje realizaci klaviatury MIDI nazvané MIDIKBD. Klaviatura je postavena na mikrokontroléru ATmega16A, obsahuje 25 kláves (rozsah dvě oktávy) a lze ji připojit jako běžné MIDI zařízení nebo přes sériovým port k počítači. Displej zobrazuje navolený MIDI program (hudební nástroj), který lze měnit pomocí tlačítek. Pokud nemáte MIDI syntezátor (nebo počítač vybavený konektorem MIDI-IN), můžete klaviaturu připojit k počítači pomocí sériového portu a použít jednoduchou Windows aplikaci MIDIKBD, která přijímá MIDI zprávy přes sériový port a přehrává tóny na zvukové kartě PC. Jedenáctá kapitola je věnována úvodnímu popisu hardwarového kodeku VS1053b a vývojovému kitu MP3 click. Kodek VS1053b podporuje rozličné zvukové formáty (včetně WAV a MP3) a také je schopen v reálném čase zpracovávat zprávy rozhraní MIDI. Je tedy stručně popsána funkce, dále jednotlivé vývody, rozhraní SDI a SCI, registry SCI a základní operace. Dále je pozornost věnována kitu MP3 click, který obsahuje osazený obvod VS1053b včetně podpůrných součástek. Kit je realizován tak, aby jej bylo možné zasunout například do běžného kontaktního pole. Na závěr je popsána konstrukce přípravku MVS1053B, který slouží pro připojení uvedeného kitu k mikrokontrolérům řady AMTEL a PIC. Dvanáctá kapitola ukazuje ovládání kitu MP3 click (resp. kodeku VS1053b) pomocí mikrokontroléru ATmega8A. Příklad PROG_05 přehrává vlnový zvuk uložený v programové Flash přímo na kodeku VS1053b. Pro konverzi souboru WAV do formy zdrojového souboru je vytvořena aplikace KONVATMEL. Příklad PROG_06 provede programové přepnutí kodeku do režimu run-time MIDI. Následně je možné odesílat na kodek klasické MIDI zprávy a kodek dané zprávy zpracovává v reálném čase. Kodek lze pak použít jako základ pro realizaci MIDI syntezátoru. Ve třinácté a čtrnácté kapitole jsou stejné příklady PROG_05 a PROG_06 (tedy přehrávání vlnového zvuku z paměti Flash a zpracování MIDI zpráv v reálném čase) převedeny na mikrokontrolér PIC16F628A. Vzhledem k absenci jednotky SPI u tohoto mikrokontroléru jsou nejdříve programy realizovány přímým programovým řízením SPI linek (s nízkou přenosovou rychlostí). Varianty označené jako PROG_05A a PROG_06B používají přípravek MVS1053BPIC s upraveným rozložením vývodů, kdy je místo jednotky SPI použita jednotka USART, pracující v synchronním režimu. Použití této jednotky vyžaduje navíc přepnutí kodeku do odlišného SPI režimu. V patnácté kapitole je na základě kodeku VS1053b realizován MIDI syntezátor MIDISYNT. Mikrokontrolér ATmega8A realizuje spojení se vstupním konektorem MIDI-IN a přeposílání přijatých zpráv na kodek VS1053b. Mikrokontrolér dále obsluhuje tlačítko s funkcí MUTE (vypnutí/zapnutí zvukového výstupu) a rotační spínač (enkodér) pro plynulé nastavení hlasitosti zvukového výstupu. LCD slouží pro grafické znázornění nastavené hlasitosti. Šestnáctá kapitola popisuje SD kartu a její ovládání. SD kartu lze využít pro uložení delších zvukových souborů (souborů, jejichž délka neumožňuje, aby byly uloženy v paměti Flash). Nejdříve je detailně popsán souborový systém FAT32, který se standardně používá pro ukládání souborů na paměťová média. Pro lepší pochopení a konkrétní představu je doplněna Windows aplikace DISKINFO, která rozkládá obsah kopie SD karty na jednotlivé složky (MBM, BPB) a předvádí obsah datové oblasti a tabulky FAT a dále dovoluje extrahovat soubor uložený na SD kartě. Následně je stručně popsáno ovládání SD karty na hardwarové úrovni a předvedena realizace programové jednotky SD (určena pro ATmega8A) pro základní operace s SD kartou: inicializace, vykonání příkazu a přečtení jednoho sektoru. Sedmnáctá kapitola logicky završuje celou knihu. Spojuje dříve uváděné poznatky do příkladů PROG_07 a PROG_08, které přehrávají zvukové soubory WAV a MP3 načítané z SD karty na kodeku VS1053b. Příklady jsou určeny pouze pro mikrokontrolér ATmega8A, protože je nutné použít SPI jednotku jak pro komunikaci s kodekem, tak i pro komunikaci s SD kartou. V příloze naleznete schémata jednotlivých přípravků a podklady pro jejich výrobu. Seznamy součástek jsou uvedeny jednak v opisné formě (vhodné například pro začátečníky) a dále ve formě značení součástek v katalozích firem GM electronic a TME. Jedná se o přípravky: PKIT627 (vývojový kit pro PIC16F628A-I/P), COM644KIT (levný vývojový kit pro ATmega644, nová verze ovládacího programu zajišťuje podporu i pro mikrokontroléry ATmega8, ATmega16, ATmega32), REDMEGA8 (redukce pro použití 28vývodového mikrokontroléru ATmega8A ve 40vývodové patici vývojového kitu COM644KIT), MSVORKY (univerzální přípravek se ii

*(1(529È1Ë=98. 3202&Ë0,.52.21752/e5 VYRUNRYQLFt D NROtNRYRX OLãWRX 0/('6: YHU]H /(' D VStQDþH 03,(=2 SLH]RP QLþ 0:$9(287 SHKUiYiQt YOQRYpKR ]YXNX SRPRFt '$S HYRGQtNX 0&3 D YêNRQRYpKR ]HVLORYDþH /0 0,',.%' 0,', NODYLDWXUD VNOiYHVDPL±RNWiY\ 096% PRG XO SURS LSRMHQtNLWX03FOLFN096%3,&RSWLPDOL]RYDQpUR]ORåHQtYêYRG SURS LSRMHQtNLWX 03FOLFNQD3,&)$0,',6<170,',V\QWH]iWRUVNLWHP03FOLFN0$036'PRGXO SUR S LSRMHQt PLNUR 6' NDUW\ D NLWX03FOLFN1D]iY U MHSRSViQD NRQVWUXNFH SURSRMRYDFtFK NDEOtN SURS LSRMRYiQtS tsudyn 3 HKOHGXYiG QêFKS tnodg SURPLNURNRQWUROpU\ 352*B±JHQHURYiQt REGpOQtNRYêFK LPSXO] NPLWRþWX +] 3,&)$ $7PHJD$ 352*B±JHQHURYiQt ]YXNRYêFK HIHNW S HUXãRYDQê WyQ S HStQiQt GYRX WyQ U ]Qp YêãN\SO\QXOi]P QDYêãN\WyQX3,&)$$7PHJD$ 352*B±S HKUiYiQtMHGQRGXFKpPHORGLH3,&)$$7PHJD$ 352*B±S HKUiYiQt NUiWNêFK YOQRYêFK ]YXN ]SDP WL )ODVK SRPRFt S tsudynx 0:$9(2873,&)$$7PHJD$ 352*B±S HKUiYiQt YOQRYêFK ]YXN ]SDP WL )ODVK SRPRFt NRGHNX 96E 3,&)$$7PHJD$ 352*B±]SUDFRYiQt0,',]SUiYSRPRFtNRGHNX96EYUHiOQpPþDVH3,&)$ $7PHJD$ 352*B$±XSUDYHQêS tnodg352*bsurmhgqrwnx86$573,&)$ 352*B$±XSUDYHQêS tnodg352*bsurmhgqrwnx86$573,&)$ 352*B±S HKUiYiQt ]YXNRYêFK VRXERU :$9 D 03 ]6' NDUW\ QDNRGHNX 96E $7PHJD$ 352*B±XSUDYHQêS tnodg352*byroeds HKUiYDQpKRVRXERUXVWLVNHPWODþtWND 3 HKOHGXYiG QpKRILUPZDUH 0,',.%'±0,',NODYLDWXUD$7PHJD$ 0,',6<17±0,',V\QWH]iWRU$7PHJD$ 3 HKOHGXYiG QêFKDSOLNDFtSUR:LQGRZV *(1(5±KDUPRQLFNiV\QWp]DSRPRFt]YXNRYpNDUW\3& :$9(,1)2±]tVNiQt LQIRUPDFt RY\EUDQpP YOQRYpP ]YXNX VRXERUX :$9 S HKUiQt D H[WUDNFH]YXNRYêFKGDWSURPLNURNRQWUROpU\3,&QHER$70(/ 0,',7(67±MHGQRGXFKi :LQGRZV NODYLDWXUD S HKUiYDMtFt WyQ\ JHQHURYDQp SRPRFt 0,', QD]YXNRYpNDUW 3& 0,',.%'±MHGQRGXFKi:LQGRZVDSOLNDFHSURS tmhp 0,', ]SUiY SRPRFt VpULRYpKR SRUWX 7yQ\JHQHURYDQpSRPRFt0,',S HKUiYiQD]YXNRYpNDUW 3&.219$70(/±S HYiGt VRXERU YOQRYpKR ]YXNX :$9 QDYêVWXSQt VRXERU YHIRUPiWX RGSRYtGDMtFt]GURMRYpPXWH[WXVGHILQLFtSROH]YXNRYêFKGDWSRXåtYiVHSURSURJUDPRYiQt PLNURNRQWUROpU ',6.,1)2±S HGYHGHQt SUiFH VH VRXERURYêP V\VWpPHP )$7 QDNRSLL REVDKX 6' SDP WL 'RSURYRGQê=,3DUFKLY 7HQWRDUFKLYMHPRåQpVLVWiKQRXW]GRPRYVNpZHERYpVWUiQN\NQLK\YL]WLUiå 2EVDKGRSURYRGQpKR=,3DUFKLYXMHJUDILFN\]Qi]RUQ QQDQiVOHGXMtFtVWUDQ $GUHVi &20.,7BY REVDKXMH DSOLNDFL &20.,7(;( SUR RYOiGiQt YêYRMRYpKR NLWX&20.,7'iOHMH]GHNRQILJXUDþQtVRXERU&20.,7,1,YêE UþtVODVpULRYpKRSRUWX SUR S LSRMHQt NLWX NSRþtWDþL 6RXERU &20.,7+(; VORXåt SUR QDSURJUDPRYiQt tglftkr PLNURNRQWUROpUX$7&YL]S torkx$1ryiyhu]hdsolndfh&20.,7(;(srgsruxmh QHMHQPLNURNRQWUROpU$7PHJDDOHLW\S\$7PHJD$7PHJD$7PHJD $GUHVi ),50:$5( REVDKXMH SURJUDP\ SUR YêãH XYHGHQi ]D t]hqt 0,',.%' D 0,',6<17 LLL

Adresář WINAPP obsahuje výše popsané aplikace pro Windows. Dále je zde ještě aplikace ALARM, která slouží pro vytvoření krátkých vlnových zvuků (ALARM.WAV, SINUS.WAV, NARUST.WAV). Adresář PROGRAMY obsahuje v podadresářích ATMEGA resp. PIC jednotlivé programy PROG_01 až PROG_08 resp. PROG_01 až PROG_06A. Dále jsou zde adresáře ATMEGATEST a PICTEST, které obsahují jednoduché programy pro otestování funkce vývojového kitu (jedná se o legendární program běžící světlo). Adresář DOKUMENTY obsahuje katalogové listy (datasheety) použitých obvodů, případně další informace k doplnění problematiky. Adresář SPOJE obsahuje soubory návrhového systému Eagle (SCH a BRD) a klišé plošných spojů jednotlivých přípravků. ZIP archiv COM644KIT_v2 FIRMWARE COM644KIT.EXE COM644KIT.HEX COM644KIT.INI MIDIKBD MIDISYNT WINAPP GENERATOR PROGRAMY DOKUMENTY WAVEINFO MIDITEST MIDIKBD KONVATMEL DISKINFO ALARM ATMEGA PIC ATMEGATEST PICTEST ATmega8A.pdf PIC16F628A.pdf... PROG_01 až PROG_08 PROG_01 až PROG_06A SPOJE Eagle soubory a klišé DPS Schematické znázornění obsahu doprovodného ZIP archivu iv

Obsah 1 Základní pojmy a principy... 1-1 1.1 Obecné principy generování zvuku pomocí mikrokontroléru... 1-2 1.2 Buzení reproduktoru a piezoměniče... 1-5 2 Mikrokontroléry PIC16F628A a ATmega8A... 2-1 2.1 Mikrokontrolér PIC16F628A... 2-1 2.2 Mikrokontrolér ATmega8A... 2-3 3 Generování jednoduchých obdélníkových impulzů... 3-1 3.1 Mikrokontrolér PIC16F628A... 3-1 3.2 Mikrokontrolér ATmega8A... 3-15 4 Generování jednoduchých zvukových efektů... 4-1 4.1 Principy... 4-1 4.2 Přípravek MLEDSW tlačítka a LED... 4-3 4.3 Režimy zvukových efektů... 4-4 4.4 Realizace s mikrokontrolérem PIC16F628A... 4-4 4.5 Realizace s mikrokontrolérem ATmega8A... 4-10 5 Přehrávání jednoduchých melodií... 5-1 5.1 Temperované ladění... 5-1 5.2 Realizace s mikrokontrolérem ATmega8A... 5-2 5.3 Realizace s mikrokontrolérem PIC16F628A... 5-6 6 Harmonická syntéza... 6-1 6.1 Základní principy... 6-1 6.2 Harmonická syntéza na zvukové kartě PC... 6-2 6.3 Ověření funkce... 6-10 7 Vlnový zvuk... 7-1 7.1 Základní principy... 7-1 7.2 Formát souboru WAV... 7-2 7.3 Aplikace WAVEINFO... 7-3 7.4 Příklad exportu zvukových dat... 7-7 8 Přehrávání vlnového zvuku... 8-1 8.1 Přípravek MWAVEOUT přehrávání vlnového zvuku... 8-1 8.2 Přehrávání pomocí mikrokontroléru ATmega8A... 8-3 8.3 Přehrávání pomocí mikrokontroléru PIC16F628A... 8-10 9 Úvod do MIDI... 9-1 9.1 Základní vlastnosti MIDI... 9-1 9.2 MIDI systém z pohledu Windows API... 9-3 9.3 Aplikace MIDITEST... 9-5 10 MIDIKBD MIDI klaviatura... 10-1 10.1 Přípravek MIDIKBD MIDI klaviatura... 10-1 10.2 Firmware pro MIDIKBD... 10-2 10.3 Aplikace MIDIKBD... 10-12 11 Kodek VS1053b a kit MP3 click... 11-1 11.1 Kodek VS1053b... 11-1 11.2 Kit MP3 click... 11-6 11.3 Přípravek MVS1053B modul kodeku VS1053b... 11-8 12 Ovládání kodeku VS1053b pomocí ATmega8A... 12-1 12.1 PROG_05 přehrávání vlnového zvuku... 12-1 12.2 PROG_06 přehrání melodie pomocí MIDI... 12-7 13 Ovládání kodeku VS1053b pomocí PIC16F628A... 13-1 13.1 PROG_05 přehrávání vlnového zvuku... 13-1 13.2 PROG_06 přehrání melodie pomocí MIDI... 13-4 v

14 MVS1053BPIC úprava desky MVS1053B pro PIC... 14-1 14.1 Přípravek MVS1053BPIC... 14-1 14.2 PROG_05A přehrávání vlnového zvuku... 14-1 14.3 PROG_06 přehrání melodie pomocí MIDI... 14-5 15 MIDISYNT MIDI syntezátor... 15-1 15.1 Přípravek MIDISYNT MIDI syntezátor... 15-1 15.2 Firmware pro MIDISYNT... 15-2 16 SD karta a její ovládání... 16-1 16.1 Souborový systém FAT32... 16-1 16.2 Ovládání SD karty... 16-10 16.3 Přípravek MAMP3SD SD karta a modul MP3 click... 16-15 17 Přehrávání zvuků z SD karty pomocí ATmega8A... 17-1 17.1 Popis některých dalších SCI registrů kodeku VS1053b... 17-1 17.2 PROG_07 přehrávání souborů z SD karty... 17-2 17.3 PROG_08 řízené přehrávání souborů z SD karty... 17-14 A. Příloha podklady pro výrobu přípravků... A-1 A.1 PKIT627 vývojový kit pro PIC16F627A-I/P... A-1 A.2 COM644KIT vývojový kit pro ATmega... A-4 Ovládací program... A-7 A.3 REDMEGA8 redukce pro ATmega8-PU... A-8 A.4 MSVORKY univerzální přípravek se svorkovnicí a kolíky... A-11 A.5 MLEDSW verze 2 spínače a LED... A-13 A.6 MPIEZO jednoduchý přípravek s piezoměničem... A-15 A.7 MWAVEOUT modul pro přehrávání vlnového zvuku... A-17 A.8 MIDIKBD modul MIDI klávesnice + KLAV moduly... A-19 A.9 MVS1053B modul kodeku VS1053B... A-24 A.10 MVS1053BPIC úprava desky MVS1053B pro PIC16F628A... A-26 A.11 MIDISYNT... A-28 A.12 MAMP3SD SD karta a modul MP3 click... A-32 A.13 Konektory kabely... A-35 vi