Innholdsfortegnelse:

Arduino MP3 -spiller i retrostil !: 8 trinn (med bilder)
Arduino MP3 -spiller i retrostil !: 8 trinn (med bilder)

Video: Arduino MP3 -spiller i retrostil !: 8 trinn (med bilder)

Video: Arduino MP3 -spiller i retrostil !: 8 trinn (med bilder)
Video: Синтезатор для лампового трансивера Ретро 21 2024, Juli
Anonim
Image
Image

Mp3 -spiller kan høres ganske utdatert ut. Smarttelefoner kan gjøre mye bedre enn dette! Med alle disse appene og strømmetjenestene trenger du ikke engang laste ned musikk eller sang.

Men da jeg møtte DFplayer -modulen, gledet det meg veldig med en rekke funksjoner. Fra volumkontroll, en 3W forsterker, equalizer, mulighet til å spille av annonser mellom mp3 -filene og mye mer. Jeg ønsket å utforske alle disse funksjonene og sette dem godt i bruk i en enkelt enhet. Så denne MP3 -spilleren var et perfekt valg.

Sluttproduktet var ganske interessant å bruke med følgende funksjoner:

  • EQ -justering
  • Volumkontroll
  • Sett på pause/spill av MP3 -filer
  • Neste/forrige
  • 2 skjermnavigasjon
  • oppladbart batteri

Rekvisita

Her er listen over deler jeg brukte i dette prosjektet (tilknyttede lenker):

  • Arduino pro mini
  • DFPlayer
  • 1,3 tommer OLED
  • Trykke knapper
  • Lydkontakt
  • TP4056
  • Lipo batteri
  • Skyvebryter
  • PCB

Trinn 1: Konfigurere OLED -skjermen

Konfigurere DFPlayer
Konfigurere DFPlayer

1,3-tommers OLED og 0,96-tommers OLED kan se like ut, men de deler ikke den samme skjermdriveren. Så hvis du prøver å bruke et bibliotek som Adafruit SSD1306, fungerer ikke skjermen fordi 1,3-tommers OLED-skjermen har Sh1106 skjermdriver.

Så vi skal bruke U8g2 -biblioteket. Du kan laste ned dette biblioteket for din Arduino IDE med denne lenken eller gå til biblioteksjefen og installere den nyeste versjonen av U8g2.

Dette biblioteket har mye fleksibilitet sammenlignet med andre biblioteker, for eksempel kan du kjøre den samme koden for en rekke skjermer med svært minimal kodeendring og gir deg viktigere et bredt spekter av fonter og åpne ikoner som du kan bruke i prosjektet ditt.

1,3-tommers skjerm har 4 pinner VCC, GND, SDA og SCL. Siden displayet støtter en I2C -kommunikasjon, kobler du VCC og GND til +5V og GND på Arduino pro mini og kobler SDA og SCL til A4 og A5 på Arduino pro mini.

Du kan teste skjermen enten ved å kjøre demoskissen som følger med u8g2 -biblioteket, eller du kan kompilere og kjøre skissen min i Soundpod.rar -filen eller bruke Github -lenken.

Trinn 2: Konfigurere DFPlayer

DFplayer er en liten og billig MP3 -modul med en forenklet utgang som kan kobles direkte til en høyttaler uten forsterker.

Funksjoner

  • 24 -biters DAC
  • Støtter FAT16, FAT32 filsystem
  • Støtte for opptil 32 GB SD -kort
  • Innebygd 3 Watt forsterker
  • støtter 100 mapper, hver mappe kan støtte opptil 1000 sanger
  • 5 nivåer med EQ -justering og 30 nivåer for volumjustering

Krets

Denne modulen kan brukes frittstående med et vedlagt batteri, høyttaler og trykknapper eller kan brukes med en Arduino eller en annen mikrokontroller. Den bruker UART/seriell kommunikasjon for å sende og motta kommandoer til mikrokontrollere. Så vi kan bruke Arduinos serielle lese/skrive -funksjon for å kontrollere denne modulen.

Koble 4 trykknapper til pinne 2, 3, 4 på Arduino for å kontrollere volumet/start/stopp, og koble deretter pin Rx og Tx pin på DFplayer til Arduino pin 10 og 11. Til slutt kobler du høyttaleren til spk+, spk- av DFplayer, og koble +5v forsyning til VCC og GND til GND til DFplayer.

Du kan teste modulen med koden som er i mappen 'DFPlayer'. Denne instruksen vil hjelpe deg lettere å komme i gang med Arduino og DFPlayer.

Trinn 3: Klargjøring av komponentene

Klargjøring av komponentene
Klargjøring av komponentene
Klargjøring av komponentene
Klargjøring av komponentene
Klargjøring av komponentene
Klargjøring av komponentene
Klargjøring av komponentene
Klargjøring av komponentene

Du ville ha sett det endelige bygget ser rotete ut, og du tror kanskje det ville vært mye bedre å skrive ut en PCB. Jeg er helt enig! Men dette er relativt morsommere, og personlig er de ganske kule å se på også. Uansett vil jeg slippe en lenke der du kan bruke den eksisterende kretsen og bygge en PCB.

