DIY Hub MP3-spelare med NodeMCU, display och knappar
- DIY Hub MP3-spelare med NodeMCU, display och knappar
- Introduktion
- Material och verktyg
- Kretsdiagram
- Installation av nödvändiga bibliotek
- Kodöversikt
- Konfigurering av knappar och komponenter
- Implementering av ljudspelare
- Kontroll av ljuduppspelning
- Uppdatering av OLED-skärm
- Test och felsökning
- Avslutning
DIY Hub MP3-spelare med NodeMCU, display och knappar
Att skapa en hub MP3-spelare med hjälp av NodeMCU, en OLED-display och knappar är en spännande och lärorik projekt. I den här guiden kommer vi att gå genom alla steg som behövs för att bygga din egen musikspelare, där du kan styra uppspelning, volym och se informacij om låtar. Oavsett om du är nybörjare eller en erfaren teknikentusiast, kommer detta projekt att ge dig en bra förståelse för både hårdvara och mjukvara.
Med hjälp av NodeMCU, en billig och kraftfull mikrokontroller, kan du bygga en portabel MP3-spelare som enkelt kan integreras med olika komponenter. Vi kommer att använda DFPlayer Mini för ljuduppspelning, en OLED-display för att visa information och knappar för att styra uppspelningen. Om du har en passion för att skapa egna enheter, så är detta projekt för dig!
Introduktion
I denna sektion kommer vi att ge en översikt över projektet och de komponenter som krävs för att bygga en hub MP3-spelare. Genom att kombinera olika teknologier och verktyg kan vi skapa en unik och anpassad musikupplevelse. Vårt mål är att ge dig en tydlig och steg-för-steg-guide för att du ska kunna slutföra detta projekt utan svårigheter.
Vi kommer att börja med att diskutera de material och verktyg som krävs. Efter det följer ett detaljerat kretsdiagram och en installation av nödvändiga bibliotek. Slutligen kommer vi att ge en kodöversikt och förklara hur varje del fungerar samt hur du kan felsöka problem.
Material och verktyg
För att bygga din egen hub MP3-spelare behöver du följande material:
- NodeMCU (ESP8266)
- DFPlayer Mini MP3-spelare modul
- OLED-display (128x64 eller liknande)
- Tryckknappar (3 st för spela/pausa, nästa spår och volym)
- Motstånd (1kΩ för knapparna)
- Högtalare (8 ohm)
- Jumperkablar
- Breadboard eller PCB
- Strömförsörjning (USB eller batteri)
Krav på verktyg
För att genomföra detta projekt kommer du också behöva följande verktyg:
- Lödpenna och lötvara
- Multimeter
- Brettverktyg (för att montera komponenter)
- Dator för programmering
Kretsdiagram
Nästa steg i ditt projekt är att skapa ett detaljerat kretsdiagram för din hub MP3-spelare. Här är ett enkelt diagram som visar hur de olika komponenterna ska kopplas samman:
+-------------------+ | NodeMCU | | | | GPIO D1 -------->| Knappar | GPIO D2 -------->| | GPIO D3 -------->| | | +-------------------+ | | | +-------------------+ | DFPlayer Mini | +-------------------+ | | |----------> Högtalare | | + ------- + | OLED | + ------- +
Det är viktigt att säkerställa att alla komponenter är korrekt kopplade för att undvika problem under drift. Se till att du även har en korrekt strömförsörjning till NodeMCU.
Installation av nödvändiga bibliotek
Innan du kan börja koda din hub MP3-spelare, behöver du installera flera bibliotek i din Arduino IDE. Dessa bibliotek gör det möjligt för din NodeMCU att kommunicera med DFPlayer Mini och OLED-displayen.
- DFPlayer Mini biblioteket: Detta bibliotek låter dig kontrollera DFPlayer Mini-modulen för ljuduppspelning. Sök efter "DFPlayer Mini" i Arduino IDE:s biblioteksförvaltare och installera det.
- Adafruit SSD1306 biblioteket: Används för att styra OLED-displayen. Återigen, sök upp "Adafruit SSD1306" i biblioteksförvaltaren och installera det.
- Adafruit GFX biblioteket: Detta bibliotek behövs för grafikhantering på OLED-displayen. Installera detta också från biblioteksförvaltaren.
Kodöversikt
Nu när vi har installerat de nödvändiga biblioteken, är det dags att ta en titt på koden. Nedan följer en översikt av den kod som vi kommer att använda för att styra vår hub MP3-spelare.
#include#include #include #include #include Adafruit_SSD1306 display(128, 64, &Wire, -1); DFRobotDFPlayerMini myDFPlayer; void setup() { Serial.begin(9600); display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Initiera DFPlayer Mini här } void loop() { // Läs knappar och uppdatera spelning här }
Denna kod ger oss en grundläggande struktur att arbeta med. Vi kommer att fylla på med mer information och funktioner under olika sektioner nedan.
Konfigurering av knappar och komponenter
Nästa steg är att konfigurera knapparna samt de komponenter vi behöver för att kontrollera vår hub MP3-spelare. Vi kommer att definiera knappar för att spela/pausa, gå till nästa låt och justera volymen.
const int playPauseButtonPin = D1; const int nextTrackButtonPin = D2; const int volumeButtonPin = D3; void setup() { pinMode(playPauseButtonPin, INPUT_PULLUP); pinMode(nextTrackButtonPin, INPUT_PULLUP); pinMode(volumeButtonPin, INPUT_PULLUP); }
I koden ovan har vi definierat tre knappar och konfigurerat dem för att använda interna pull-up-motstånd, vilket förhindrar att våra ingångar flyter.
Implementering av ljudspelare
Nu är det dags att implementera ljuduppspelningsfunktionen med hjälp av DFPlayer Mini. Vi kommer att konstruera metoder för att spela upp ljud, pausa eller gå till nästa låt.
void playMusic() { myDFPlayer.play(1); // Spela första spåret } void pauseMusic() { myDFPlayer.loop(1); // Pausa spåret } void nextTrack() { myDFPlayer.next(); }
Med dessa funktioner kan vi kontrollera vår hub MP3-spelare effektivt. Se till att knapparnas läsning integreras i loop-funktionen för att registrera användarinteraktion.
Kontroll av ljuduppspelning
Vi kommer nu att behöva implementera logik för att styra ljuduppspelning baserat på användarens knaptryckningar. Vi kommer att läsa knapparna i loop-funktionen och kalla lämpliga metoder.
void loop() { if (digitalRead(playPauseButtonPin) == LOW) { pauseMusic(); } if (digitalRead(nextTrackButtonPin) == LOW) { nextTrack(); } }
Genom att läsa knapparna på detta sätt kan vi svara på användarens åtgärder och styra ljuduppspelningen. Se också till att debounca knapparna för att förhindra oönskade klipp.
Uppdatering av OLED-skärm
För att göra användarupplevelsen bättre, kommer vi att uppdatera OLED-skärmen så att användaren kan se aktuell låt och volym. Vi kan implementera en funktion för att hantera skärmutmatning.
void updateOLED() { display.clearDisplay(); display.setCursor(0,0); display.setTextSize(1); display.setTextColor(WHITE); // Skriv ut aktuell låt och volym display.println("Låt: Spår 1"); display.println("Volym: 20"); display.display(); }
Detta ger användaren visuell feedback om vad som spelas just nu. Tänk på att kalla på updateOLED() funktionen efter att du har ändrat volymen eller bytt spår.
Test och felsökning
Det är viktigt att testa varje del av din hub MP3-spelare. Kontrollera att varje komponent fungerar som det ska. Om du stöter på problem, använd en multimeter för att kontrollera anslutningar, eller se till att kabeldragningar är korrekta.
När du kör koden, håll ett öga på seriell monitor i Arduino IDE för felmeddelanden och debug-information. Eventuella problem som uppstår under testningen kan ofta lösas genom noggrann granskning av koden och datablad för de komponenter som används.
Avslutning
Vi har nu slutfört vårt projekt för att bygga en hub MP3-spelare med hjälp av NodeMCU, en OLED-display och knappar. Genom att följa dessa steg har du kunnat implementera en fungerande musikspelare som är både rolig och praktisk att använda. Var inte rädd för att experimentera med koden och anpassa funktionerna för att passa dina behov.
Genom att tillämpa den kunskap du har fått från detta projekt kan du även gå vidare med mer avancerade projekt som inkluderar Bluetooth-uppkoppling, fler ljudformat eller kanske appar som styr musikspelning över nätverk. Tack för att du följde med i denna guide, och vi hoppas att du haft stort nöje av att bygga din egen hub MP3-spelare!
Tack för att du läste vår artikel, du kan se alla artiklar i våra webbkartor eller i Sitemaps
Tyckte du att den här artikeln var användbar? DIY Hub MP3-spelare med NodeMCU, display och knappar Du kan se mer här NanoPi.Tack för att du läser innehållet i Maker Electronics
Leave a Reply
Se mer relaterat innehåll