- Požadovaný hardvér:
- Príprava so zvukovými súbormi WAV:
- Obvody a hardvér:
- Programovanie vášho Arduina:
- Fungovanie tohto hudobného prehrávača Arduino:
Ak do nášho projektu pridáte zvuky alebo hudbu, bude vždy vyzerať cool a znie oveľa atraktívnejšie. Najmä ak používate Arduino a máte veľa pinov zadarmo, môžete do svojho projektu ľahko pridať zvukové efekty, stačí investovať do ďalšieho modulu SD karty a bežného reproduktora. V tomto článku vám ukážem, aké ľahké je prehrávanie hudby / pridávanie zvukových efektov pomocou vašej dosky Arduino. Ďakujeme komunite Arduino, ktorá vyvinula niektoré knižnice, aby ich vytvorili rýchlo a ľahko. Tiež sme tu použili IC LM386 na účely zosilnenia a potlačenia šumu.
V tomto projekte budeme prehrávať hudobné súbory.wav uložené na SD karte. Naprogramujeme Arduino na čítanie týchto súborov.wav a prehrávanie zvuku v reči prostredníctvom zosilňovača zvuku LM386. Pretože tento kód dokázal čítať iba súbory.wav, technicky sa tento projekt nedá nazvať prehrávačom mp3 Arduino, ale aj tak s ním budete počuť piesne. Ak hľadáte jednoduché alternatívy, ako je napríklad hudobný prehrávač Arduio bez karty SD, mali by ste vyskúšať melódický prehrávač Arduino, ktorý sme vytvorili už skôr.
Požadovaný hardvér:
- Arduino UNO
- Modul čítačky SD kariet
- SD karta
- Zvukový zosilňovač LM386
- 10uf kondenzátor (2 čísla)
- 100uf kondenzátor (2 čísla)
- 1K, 10K rezistor
- Tlačidlá (2 čísla)
- Nepál
- Pripojenie drôtov
Príprava so zvukovými súbormi WAV:
Pre prehrávanie zvukov z SD karty pomocou Arduina potrebujeme zvukové súbory vo formáte.wav, pretože Arduino Board dokáže prehrať zvukový súbor v konkrétnom formáte, ktorý je vo formáte wav. Na výrobu mp3 prehrávača arduino je k dispozícii veľa štítov mp3, ktoré môžete použiť s arduino. Alebo na prehrávanie súborov mp3 v arduino existujú webové stránky, pomocou ktorých môžete previesť akýkoľvek zvukový súbor v počítači na konkrétny súbor WAV.
Ak chcete previesť akýkoľvek zvukový súbor do formátu wav, postupujte podľa nasledujúcich krokov:
Krok 1: Kliknutím na „Online Wav Converter“ vstúpite na webovú stránku.
Krok 2: Arduino dokáže prehrať súbor wav v nasledujúcom formáte. S nastaveniami sa môžete pohrať neskôr, ale tieto nastavenia boli experimentom, aby boli čo najlepšej kvality.
Bitové rozlíšenie |
8 bitov |
Vzorkovacia frekvencia |
16 000 Hz |
Zvukový kanál |
Mono |
Formát PCM |
8-bitový nepodpísaný PCM |
Krok 3: Na webovej stránke kliknite na „zvoliť súbor“ a vyberte súbor, ktorý chcete previesť. Potom zadajte vyššie uvedené nastavenia. Po dokončení by to malo na nasledujúcom obrázku vyzerať asi takto
Krok 4: Teraz kliknite na „Previesť súbor“ a váš zvukový súbor sa prevedie do formátu súboru.Wav. Po dokončení prevodu sa tiež stiahne.
Krok 5: Nakoniec naformátujte kartu SD a uložte do nej zvukový súbor.wav. Pred pridaním tohto súboru sa uistite, že ste ho naformátovali. Pamätajte tiež na názov zvukového súboru. Podobne môžete zvoliť ktorýkoľvek zo svojich štyroch zvukových záznamov a uložiť ich s názvami 1, 2, 3 a 4 (názvy by sa nemali meniť). Konvertoval som štyri piesne a uložil som ich ako 1.wav, 2.wav, 3.wav a 4.wav, ako je zobrazené nižšie.
Obvody a hardvér:
Schéma zapojenia tohto prehrávača zvukových súborov Arduino je jednoduchá. Kompletná schéma zapojenia je znázornená na obrázku nižšie.
Ako vieme, naše zvukové súbory sa ukladajú na SD kartu, a preto sme prepojili modul čítačky SD kariet s našim Arduinom. Arduino a SD karty komunikujú pomocou SPI komunikačného protokolu. Preto je modul prepojený s kolíkmi SPI Arduina, ako je znázornené vyššie na diagrame. Ďalej je uvedený v nasledujúcej tabuľke.
Arduino |
Modul SD karty |
+ 5V |
Vcc |
Gnd |
Gnd |
Pin 12 |
MISO (Master In Slave out) |
Pin 11 |
MOSI (Master Out Slave In) |
Kolík 13 |
SCK (synchrónne hodiny) |
Pin 4 |
CS (výber čipu) |
Teraz bude Arduino schopné načítať hudobný súbor z SD karty a prehrať ho na kolíku číslo 9. Ale zvukové signály produkované Arduino na kolíku 9 nebudú príliš počuteľné. Preto ho zosilňujeme pomocou nízkonapäťového zvukového zosilňovača LM386 IC.
Vyššie uvedený zosilňovač je navrhnutý pre zosilnenie 200 a Vdd (pin 6) je napájaný z 5V pinu Arduina. Ak chcete zvýšiť / znížiť zvuk, môžete zvýšiť / znížiť napätie dodávané tomuto kolíku. Môže vydržať maximálne 15V. Viac informácií o tejto konfigurácii zosilnenia zosilnenia 200 pre LM386 sa dozviete tu.
Máme tiež dve tlačidlá pripojené k pinom 2 a 3 Arduina. Tieto prepínače sa používajú na prehrávanie nasledujúcej stopy skladby a na prehrávanie / pozastavenie hudby. Tieto tlačidlá som použil iba na preukázanie svojich schopností; skladbu môžete prehrať kedykoľvek je to potrebné. Na konci si pozrite ukážkové video.
Tento obvod môžete kompletne zostaviť cez prepážku, ako je to znázornené na obrázku nižšie
Programovanie vášho Arduina:
Keď sme pripravení na hardvér a kartu SD, sme už len jeden krok od prehrávania týchto skladieb. Vložte kartu do modulu SD karty a postupujte podľa pokynov uvedených nižšie.
Krok 1: Ako už bolo povedané, na zabezpečenie fungovania tohto projektu budeme používať knižnicu. Odkaz na knižnicu je uvedený nižšie. Kliknite na ňu a vyberte možnosť „Klonovať alebo prevziať“ a vyberte možnosť prevziať ako ZIP.
- Knižnica TMRpcm
Krok 2: Pridajte tento súbor Zip do svojho Arduino IDE výberom položky Skica -> Zahrnúť knižnicu -> Pridať knižnicu.ZIP, ako je uvedené nižšie, a vyberte súbor ZIP, ktorý sme práve stiahli.
Krok 3: Kompletný program projektu hudobného prehrávača arduino je uvedený na konci tohto článku, jednoducho ho skopírujte a vložte do programu Arduino. Teraz kliknite na Nahrať a pripravte sa na prehrávanie zvukových súborov.
Program je samozrejmý, pretože majú riadky komentárov. Ďalej som však vysvetlil aj schopnosť knižnice TMRpcm.
Prehrávanie zvukového súboru:
Pomocou riadku nižšie môžete prehrať akýkoľvek zvuk, ktorý je uložený vo formáte Wav v module SD karty.
music.play ("3.wav"); // objekt name.play („FileName.wav“);
Tento riadok môžete použiť na miestach, kde chcete spustiť zvuk
Pozastavenie zvukového súboru:
Ak chcete pozastaviť zvukový súbor, môžete zavolať na linku nižšie.
music.pause (); //objektname.pause ();
Presunutie dopredu / dozadu zvuku:
Nie sú priame spôsoby, ako posunúť zvukový súbor dopredu alebo dozadu, ale na prehranie skladby v konkrétnom čase môžete použiť nasledujúci riadok. To je možné použiť na pretáčanie dopredu / dozadu pomocou nejakého ďalšieho programovania.
music.play ("2.wav", 33); // Prehrá skladbu od 33. sekundy //objectname.play(versFilename.wav httz, čas za sekundu);
Nastavenie kvality zvuku:
Knižnica nám poskytuje dve vlastnosti na prehrávanie hudby, jednou je hranie v normálnom režime a druhou hranie s 2-násobným prevzorkovaním.
hudba.kvalita (0); // Normálny režim music.quality (1); // 2X v režime vzorkovania
Nastavenie hlasitosti zvuku:
Áno, hlasitosť zvuku môžete ovládať pomocou softvéru. Hlasitosť môžete jednoducho nastaviť pomocou riadku nižšie. Vyššia hlasitosť hudby má tendenciu ovplyvňovať kvalitu zvuku, a preto je potrebné používať hardvérové ovládanie.
music.setVolume (5); // Prehrá skladbu pri hlasitosti 5 //objectname.setVolume(Úroveň hlasitosti);
Fungovanie tohto hudobného prehrávača Arduino:
Po naprogramovaní vášho Arduina jednoducho stlačte tlačidlo pripojené k kolíku 2 a vaše Arduino za vás prehrá prvú skladbu (uloženú ako 1.wav). Teraz môžete znova stlačiť tlačidlo a zmeniť stopu na nasledujúcu skladbu, ktorá má hrať 2.wav. Rovnako môžete prejsť na všetky štyri skladby.
Skladbu môžete tiež prehrať / pozastaviť stlačením tlačidla pripojeného ku kolíku 3. Jedným stlačením skladbu pozastavíte a opätovným stlačením ju prehráte od miesta, kde sa zastavila. Na dokončenie práce si pozrite video nižšie (alebo si môžete oddýchnuť pri niektorých skladbách).
Dúfam, že sa vám projekt páčil. Teraz je na vašej kreativite, aby ste ich použili vo svojich projektoch. Môžete si vyrobiť hovoriace hodiny, hlasového asistenta, hovoriaceho robota, bezpečnostný systém hlasovej výstrahy a oveľa viac. Dajte mi vedieť, ako to plánujete použiť, v sekcii komentárov. Ak máte nejaké problémy s uvedením tejto veci do prevádzky, kontaktujte ma na fórach alebo v sekcii komentárov nižšie.