🍪 Privacy & Transparency

We and our partners use cookies to Store and/or access information on a device. We and our partners use data for Personalised ads and content, ad and content measurement, audience insights and product development. An example of data being processed may be a unique identifier stored in a cookie. Some of our partners may process your data as a part of their legitimate business interest without asking for consent. To view the purposes they believe they have legitimate interest for, or to object to this data processing use the vendor list link below. The consent submitted will only be used for data processing originating from this website. If you would like to change your settings or withdraw consent at any time, the link to do so is in our privacy policy accessible from our home page..

Vendor List | Privacy Policy
Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry PI

Menu
  • Projekte
    • LED’s
    • Servo & Schrittmotoren
    • Sound
    • LCD’s
    • Kommunikation
    • Sicherheit
    • Weekend Project
  • Arduino
    • Tutorials
    • ProMini
      • Anschließen & Programmieren
    • Nano
      • Arduino Nano – Übersicht
    • UNO
      • Übersicht
    • MEGA 2560
      • Übersicht
    • Leonardo
      • Übersicht
    • NodeMCU
      • NodeMCU – “Einer für (fast) Alles!”
    • Lilypad
      • Arduino: Lilypad “Jetzt Geht’s Rund!”
    • WEMOS
      • WEMOS D1 – Arduino UNO kompatibles Board mit ESP8266 Chip
      • WEMOS D1 Mini – Übersicht
      • Wemos D1 mini Shields
    • STM32x
      • STM32F103C8T6 – Übersicht
    • Maker UNO
      • Maker UNO – Überblick und Test
    • ATTiny85
      • Mini Arduino mit ATTiny85 Chip
      • ATtiny85 mit dem Arduino UNO beschreiben
  • Android
  • Über mich
  • DeutschDeutsch
  • EnglishEnglish
Menu

MP3-Player mit Arduino Nano und IR-Fernbedienung

Veröffentlicht am 25. März 202229. April 2023 von Stefan Draeger

In diesem Beitrag möchte ich dir zeigen, wie du einen MP3-Player inkl. IR-Fernbedienung (Infrarot) am Arduino Nano programmierst.

MP3 Shield & IR Receivermodul am Arduino Nano
MP3 Shield & IR Receivermodul am Arduino Nano

Im Beitrag Arduino UNO Mini mit MP3 Shield habe ich dir bereits gezeigt, wie das MP3-Shield vom Typ MP3-TF-16P-V3 bzw. MH2024K-24SS am Arduino UNO Mini LE programmiert.

  • Benötigte Ressourcen für die Programmierung des MP3-Players mit IR-Fernbedienung
  • Aufbau der Schaltung am Arduino Nano mit MP3-Player Shield und IR-Fernbedienung
  • Programmieren von einem MP3-Player mit IR-Fernbedienung am Arduino Nano
    • Benötigte Bibliotheken für dieses Projekt
    • Auslesen der IR-Fernbedienung
    • Steuern des MP3 Shields per IR-Fernbedienung
  • Ausblick

Benötigte Ressourcen für die Programmierung des MP3-Players mit IR-Fernbedienung

Für den Nachbau dieses Projektes benötigst du:

  • einen Arduino Nano,
    • ein Mini-USB-Datenkabel,
  • ein MP3-Shield vom Typ MP3-TF-16P-V3 / MH2024K-24SS,
    • ein 1 kOhm Widerstand,
  • ein IR-Shield inkl. Fernbedienung,
  • ein 400 Pin Breadboard,
  • diverse Breadboardkabel

Es gibt mehrere Ausführungen von IR-Fernbedienungen auf zbsp. ebay.de zu kaufen, in meinem Fall verwende ich eine welche gleich die Funktionstasten Play, Pause, Vorwärts, Rückwärts, Stopp für ein Audioabspielgerät enthält.

IR Fernbedienung für den Arduino und Raspberry Pi
IR Fernbedienung für den Arduino und Raspberry Pi

Aufbau der Schaltung am Arduino Nano mit MP3-Player Shield und IR-Fernbedienung

Für dieses kleine Projekt verwende ich den Arduino Nano, dieser ist dem Arduino UNO vom Microchip gleich, jedoch deutlich kompakter und ohne zusätzliche, externe Stromversorgung über Jackadapter.

Maker Nano von Cytron
Maker Nano von Cytron
Arduino Nano V3 , ATmega328P
Arduino Nano V3 , ATmega328P

Von der Firma Cytron gibt es den Maker Nano welchen ich dir bereits im Beitrag Vorstellung des Maker Nano von Cytron vorgestellt habe, dieser hat statt einer Mini-USB eine Micro-USB Buchse sowie einen ATmega328P verbaut und somit etwas stärker als der übliche Arduino Nano.

Die Schaltung aus dem bereits genannten Beispiel zum MP3 Shield wird um das IR-Receivermodul erweitert, ansonsten sind die Pins geblieben.

BauteilArduino Nano
MP3 Shield
VCC5V
GNDGND
TXdigitaler Pin D10
RXdigitaler Pin D11 über 1 kOhm Widerstand
SPK1Lautsprecher +
SPK2Lautsprecher –
IR Receiver
+5V
–GND
Sdigitaler Pin D5
Anschluss der Bauteile für einen einfachen MP3 Player mit IR Fernbedienung
Aufbau der Schaltung - MP3 Shield & IR Empfänger am Arduino Nano V3
Aufbau der Schaltung – MP3 Shield & IR Empfänger am Arduino Nano V3

Programmieren von einem MP3-Player mit IR-Fernbedienung am Arduino Nano

Benötigte Bibliotheken für dieses Projekt

Für dieses Projekt benötigst du:

  • DFRobot / DFRobotDFPlayerMini
  • Arduino-IRremote / Arduino-IRremote

Auslesen der IR-Fernbedienung

Wie man eine Infrarotfernbedienung am Arduino ausliest, habe ich dir bereits im Beitrag Arduino Lektion 20: IR Fernbedienung auslesen gezeigt. In meinem Fall haben sich folgende Signale ergeben:

FunktionWert
Rückwärts0x44
Vorwärts0x40
Play / Pause0x43
Lautstärke +0x15
Lautstärke –0x7
Werte der Tasten auf der IR Fernbedienung

Diese Werte können natürlich von deinen abweichen und daher würde ich dir empfehlen deine Fernbedienung selber auszulesen.

#include <IRremote.h>

void setup() {
  Serial.begin(9600); 
  IrReceiver.begin(5, ENABLE_LED_FEEDBACK);
}
 
void loop(){
  if (IrReceiver.decode()) {
        IrReceiver.printIRResultShort(&Serial);
        if (IrReceiver.decodedIRData.protocol == UNKNOWN) {
            IrReceiver.printIRResultRawFormatted(&Serial, true);
        }
        Serial.println();
        IrReceiver.resume(); // Enable receiving of the next value
    }
}

Steuern des MP3 Shields per IR-Fernbedienung

Nachdem wir nun die Funktionstasten zum Steuern des MP3 Moduls ausgelesen haben, können wir diese in ein Sketch integrieren.

Als Grundgerüst nutze ich das Beispiel „GetStartet“ von DFRobot.

#include "SoftwareSerial.h"
#include "DFRobotDFPlayerMini.h"
#include <IRremote.h>

// RX auf Pin D10 & TX auf D12
SoftwareSerial mySoftwareSerial(10, 12);
DFRobotDFPlayerMini player;

bool actionPlay = false;

const int PREVIOUS = 0x44;
const int NEXT = 0x40;
const int PLAY_PAUSE = 0x43;
const int VOLUME_UP = 0x15;
const int VOLUME_DOWN = 0x7;

void setup() {
  mySoftwareSerial.begin(9600);
  Serial.begin(115200);

  IrReceiver.begin(5, ENABLE_LED_FEEDBACK);
  
  delay(50);
  if (!player.begin(mySoftwareSerial)) {
    Serial.println("Fehler beim Aufbau der seriellen Verbindung!");
  } else {
    Serial.println("Verbindung zum DFPlayer Mini hergestellt.");
    player.volume(10);
  }
}

void loop() {
  if (IrReceiver.decode()) {
    int command = IrReceiver.decodedIRData.command;
    switch (command) {
      case PREVIOUS:
        player.previous();
        break;
      case NEXT:
        player.next();
        break;
      case PLAY_PAUSE:
        actionPlay = !actionPlay;
        if (actionPlay) {
          player.pause();
        } else {
          player.play();
        }
        break;
      case VOLUME_UP:
        player.volumeUp();
        break;
      case VOLUME_DOWN:
        player.volumeDown();
        break;
      default:
        break;
    }
    IrReceiver.resume();
  }
}

Im nachfolgenden Beispiel zeige ich dir nun wie man mit der IR Fernbedienung das MP3 Shield steuern kann. Die Musik habe ich aus der YouTube Audiolibrary entnommen, wo du auch freie Musik findest.

simple MP3 Player with MAKER Nano & IR Receiver modul
Dieses Video auf YouTube ansehen.

Ausblick

Nun habe ich dir gezeigt wie man einen einfachen MP3-Player programmieren kann, nun könnte man noch mit ein paar wenigen Bauteilen visuelle Effekte zum Takt der Musik erzeugen lassen oder die Lautstärke mit einer LED-Bar visualisieren.

Mein nächstes Projekt wird nun auf dieses aufbauen und ich werde dort speziell auf diese zusätzlichen Features eingehen.

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Kategorien

Tools

  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator
  • Widerstandsrechner
  • Rechner für Strom & Widerstände
  • ASCII Tabelle

Meta

  • Videothek
  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Kontakt
  • Cookie-Richtlinie (EU)

Links

Blogverzeichnis Bloggerei.de Blogverzeichnis TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com
©2023 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
x
x