Siden det er for mange komponenter å bruke, vil en tosidig PCB passe perfekt. Klipp deretter tosidig PCB på en slik måte at den horisontalt har 14 hull og vertikalt 21. Plasser deretter trykknappene som vil hjelpe oss med navigering, pause og avspilling av sangen. Når du plasserer andre komponenter, må du være veldig forsiktig med hvor du plasserer dem og hvor mange pinner hver komponent har. Etter min erfaring med å bygge dette to ganger, behold bare pinnene som brukes og kutt resten av dem. Det ville løse flere problemer nedover veien. Du kan referere til dette kretsdiagrammet og kutte de unødvendige pinnene.

Trinn 4: Plassering av komponentene

Plassering av komponentene
Plassering av komponentene
Plassering av komponentene
Plassering av komponentene
Plassering av komponentene
Plassering av komponentene

Plasser de digitale pinnene på Arduino nær knappene og de analoge pinnene som peker mot toppen av brettet, så det ville være enkelt å koble til OLED -skjermen. Gjør deretter den samme prosessen for DFplayer, plasser modulen på en slik måte at SD -kortsporet peker innover, og fjern også den svarte separatoren fra toppnålene, slik at DFplayer får en passende passform i brettet sammen med Arduino.

Jeg ønsket å kjøre DFplayer med full kapasitet, så jeg la til en liten boost -omformer for å konvertere 3,7 volt fra litiumbatteriet til 5V. Men til slutt kunne denne modulen ikke gi nok strøm til å kjøre DFPlayer. Og jeg følte at det gikk mye bedre med 3,7-voltsbatteriet alene. Så til slutt kastet jeg boost-omformeren (den grønne PCB-modulen ved siden av Arduino pro mini).

Til slutt, for å fullføre det på baksiden av kretskortet, installer glidebryteren og 3,5 mm lydkontakten.

Trinn 5: Lodding alt sammen

Lodde alt sammen
Lodde alt sammen
Lodde alt sammen
Lodde alt sammen
Lodde alt sammen
Lodde alt sammen
Lodde alt sammen
Lodde alt sammen

Følg kretsdiagrammet og lodd komponentene nær hverandre, hvor du enkelt kan slå sammen to tilkoblinger, og prøv å unngå å bruke ledninger. I stedet bruker du en enkelt tråd for å lage tilkoblingene, og pass på at du ikke berører noen av komponentene på undersiden også. Og jeg plasserte 2 enkeltstrengede ledninger som stikker ut av brettet, dette vil senere bli brukt til å lodde TP4056.

Trinn 6: Mer lodding

Mer lodding!
Mer lodding!
Mer lodding!
Mer lodding!
Mer lodding!
Mer lodding!

Plasser TP4056-modulen, som vi skal bruke til å lade MP3-spilleren vår med mikro-USB. Jeg brukte dobbeltsidig tape for å plassere litiumpolymerbatteriet ved siden av lademodulen. Dette er en 300Mah modul som passer perfekt i kretskortet. Hvis du bygger en større, kan du enkelt utvide batteriet uten å endre den nåværende kretsen.

Til slutt lodder du OLED -skjermen for å fullføre den. Hvis du kunne følge kretsdiagrammet og plassere komponentene i samme rekkefølge, blir det mye lettere å jobbe med.

Trinn 7: Last opp koden og siste finpuss

Laster opp koden og berører
Laster opp koden og berører
Laster opp koden og berører
Laster opp koden og berører
Last opp koden og siste finpuss
Last opp koden og siste finpuss

Så ga jeg en siste touch, ved å gi det et glatt, avrundet hjørne, og jeg boret et hull i det øverste hjørnet, slik at jeg kan bruke dette som en nøkkelring!

Nå kan vi se nærmere på programmeringsdelen!

Instruksjoner for installasjon av de nødvendige bibliotekene og hvordan du bruker dem, er gitt i Readme -filen på mitt git -depot for dette prosjektet. Bare følg instruksjonene og bruk en FDTI -modul til å programmere som er i soundpod.rar -filen til Arduino pro mini. Vi bruker en FDTI -modul fordi Arduino pro mini ikke støtter USB for å programmere den.

Til slutt fjernet jeg lysene fra Arduino pro mini og DFplayer for å spare litt batteri og distraksjon det forårsaket mens jeg spilte sangen.

Trinn 8: Ferdig prosjekt

Ferdig prosjekt!
Ferdig prosjekt!
Ferdig prosjekt!
Ferdig prosjekt!

Hvis du slår på kretsen etter at du har lastet opp koden, kan du se Arduino starte opp og OLED -skjermen fungerer. Før du hopper inn og ser alle funksjonene i denne MP3 -modulen, må du kopiere noen musikkfiler til SD. For dette må du følge en bestemt navnekonvensjon, der mappene dine skal hete 01, 02,..etc og filene i hver mappe skal hete 001, 002, 003..etc.

Så for å gjøre alt enkelt har jeg et python -skript i GitHub -repoen sammen med koden for dette prosjektet. Bare kjør skriptet i ledeteksten, og du bør få et GUI -grensesnitt der du kan overføre filer til ditt SD -kort uten problemer for DFPlayer.

Her kan du opprette så mange mapper du vil, og du kan legge til så mange filer som du trenger i fillisten. Du kan også fjerne uønskede mapper og filer (Programmet er designet for å ligne programvare fra det siste tiåret, slik at det samsvarer med mp3 -bygget vårt). Sett inn SD -kortet og slå på lydpoden (det er navnet jeg ga for min MP3 -spiller XD).

Du kan se hvordan denne lydpoden fungerer i videoen som er lagt ut ovenfor!

Anbefalt: