Obsah:

Infračervený prehrávač MP3: 6 krokov (s obrázkami)
Infračervený prehrávač MP3: 6 krokov (s obrázkami)

Video: Infračervený prehrávač MP3: 6 krokov (s obrázkami)

Video: Infračervený prehrávač MP3: 6 krokov (s obrázkami)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Jún
Anonim
Image
Image
Infračervený prehrávač MP3
Infračervený prehrávač MP3

Postavte si infračervený diaľkový ovládač a prehrávač MP3 za približne 10 dolárov (usd). Má obvyklé funkcie: prehrávanie, pozastavenie, prehrávanie nasledujúceho alebo predchádzajúceho, prehrávanie jednej skladby alebo všetkých skladieb. Má tiež variácie ekvalizéra a ovládanie hlasitosti. Všetko je možné ovládať pomocou diaľkového ovládača.

Programovaná funkcia:

Diaľkové tlačidlo: Funkcia

+ 01: Zníženie hlasitosti + 02: Nastaviť na adresár č. 2. + 03: Zvýšenie hlasitosti + 4… 9: Vyberte nasledujúce nastavenia ekvalizéra: ++ (4) DFPLAYER_EQ_POP (5) DFPLAYER_EQ_CLASSIC (6) DFPLAYER_EQ_NORMAL ++ (7) DFPLAYER_EQ_ROCK (8) DFPLAYER_EQ_JAZZ (9) DFPLAYER_: Play + >>: Play next + <<: Play previous + Up: Play next directory songs + Dn: Play previous directory songs + *| Return: Loop single song: on + #| Exit: Loop single song: off

Prvým krokom je otestovanie Arduina a jeho zapojenie na dosku. Nasledujúce kroky sú navrhnuté tak, aby fungovali nezávisle. Každý krok obsahuje pokyny na zapojenie a testovanie. Pri vytváraní projektov zapojím a otestujem každý komponent, aby som potvrdil, že funguje. Pomáha to pri integrácii komponentov, pretože viem, že každá práca a ja sa môžem zamerať na požiadavky integrácie.

Tento návod vyžaduje, aby ste mali nainštalované IDE Arduino. Musíte tiež mať základné znalosti na stiahnutie programu skici Arduino z odkazov v tomto projekte, vytvorenia adresára pre program (názov adresára rovnaký ako názov programu). Ďalším krokom je načítanie, zobrazenie a úprava programu v IDE. Potom nahrajte program pomocou kábla USB na dosku Arduino.

Zásoby

  • Doska mikroovládača Nano V3 ATmega328P CH340G pre Arduino. Ako alternatívu môžete použiť Uno.
  • Infračervený prijímač a diaľkové ovládanie. Použil som súpravy modulov IR bezdrôtového diaľkového ovládania, ktoré boli dodané s infračerveným prijímačom a infračerveným diaľkovým ovládaním.
  • Jeden odpor, 1 000 až 5 000. Používam 5K rezistor, pretože ich mám veľa. Rezistor odstraňuje hluk, ktorý existuje, keď rezistor nepoužívate.
  • Káble a drôty
  • 5 voltový nástenný adaptér

Diely som kúpil na eBay, väčšinou od distribútorov v Hongkongu alebo Číne. Americkí distribútori majú niekedy rovnaké alebo podobné diely za rozumné ceny a rýchlejšie dodanie. Dodanie čínskych dielov trvá 3 až 6 týždňov. Všetci distribútori, ktorých som použil, boli spoľahliví.

Približné náklady: Nano 3 doláre, infračervená súprava 1 dolár, nepájivá doska 2 doláre, balík 40 drôtových káblov 1 dolár, 1 dolár za 5 voltový nástenný adaptér. Celkovo asi 8 dolárov. Všimnite si toho, že som kúpil Nano s kolíkmi na doske už spájkovanými na mieste, pretože moje spájkovacie schopnosti sú slabé.

Krok 1: Pridajte Arduino Nano na Breadboard

Pridajte Arduino Nano na Breadboard
Pridajte Arduino Nano na Breadboard

Zapojte Arduino Nano do Breadboardu. Alebo, ak chcete, môžete na tento projekt použiť Arduino Uno; obaja na tento projekt používajú rovnaké piny. Pripojte Nano (alebo Uno) k počítaču pomocou kábla USB.

Pripojte napájanie a uzemnenie z Arduina k napájaciemu panelu nepájivého poľa. Pripojte kolík Arduino 5+ k pozitívnej lište nepájivého poľa. Pripojte kolík Arduino GRN (uzemnenie) k zápornému (uzemňovaciemu) panelu nepájivého poľa. Toto budú používať ostatné komponenty.

Stiahnite si a spustite základný testovací program Arduino: arduinoTest.ino. Pri spustení programu sa integrované LED svetlo zapne na 1 sekundu a potom na 1 sekundu zhasne. Zverejňujú sa aj správy, ktoré je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ Inicializoval digitálny pin integrovaný LED na výstup. LED nesvieti. ++ Prejsť na slučku. + Počítadlo slučky = 1 + Počítadlo slučky = 2 + Počítadlo slučky = 3…

Pri cvičení zmeňte časové oneskorenie na blikajúcom svetle, nahrajte zmenený program a potvrďte zmenu.

Na vyššie uvedenej fotografii je 140 -dielna spájkovacia prepojovacia krabica na nepájivú dosku, ktorú môžete dostať za 3 až 5 dolárov. Robia dosky úhľadnejšie, ktoré používajú dlhé káble na krátke spojenia.

Krok 2: Pridajte infračervený prijímač a pripojte ho k Arduinu

Pridajte infračervený prijímač a pripojte ho k Arduinu
Pridajte infračervený prijímač a pripojte ho k Arduinu

Zapojte káblové vodiče samec do samec do infračerveného prijímača (dutinky). Pripojte uzemňovací kolík hodinového modulu k uzemňovacej lište nepájivej dosky. Pripojte napájací kolík hodinového modulu k kladnému panelu lišty nepájivého poľa. Pripojte výstupný kolík infračerveného prijímača k kolíku Arduino A1.

Pripojte infračervený prijímač, kolíky zhora zľava doprava:

Vľavo vľavo (vedľa X) - nano kolík A1 stred - 5 V pravý - uzemnený A1 + - - nano kolíkové spojenia | | | -Kolíky infračerveného prijímača --------- | S | | | | --- | | | | | | --- | | | ---------

Do Arduino IDE nainštalujte infračervenú knižnicu. Vyberte položku Nástroje/Spravovať knižnice. Filtrujte svoje vyhľadávanie zadaním „IRremote“. Vyberte položku IRremote od Shirriffa (odkaz, odkaz na knižnicu GitHub). Informácie o knižnici Arduino IRremote odkaz na knižnicu.

Stiahnite si a spustite základný testovací program: infraredReceiverTest.ino. Pri spustení programu namierte diaľkový ovládač na prijímač a stlačte rôzne tlačidlá, napríklad číslo od 0 do 9. Výstupom sú (vytlačené) sériové správy, ktoré je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ Inicializoval sa infračervený prijímač. ++ Prejsť na slučku. + Kláves OK - Prepnúť + Kláves> - nasledujúci + Kláves < - predchádzajúci + Kláves hore + Kláves dole + Kláves 1: + Kláves 2: + Kláves 3: + Kláves 4: + Kláves 6: + Kláves 7: + Kláves 8: + Kláves 9: + Kľúč 0: + Kľúč * (Návrat) + Kľúč # (Ukončiť)

