Sisukord:
- Tarvikud
- Samm: lisage Arduino Nano leivalauale
- Samm: lisage infrapuna vastuvõtja ja ühendage see Arduinoga
- Samm: looge MP3 -failidest Mico SD -kaart
- 4. samm: ühendage MP3 -faile esitav DFPlayeri moodul
- Samm: väline toiteallikas
- Samm: kõrvaldage staatiline müra
Video: Infrapunaga juhitav MP3 -mängija: 6 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Ehitage infrapuna kaugjuhtimispuldi MP3 -mängija umbes 10 dollari eest. Sellel on tavalised funktsioonid: esitamine, paus, järgmise või eelmise esitamine, ühe või kõigi lugude esitamine. Sellel on ka ekvalaiseri variatsioonid ja helitugevuse reguleerimine. Kõik on juhitav kaugjuhtimispuldi kaudu.
Programmeeritud funktsionaalsus:
Kaugvõti: funktsioon
+ 01: helitugevuse vähendamine + 02: määrake kataloog nr 2. + 03: helitugevuse suurendamine + 4… 9: valige järgmised ekvalaiseri seaded: ++ (4) DFPLAYER_EQ_POP (5) DFPLAYER_EQ_CLASSIC (6) DFPLAYER_EQ_NORMAL ++ (7) DFPLAYER_EQ_ROCK (8) DFPLAYER_EQ_JAZZ (9) Paus +: Esita + >>: Esita järgmine + <<: Esita eelmine + Üles: Esita järgmised kataloogilaulud + Dn: Esita eelmised kataloogilaulud + *| Tagasi: Loop single song: on + #| Exit: Loop single song: off
Esimene samm on Arduino testimine ja selle ühendamine leivaplaadiga. Järgmised sammud on loodud töötama iseseisvalt. Igal sammul on juhtmestiku juhised ja testimisjuhised. Projektide koostamisel ühendan ja katsetan iga komponenti, et veenduda nende toimimises. See aitab komponente integreerida, sest tean, et iga töö ja mina saame keskenduda integratsiooninõuetele.
See juhis nõuab, et teil oleks Arduino IDE installitud. Samuti peate omama põhioskusi Arduino eskiisprogrammi allalaadimiseks selle projekti linkidelt, looge programmile kataloog (kataloogi nimi sama mis programmi nimi). Järgmised sammud on programmi laadimine, vaatamine ja muutmine IDE -s. Seejärel laadige programm USB -kaabli kaudu üles Arduino plaadile.
Tarvikud
- Nano V3 ATmega328P CH340G mikrokontrollerplaat Arduino jaoks. Alternatiivina võite kasutada Uno.
- Infrapuna vastuvõtja ja kaugjuhtimispult. Kasutasin infrapuna -vastuvõtja ja infrapuna -kaugjuhtimispuldiga kaasasolevat IR -kaugjuhtimispuldi moodulikomplekti.
- Üks takistus, 1K kuni 5K. Ma kasutan 5K takisti, sest mul on neid hunnik. Takisti eemaldab müra, mis tekib siis, kui seda ei kasutata.
- Leivalaud Traatkaablid
- 5 -voldine seinaadapter
Ostsin osad eBayst, enamasti Hongkongi või Hiina edasimüüjatelt. USA turustajatel on mõnikord samad või sarnased osad mõistlike hindade ja kiirema kohaletoimetamise jaoks. Hiina osade tarnimiseks kulub 3 kuni 6 nädalat. Kõik turustajad, mida olen kasutanud, on olnud usaldusväärsed.
Ligikaudsed kulud: Nano 3 dollarit, infrapunakomplekt 1 dollar, leivalaud 2 dollarit, 40 traatkaabli pakett 1 dollar, 1 dollar 5 -voldise seinaadapteri eest. Kokku, umbes 8 dollarit. Pange tähele, et ostsin Nano leivaplaadi tihvtidega, mis olid juba joodetud, kuna mul on jootmisoskus kehv.
Samm: lisage Arduino Nano leivalauale
Ühendage Arduino Nano leivalauaga. Või kui soovite, võite selle projekti jaoks kasutada Arduino Unot; mõlemad kasutavad selle projekti jaoks samu tihvte. Ühendage Nano (või Uno) arvutiga USB -kaabli abil.
Ühendage Arduino toide ja maandus leivaplaadi toiteribaga. Ühendage Arduino 5+ tihvt leivaplaadi positiivse ribaga. Ühendage Arduino GRN (maandatud) tihvt leivaplaadi negatiivse (maandatud) ribaga. Seda kasutavad teised komponendid.
Laadige alla ja käivitage Arduino põhiprogramm: arduinoTest.ino. Programmi käivitamisel süttib sisseehitatud LED -tuli 1 sekundiks, seejärel kustub 1 sekundiks. Samuti postitatakse sõnumeid, mida saab vaadata Arduino IDE tööriistades/jadamonitoris.
+++ Seadistamine.
+ Initsialiseeris väljundi jaoks LED -digitaalse tihvti. LED ei põle. ++ Mine silmusesse. + Silmusloendur = 1 + Silmusloendur = 2 + Silmusloendur = 3…
Harjutusena muutke vilkuva tule ajalist viivitust, laadige muudetud programm üles ja kinnitage muudatus.
Ülaltoodud fotol on 140 -osaline jootmiseta leivaplaadi hüppaja traadikomplekt, mille saate 3-5 dollari eest. Nad teevad lauad korralikumaks, kasutades lühikesi ühendusi pikkade kaablitega.
Samm: lisage infrapuna vastuvõtja ja ühendage see Arduinoga
Ühendage emane kaablijuhtmetega infrapuna vastuvõtjasse (naissoost otsad). Ühendage kellamooduli maandusnõel leivaplaadi maandusribaga. Ühendage kellamooduli toitenupp leivaplaadi positiivse riba külge. Ühendage infrapuna vastuvõtja väljundpistik Arduino A1 tihvtiga.
Ühendage infrapuna vastuvõtja, tihvtid ülevalt vasakult paremale:
Vasak enamus (X kõrval) - Nanopulk A1 Keskus - 5V Parempoolne A1 + - - Nanopistiku ühendused | | | -infrapuna vastuvõtja tihvtid --------- | S | | | | --- | | | | | | --- | | | ---------
Installige Arduino IDE -sse infrapunakogu. Valige Tools/Manage Libraries. Filtreerige oma otsing, sisestades "IRremote". Valige IRremote by Shirriff (viitamiseks kogu GitHub link). Arduino raamatukogu teave IRremote raamatukogu link.
Laadige alla ja käivitage põhitesti programm: infraredReceiverTest.ino. Programmi käivitamisel suunake kaugjuhtimispult vastuvõtja poole ja vajutage erinevaid nuppe, näiteks numbrit 0 kuni 9. Väljuvad (trükitakse) jadateated, mida saab vaadata Arduino IDE tööriistade/jadamonitori kaudu.
+++ Seadistamine.
+ Initsialiseeris infrapuna vastuvõtja. ++ Mine silmusesse. + Klahv OK - ümberlülitamine + klahv> - järgmine + klahv < - eelmine + klahv üles + klahv alla + klahv 1: + võti 2: + klahv 3: + võti 4: + võti 6: + võti 7: + võti 8: + Klahv 9: + klahv 0: + klahv * (tagasipöördumine) + klahv # (välju)
Harjutusena kasutage prinditud väärtuste vaatamiseks teleri kaugjuhtimispulti. Seejärel saate programmi muuta, et kasutada funktsiooni infraredSwitch () lüliti avalduses olevaid väärtusi. Näiteks vajutage klahvi "0" ja saate kaugjuhtimispuldi väärtuse, näiteks "0xE0E08877". Seejärel lisage lüliti avaldusele väiketäht nagu järgmisel koodilõigul.
juhtum 0xFF9867:
juhtum 0xE0E08877: Serial.print ("+ võti 0:"); Serial.println (""); murda;
Samm: looge MP3 -failidest Mico SD -kaart
Kuna DFPlayer on väike odav riistvara, haldab see faile ja kaustu lihtsustatud viisil. Mul on olnud erinevaid tulemusi MP3 -failide esitamisel, mis ei järgi järgmisi soovitatud vorminguid, ja seetõttu soovitan järgmist. Samuti pole ma katsetanud muid võimalusi, näiteks 3 -kohalisi failinimesid (näide: 003.mp3), kuid olen näinud 3 -kohalisi failinimesid, mida kasutatakse teistes juhistes ja näidistes.
Allpool on minu soovitatud failinime ja kausta katalooginime vormingud:
- Vaikekausta nimi on MP3, mis asub SD -kaardi juurkataloogi all: SD:/MP3. See kaust on mitme kausta kasutamisel valikuline.
- Mängija esitab ka juurkataloogi MP3 -faile.
- Mitme kausta kasutamisel kasutage kaustade nimesid: 01, 02, 03,…, 99.
- MP3 -faili nimi peaks olema 4 -kohaline ja laiendina "0001.mp3", näiteks "0001.mp3".
- Faile saab paigutada MP3 -kausta või ühte mitmest kaustast.
- Failide nimed: 0001.mp3 kuni 0255.mp3. Pange tähele, et mängija esitab ka teiste nimedega MP3 -faile.
- Numbrite järele saate lisada märke, näiteks "0001hello.mp3".
Enne failide lisamist on soovitatav kaart vormindada. See tagab, et kaart on süsteemifailidest puhas. Vormindage, kasutades FAT32 MS-DOS-i.
Macis kasutage ketta utiliiti ketta vormindamiseks: Rakendused> Utiliidid> avage Disk Utility.
Klõpsake SD-kaardil, näiteks: APPLE SD Card Reader Media/MUSICSD. Klõpsake menüükäsku Erase. Määrake nimi, näide: MUSICSD. Valige: MS-DOS (Fat). Klõpsake Erase.
Ketas puhastatakse ja vormindatakse.
Kirjutasin Java programmi, mis kopeerib MP3 -failide kataloogi sihtkataloogi, kasutades kataloogi- ja failinimesid, mis töötavad koos DFPlayeri mooduliga. Programmi käivitamiseks peate installima Java JRE. Järgnevalt on toodud programmi abiväljund.
$ java -jar mp3player.jar
+++ Start, DFPlayeri mooduli kopeerimisprogramm. Süntaks: java -jar mp3player.jar copy [(IN: MP3 kataloog) (OUT: MP3 kataloog)] ---------------------- See programm kopeerib kataloogi MP3 -failidest teise kataloogi loomiseks, kasutades DFPlayeri mooduliga töötavaid kataloogide ja failide nimesid. Enne selle programmi käivitamist + looge oma MP3 -failide kataloog. + Looge sihtkataloog. + Sihtkataloog on koht, kuhu MP3 -failid kopeeritakse, ++, kasutades numbrikataloogi ja failinimesid. + Teie sihtkataloog peaks olema tühi. + Kui selles on faile, kustutage failid ja kataloogid. ---------------------- + Käivitage see programm. + Süntaks: java -jar mp3player.jar koopia [(IN: MP3 kataloog) (OUT: MP3 kataloog)] + Süntaks vaikeseadete abil: java -jar mp3player.jar copy + Vaikimisi katalooginimed: mp3player1 ja mp3player2. + Sama mis: java -jar mp3player.jar koopia mp3player1 mp3player2. ---------------------- + Sisestage SD-kaart arvutisse. + Kustutage kataloogid ja failid SD -kaardilt. + Tühjendage prügikast, kuna failid on endiselt SD -kaardil ja DFPlayeri moodul võib neid esitada. + Kopeerige uued kataloogid ja failid SD -kaardile. + Eemaldage kaart arvutist. ---------------------- + Sisestage kaart DFPlayeri moodulisse. + Kaart on mängimiseks valmis
Lähtekoodi vaatamiseks klõpsake siin. Käivitatava JAR -programmi faili allalaadimiseks klõpsake siin.
Viide
Macis saate käsurealt käivitada järgmist.
Nimekiri kaardi leidmiseks.
$ diskutili loend
… /Dev /disk3 (sisemine, füüsiline): #: TÜÜBI NIMI SUURUSE IDENTIFIKAATOR 0: FDisk_partition_scheme *4,0 GB ketas 1: DOS_FAT_32 MUSICSD 4,0 GB ketas3s1 $ ls /Köited /MUSICSD
Kopeerige failid järjekorras SD -kaardile. Kuna DFPlayer võib ajatemplil sorteerida, kopeerige failid failinimede järjekorras.
Puhastage peidetud faile, mis võivad probleeme põhjustada (viide:
$ dot_clean /Köited /MUSICSD
Teie SD -kaart on nüüd kasutamiseks valmis. Sisestage see oma DFPlayeri moodulisse.
4. samm: ühendage MP3 -faile esitav DFPlayeri moodul
Olen eraldanud ühendused kolmeks osaks: jadaside, toide ja kõlar/heli.
1. Ühendage Arduino RX/TX tihvtid DFPlayer mooduliga. Ühendage juhe Arduino tihvti 10 ja DFPlayer tihvti 3 (TX) vahele. Ühendage takisti, ma kasutan DFPlayeri tihvti 2 (RX) 5K takisti Arduino ja DFPlayeri vahel olevale tühjale reale. Ühendage nano -tihvti 11 juhe 5K takistiga. 5K takisti eemaldab müra, mis tekib siis, kui seda ei kasutata.
2. Ühendage DFPlayer mooduli maandustihvt (GND) leivaplaadi maandusriba külge. Ühendage DFPlayer mooduli toitenupp (VCC) leivaplaadi positiivse riba külge.
3. Kui teil on üks väike kõlar, ühendage see nanoga 6 (SPK-) ja 8 (SPK+), nagu ülaltoodud fotol.
DFPlayer Mini tihvtid
Installige Arduino IDE -s teek DFPlayer. Valige Tools/Manage Libraries. Filtreerige oma otsing, sisestades 'DFRobotDFPlayerMini'. Valige DFRobotDFPlayerMini by DFRobot mini player library (viide: teegi link). Oma rakendamiseks laadisin versiooni 1.0.5.
Viitamiseks raamatukogu link. Ja DFPlayeri wiki lehe link.
Laadige MP3 -failid mikro -SD -kaardile. Teil võib olla lugusid eraldi kataloogides. Sisestage SD -kaart DFPlayerisse.
Laadige alla ja käivitage MP3 -mängija programm: mp3infrared.ino. Programmi käivitamisel suunake kaugjuhtimispult vastuvõtja poole ja vajutage esimese loo esitamise alustamiseks nuppu OK. Esitamist alustades süttib DFPlayeri sinine tuli ja jääb faili esitamise ajal põlema.
Täpsem konfiguratsioon
Olen ehitanud Altair 8800 emulaatorarvuti, mis kasutab Arduino Mega. Kui lisasin DFPlayeri, oli palju müra. Mürast vabanemiseks kasutasin DFPlayeri jaoks eraldi toiteallikat. Megal on üks toiteallikas ja see saadab DFPlayerile jadajuhtimissignaale. DFPlayeril on teine toiteallikas ning see võtab vastu ja rakendab Mega jadajuhtsignaale.
Ülaltoodud fotol toidab Altairi emulaatori valge mini -USB -jaotur Megat ja on ühendatud sülearvuti musta minikeskusega. DFPlayeril on USB -kaabel, mis ühendab selle otse sülearvuti musta minikeskusega. See konfiguratsioon eemaldas müra, mis tekkis siis, kui DFPlayer sai toite emulaatori valge minikeskuse kaudu.
Mega jaoks konfigureeritud koodi vaatamiseks klõpsake siin. See koodi versioon, kasutades Mega RX/TX kontakte, kus Nano või Uno kasutab tarkvara jadaporti.
Järgnev on viitamiseks
Arduinoga kasutatavad ühendused, 1. UART jada, RX DFPlayeri juhtimisjuhiste vastuvõtmiseks. RX: sisend ühendub Mega/Nano/Uno TX -ga. TX riigiteabe saatmiseks. TX: väljund ühendub Mega/Nano/Uno RX -iga. Ühendused Nano või Uno jaoks: RX (2), et takistada jadatarkvara tihvti 11 (TX). TX (3) jadatarkvara pin 10 (RX). Ühendused Mega jaoks: RX (2), et vastu seista Serial1 kontaktile 18 (TX). TX (3) kuni Serial1 pin 19 (RX). 2. Toitevalikud. Ühendage Arduino otse DFPlayeriga: VCC to +5V. Pange tähele, töötab ka NodeMCU puhul +3.3V. GND maapinnale (-). Kasutage täiesti erinevat toiteallikat: teise toiteallika VCC kuni +5V. GND teise toiteallika maandusele (-). Nägin veel ühte toitevõimalust: Arduino +5V -st kasutage kondensaatorite ja dioodiga 7805 kuni DFPlayeri VCC -tihvtiga. GND maapinnale (-). 3. Kõlari väljund. Ühe kõlari puhul vähem kui 3 W: SPK - kõlari tihvti külge. SPK + teise kõlari tihvti külge. Stearo võimendisse või kõrvaklappidesse väljastamiseks: DAC_R paremale väljundiks (+) DAC_L vasakule väljundiks (+) GND väljundmaandusele.
Pärast raamatukogu võtmefunktsiooni kõnesid. Link DFPlayeri wiki lehele.
DFRobotDFPlayerMini myDFPlayer;
myDFPlayer.play (1); // Esita esimene mp3 myDFPlayer.pause (); // pausi mp3 myDFPlayer.start (); // käivita mp3 pausist ------------------------------ myDFPlayer.next (); // Esita järgmine mp3 myDFPlayer.previous (); // Esita eelmine mp3 ------------------------------ myDFPlayer.playMp3Folder (4); // esita konkreetne mp3 SD -s: /MP3/0004.mp3; Faili nimi (0 ~ 65535) myDFPlayer.playFolder (15, 4); // esita konkreetne mp3 SD -s: /15/004.mp3; Kausta nimi (1 ~ 99); Faili nimi (1 ~ 255) myDFPlayer.playLargeFolder (2, 999); // mängida konkreetset mp3 -d SD -s: /02/004.mp3; Kausta nimi (1 ~ 10); Faili nimi (1 ~ 1000) ------------------------------ myDFPlayer.loop (1); // Tsükli esimene mp3 myDFPlayer.enableLoop (); // lingi lubamine. myDFPlayer.disableLoop (); // lülita tsükkel välja. myDFPlayer.loopFolder (5); // silmus kõik mp3 -failid kaustas SD:/05. myDFPlayer.enableLoopAll (); // silmus kõik mp3 failid. myDFPlayer.disableLoopAll (); // stop loop kõik mp3 -failid. ------------------------------ myDFPlayer.maht (10); // Määrake helitugevuse väärtus. 0 kuni 30 myDFPlayer.volumeUp (); // Helitugevuse suurendamine myDFPlayer.volumeDown (); // Helitugevuse vähendamine ------------------------------ myDFPlayer.setTimeOut (500); // Määra jadakommunikatsiooni ajalõpp 500 ms myDFPlayer.reset (); // Lähtesta moodul ------------------------------ Serial.println (myDFPlayer.readState ()); // loe mp3 olekut Serial.println (myDFPlayer.readVolume ()); // loe praegust köidet Serial.println (myDFPlayer.readEQ ()); // loe EQ seadistust Serial.println (myDFPlayer.readFileCounts ()); // loe kõiki failide arvu SD -kaardil Serial.println (myDFPlayer.readCurrentFileNumber ()); // loe praeguse esitusfaili numbrit Serial.println (myDFPlayer.readFileCountsInFolder (3)); // täitearvude lugemine kaustas SD:/03 ------------------------------ myDFPlayer.available ()
Samm: väline toiteallikas
Nüüd, kui teie MP3 -mängija on testitud ja töötab, saate selle arvutist lahti ühendada ja kasutada koos sõltumatu toiteallikaga. Lihtsuse huvides kasutan 5 -voldist seinaadapterit, mille saab osta umbes dollari eest, ja USB -kaablit, teist dollarit. Kaabel ühendab Arduino +5V seinaadapteriga. Kuna Arduino toite- ja maandusnõelad on ühendatud leivaplaadiga, toidab see ka teisi komponente. Selle lihtsuse ja madalate kulude tõttu kasutan sama kombinatsiooni teiste projektide toiteks.
Parempoolsel fotol ja videol on näha, kuidas minu 40 -dollarise võimendiga ühendatud mängija istub minu laua paremal Bose kõlaril. See on minu töölaua muusikasüsteem: Arduino MP3 -mängija, Douk Audio võimendi ja 2 Bose kõlarit. Hea helikvaliteet.
Loodan, et olete edukas ja nautisite oma MP3 -pleieri ehitamist.
Samm: kõrvaldage staatiline müra
Väikese helitugevuse korral oli taustal ärritav staatiline müra. Müra oli korras, kui DFPlayeri helitugevus oli suurem ja muusika mängis. Aga kui muusika oli vaikne, oli staatika olemas.
Leidsin StackExchage lehe, kus oli palju soovitusi. Minu jaoks toimis järgmine:
- Ühendage DFPlayeri maanduspistikute vahele lühike juhe: tihvtid 7 kuni 10.
- Kasutage DFPlayer mooduli toiteks eraldi USB -pistikut (5 V).
- Ühendage pistiku maandus Arduino maandusega. See oli vajalik, et Arduino ja mängija vahel oleks jadakontroll.
Ülaltoodut testiti minu Altair 8800 emulaatoril, mida täiustasin muusika esitamiseks DFPlayeriga. Mängijat juhitakse esipaneeli lülitite pööramisega.
Soovitan:
DIY Arduino Bluetooth -juhitav auto: 6 sammu (piltidega)
DIY Arduino Bluetooth -juhitav auto: Tere sõbrad! Minu nimi on Nikolas, olen 15 -aastane ja elan Kreekas Ateenas. Täna näitan teile, kuidas teha kaherattalist Bluetooth-juhitavat autot, kasutades Arduino Nano, 3D-printerit ja mõningaid lihtsaid elektroonilisi komponente! Vaadake kindlasti minu
Veebisaidi juhitav jõulupuu (igaüks saab seda juhtida): 19 sammu (piltidega)
Veebisaidi juhitav jõulupuu (igaüks saab seda kontrollida): Kas soovite teada, kuidas veebisaidi juhitav jõulupuu välja näeb? Siin on video, mis näitab minu jõulupuu projekti. Otseülekanne on praeguseks lõppenud, kuid tegin toimuva jäädvustamiseks video: Sel aastal detsembri keskel
Klaasist kivist LED -toru (WiFi kaudu juhitav nutitelefonirakenduse kaudu): 6 sammu (koos piltidega)
Klaasist kivist LED-toru (WiFi kaudu juhitav nutitelefonirakenduse kaudu): Tere kaastegijad! Selles juhendatavas näitan teile, kuidas ehitada WiFi-juhitav LED-toru, mis on klaasikividega täidetud, et saada kena difusiooniefekt. Valgusdioodid on individuaalselt adresseeritavad ja seetõttu on mõned head efektid võimalikud
WiFi juhitav LED -riba maatriksi kuvari tuli: 3 sammu (piltidega)
WiFi juhitav LED -riba maatriksi kuvari tuli: programmeeritavad LED -ribad, nt. põhinevad WS2812, on põnevad. Rakendusi on palju ja saate kiiresti muljetavaldavaid tulemusi. Ja kuidagi tundub, et kellade ehitamine on teine valdkond, millele ma palju mõtlen. Alustades mõnest kogemusest
Compaq EVO T20 õhuke klient MP3 -mängijana (võrguga juhitav): 9 sammu
Compaq EVO T20 õhuke klient MP3 -mängijana (võrguga juhitav): tööl vajame ootealal taustamuusikat ja mõne aja pärast muutuvad CD -mängija 5CD -d veidi etteaimatavaks ja üks kohalik raadiojaam, mida saame vastu võtta, on lihtsalt tüütu. Mida ma siis madala spetsifikatsiooniga lõin (madalaim NTe Evo T20 Th