Pri cvičení si vytlačené hodnoty pozrite pomocou diaľkového ovládača televízora. Potom môžete program upraviť tak, aby používal hodnoty v príkaze prepínača funkcie infraredSwitch (). Napríklad stlačte kláves „0“a získajte hodnotu pre svoj diaľkový ovládač, napríklad „0xE0E08877“. Potom pridajte do príkazu switch prípad ako v nasledujúcom útržku kódu.

prípad 0xFF9867:

prípad 0xE0E08877: Serial.print ("+ Kľúč 0:"); Serial.println (""); prestávka;

Krok 3: Vytvorte kartu Mico SD zo súborov MP3

Pretože je DFPlayer malý lacný hardvér, spravuje súbory a priečinky zjednodušene. Pri prehrávaní súborov MP3, ktoré nedodržiavajú nasledujúce odporúčané formáty, mám zmiešané výsledky, a preto odporúčam nasledujúce. Tiež som netestoval ďalšie možnosti, ako napríklad 3 -miestne názvy súborov (príklad: 003.mp3), ale videl som 3 -miestne názvy súborov použité v iných pokynoch a vzorkách.

Nasledujú moje odporúčané formáty názvov súborov a priečinkov:

  • Predvolený názov priečinka je MP3 umiestnený v koreňovom adresári karty SD: SD:/MP3. Tento priečinok je voliteľný pri použití viacerých priečinkov.
  • Prehrávač bude tiež prehrávať súbory MP3 v koreňovom adresári.
  • Pri použití viacerých priečinkov použite názvy priečinkov: 01, 02, 03,…, 99.
  • Názov súboru mp3 by mal mať 4 číslice a príponu „0001.mp3“, napríklad „0001.mp3“.
  • Súbory je možné uložiť do priečinka MP3 alebo do jedného z viacerých priečinkov.
  • Názvy súborov: 0001.mp3 až 0255.mp3. Prehrávač bude prehrávať aj súbory MP3 s inými názvami.
  • Za číslice môžete pridať znaky, napríklad „0001hello.mp3“.

Pred pridaním súborov sa odporúča kartu naformátovať. To zaisťuje, že karta neobsahuje systémové súbory. Formátujte pomocou systému FAT32 MS-DOS.

Na počítačoch Mac použite disk na naformátovanie disku: Aplikácie> Pomôcky> otvorte Disk Utility.

Kliknite na kartu SD, napríklad: APPLE SD Card Reader Media/MUSICSD. Kliknite na položku ponuky Vymazať. Zadajte názov, napríklad: MUSICSD. Vyberte: MS-DOS (Fat). Kliknite na Vymazať.

Disk je vyčistený a naformátovaný.

Napísal som program Java, ktorý skopíruje adresár súborov MP3 do cieľového adresára pomocou názvov adresárov a súborov, ktoré fungujú s modulom DFPlayer. Na spustenie programu budete potrebovať nainštalovaný Java JRE. Nasleduje výstup pomocníka programu.

$ java -jar mp3player.jar

+++ Spustenie, program na kopírovanie modulu DFPlayer. Syntax: java -jar mp3player.jar kópia [(IN: adresár MP3) (OUT: adresár MP3)] ---------------------- Tento program skopíruje adresár súborov MP3 a vytvorte ďalší adresár súborov MP3 pomocou názvov adresárov a súborov, ktoré fungujú s modulom DFPlayer. Pred spustením tohto programu + Vytvorte adresár svojich súborov MP3. + Vytvorte cieľový adresár. + Cieľový adresár je miesto, kam sa budú skopírovať súbory MP3, ++ pomocou adresára s číselnými číslami a názvami súborov. + Váš cieľový adresár by mal byť prázdny. + Ak sú v ňom súbory, odstráňte súbory a adresáre. ---------------------- + Spustite tento program. + Syntax: kópia java -jar mp3player.jar [(IN: adresár MP3) (OUT: adresár MP3)] + Syntax používajúca predvolené hodnoty: kópia java -jar mp3player.jar + Predvolené názvy adresárov: mp3player1 a mp3player2. + Rovnaké ako: java -jar mp3player.jar skopírovať mp3player1 mp3player2. ---------------------- + Vložte kartu SD do počítača. + Odstráňte adresáre a súbory z karty SD. + Vyprázdnite kôš, pretože súbory sú stále na karte SD a modul DFPlayer ich môže prehrať. + Skopírujte nové adresáre a súbory na kartu SD. + Vysuňte kartu z počítača. ---------------------- + Vložte kartu do modulu DFPlayer. + Karta je pripravená na hranie

Kliknutím sem zobrazíte zdrojový kód. Kliknutím sem stiahnete súbor programu JAR, ktorý môžete spustiť.

Pre referenciu

Na počítačoch Mac môžete z príkazového riadku spustiť nasledujúce.

V zozname nájdete kartu.

$ diskutil zoznam

… /Dev /disk3 (interný, fyzický): #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *4,0 GB disk3 1: DOS_FAT_32 MUSICSD 4,0 GB disk3s1 $ ls /Volumes /MUSICSD

Skopírujte súbory v poradí na SD kartu. Pretože prehrávač DFPlayer môže triediť podľa časovej pečiatky, skopírujte súbory v poradí podľa názvu súboru.

Vyčistite skryté súbory, ktoré môžu spôsobovať problémy (odkaz:

$ dot_clean /Volumes /MUSICSD

Vaša karta SD je teraz pripravená na použitie. Vložte ho do svojho modulu DFPlayer.

Krok 4: Pripojte modul DFPlayer, ktorý prehráva súbory MP3

Kábel v module DFPlayer, ktorý prehráva súbory MP3
Kábel v module DFPlayer, ktorý prehráva súbory MP3
Kábel v module DFPlayer, ktorý prehráva súbory MP3
Kábel v module DFPlayer, ktorý prehráva súbory MP3
Kábel v module DFPlayer, ktorý prehráva súbory MP3
Kábel v module DFPlayer, ktorý prehráva súbory MP3

Pripojenia som rozdelil na 3 časti: sériovú komunikáciu, napájanie a reproduktor/zvuk.

1. Pripojte piny Arduino RX/TX k modulu DFPlayer. Pripojte vodič medzi pin 10 Arduino a pin 3 DFPlayer (TX). Pripojte rezistor, používam 5K odpor z DFPlayer pin 2 (RX), do prázdneho radu medzi Arduino a DFPlayer. Pripojte vodič z Nano pinu 11 k 5K rezistoru. Rezistor 5K odstraňuje hluk, ktorý vzniká, keď rezistor nepoužívate.

2. Pripojte uzemňovací kolík (GND) modulu DFPlayer k uzemňovacej lište nepájivej dosky. Pripojte napájací kolík (VCC) modulu DFPlayer k kladnému panelu lišty nepájivého poľa.

3. Ak máte jeden malý reproduktor, pripojte ho k pinom 6 (SPK-) a 8 (SPK+) ako na vyššie uvedenej fotografii s Nano.

Mini kolíky DFPlayer

Do Arduino IDE nainštalujte knižnicu DFPlayer. Vyberte položku Nástroje/Spravovať knižnice. Filtrujte svoje vyhľadávanie zadaním „DFRobotDFPlayerMini“. Vyberte knižnicu miniprehrávača DFRobotDFPlayerMini od DFRobot (odkaz, odkaz na knižnicu). Pre svoju implementáciu som načítal verziu 1.0.5.

Pre informáciu odkaz na knižnicu. A odkaz na stránku wiki stránky DFPlayer.

Načítajte súbory MP3 na kartu micro SD. Skladby môžete mať v samostatných adresároch. Vložte kartu SD do zariadenia DFPlayer.

Stiahnite si a spustite program prehrávača MP3: mp3infrared.ino. Pri spustení programu namierte diaľkový ovládač na prijímač a stlačením tlačidla OK spustíte prehrávanie prvej skladby. Keď sa spustí prehrávanie, modré svetlo DFPlayer sa rozsvieti a zostane svietiť počas prehrávania súboru.

Rozšírená konfigurácia

Postavil som emulátorový počítač Altair 8800, ktorý používa Arduino Mega. Keď som pridal prehrávač DFPlayer, nastal veľký hluk. Aby som sa zbavil hluku, použil som pre DFPlayer samostatný napájací zdroj. Mega má jedno napájanie a odosiela sériové riadiace signály do prehrávača DFPlayer. DFPlayer má ďalšie napájanie a prijíma a implementuje sériové riadiace signály z Mega.

Na vyššie uvedenej fotografii biely mini USB rozbočovač emulátora Altair napája Mega a je pripojený k čiernemu mini rozbočovaču prenosného počítača. DFPlayer má kábel USB, ktorý ho pripája priamo k čiernemu mini hubu prenosného počítača. Táto konfigurácia odstránila šum, ktorý existoval pri napájaní prehrávača DFPlayer prostredníctvom bieleho mini rozbočovača emulátora.

Kliknite sem, pre kód nakonfigurovaný pre Mega. Táto verzia kódu používa piny Mega RX/TX, kde ako Nano alebo Uno používajú piny softvérového sériového portu.

Nasledujúci text slúži ako referencia

Pripojenia používané s Arduino, 1. Sériový UART, RX na príjem riadiacich inštrukcií prehrávača DFPlayer. RX: vstup sa pripája k TX na Mega/Nano/Uno. TX na odosielanie informácií o stave. TX: výstup sa pripája k RX na Mega/Nano/Uno. Pripojenia pre Nano alebo Uno: RX (2) na prepojenie so sériovým softvérovým pinom 11 (TX). TX (3) na pin 10 sériového softvéru (RX). Pripojenia pre Mega: RX (2) na odpor k sériovému 1 kolíku 18 (TX). TX (3) na sériový 1 pin 19 (RX). 2. Možnosti napájania. Pripojte sa z Arduina priamo k prehrávaču DFPlayer: VCC na +5V. Všimnite si to, funguje aj s +3,3 V v prípade NodeMCU. GND k zemi (-). Použite úplne iný zdroj napájania: VCC až +5 V iného zdroja napájania. GND k zemi (-) druhého zdroja energie. Videl som inú možnosť napájania: Z Arduina +5V použite 7805 s kondenzátormi a diódou na pin DFPlayer VCC. GND k zemi (-). 3. Reproduktorový výstup. Pre jeden reproduktor menej ako 3 W: SPK - na kolíku reproduktora. SPK + na kolík druhého reproduktora. Pre výstup do zosilňovača alebo slúchadiel do uší: DAC_R na výstup vpravo (+) DAC_L na výstup vľavo (+) GND na výstup zeme.

Nasleduje volanie funkcií knižnice kľúčov. Odkaz na wiki stránku DFPlayer.

DFRobotDFPlayerMini myDFPlayer;

myDFPlayer.play (1); // Prehrajte prvý mp3 myDFPlayer.pause (); // pozastavenie mp3 myDFPlayer.start (); // spustenie mp3 z pauzy ------------------------------ myDFPlayer.next (); // Prehrať ďalší mp3 myDFPlayer.previous (); // Prehrať predchádzajúci mp3 ------------------------------ myDFPlayer.playMp3Folder (4); // prehrajte konkrétne mp3 na SD: /MP3/0004.mp3; Názov súboru (0 ~ 65535) myDFPlayer.playFolder (15, 4); // prehrajte konkrétne mp3 na SD: /15/004.mp3; Názov priečinka (1 ~ 99); Názov súboru (1 ~ 255) myDFPlayer.playLargeFolder (2, 999); // prehrajte konkrétne mp3 v SD: /02/004.mp3; Názov priečinka (1 ~ 10); Názov súboru (1 ~ 1000) ------------------------------ myDFPlayer.loop (1); // Slučka prvého mp3 myDFPlayer.enableLoop (); // povolenie slučky. myDFPlayer.disableLoop (); // vypnutie slučky. myDFPlayer.loopFolder (5); // slučka všetkých súborov mp3 v priečinku SD:/05. myDFPlayer.enableLoopAll (); // slučka všetkých súborov mp3. myDFPlayer.disableLoopAll (); // zastavenie slučky všetkých súborov mp3. ------------------------------ myDFPlayer.volume (10); // Nastavenie hodnoty hlasitosti. Od 0 do 30 myDFPlayer.volumeUp (); // Zvýšenie hlasitosti myDFPlayer.volumeDown (); // Zníženie hlasitosti ------------------------------ myDFPlayer.setTimeOut (500); // Nastaviť časový limit sériovej komunikácie 500 ms myDFPlayer.reset (); // Reset modulu ------------------------------ Serial.println (myDFPlayer.readState ()); // čítať stav mp3 Serial.println (myDFPlayer.readVolume ()); // čítať aktuálny zväzok Serial.println (myDFPlayer.readEQ ()); // čítať nastavenie EQ Serial.println (myDFPlayer.readFileCounts ()); // prečítajte všetky počty súborov na SD karte Serial.println (myDFPlayer.readCurrentFileNumber ()); // prečítanie aktuálneho čísla súboru prehrávania Serial.println (myDFPlayer.readFileCountsInFolder (3)); // prečítajte počty výplní v priečinku SD:/03 ------------------------------ myDFPlayer.available ()

Krok 5: Externé napájanie

Image
Image
Externý napájací zdroj
Externý napájací zdroj
Externý napájací zdroj
Externý napájací zdroj

Teraz, keď je váš prehrávač MP3 testovaný a funguje, môžete ho odpojiť od počítača a používať ho s nezávislým zdrojom napájania. Pre jednoduchosť používam 5 -voltový nástenný adaptér, ktorý sa dá kúpiť zhruba za dolár, a USB kábel, ďalší dolár. Kábel spája Arduino s nástenným adaptérom +5V. Pretože napájacie a uzemňovacie kolíky Arduino sú prepojené s doskou, napájajú sa tým ostatné komponenty. Pretože je to jednoduché a nízke náklady, používam rovnakú kombináciu na napájanie ďalších projektov.

Fotografia vpravo a video ukazujú, ako je prehrávač pripojený k môjmu zosilňovaču v hodnote 40 dolárov a sedí na pravom reproduktore Bose na mojom stole. Je to môj stolný hudobný systém: MP3 prehrávač Arduino, zosilňovač Douk Audio a 2 reproduktory Bose. Dobrá kvalita zvuku.

Dúfam, že ste úspešní a užili ste si stavbu vlastného hudobného prehrávača MP3.

Krok 6: Odstráňte statický šum

Pri nízkej hlasitosti bol v pozadí dráždivý statický šum. Hluk bol v poriadku, keď bola hlasitosť prehrávača DFPlayer vyššia a hrala hudba. Ale keď bola hudba tichá, bola tam aj statická elektrina.

Našiel som stránku StackExchage, ktorá mala veľa návrhov. Mne fungovalo nasledovné:

  • Pripojte krátky vodič medzi uzemňovacie kolíky DFPlayer: piny 7 až 10.
  • Na napájanie modulu DFPlayer používajte samostatnú USB zásuvku (5 V).
  • Pripojte uzemnenie sieťovej zásuvky k uzemneniu Arduino. To bolo potrebné na to, aby sériové ovládanie fungovalo medzi Arduinom a prehrávačom.

Vyššie uvedené bolo testované na mojom emulátore Altair 8800, ktorý som vylepšil prehrávačom DFPlayer na prehrávanie hudby. Prehrávač sa ovláda preklopením prepínačov na prednom paneli.

Odporúča: