Inhaltsverzeichnis
Für dieses Projekt benötigst du
- 1* Mikrocontroller mit passendem USB-Kabel
- 1* MP3 Shield
- 1* SD Karte
- 1* Lautsprecher/Kopfhörer mit Klinkenanschluss
MP3 Dateien mit dem VS1053 MP3 Shield abspielen
Mit einem MP3-Shield können .mp3 Dateien, welche vorher auf einer FAT32-Micro-SD-Karte abgespeichert wurden, abgespielt werden.
Hinweise zur Bibliothek für das VS1053 MP3 Shield
Das MP3-Shield kann auf den Mikrocontroller aufgesteckt und umgehend verwendet werden.
Für die Inbetriebnahme des MP3 Shields benötigen Sie die „ArduinoLibrary-vs1053 for Sdfat“ Library, welche Sie hier finden und downloaden können. Zudem greift der Beispielcode auf die „SdFat.h“ Bibliothek zurück, welche Sie hier finden.
Auf der Website http://www.fromtexttospeech.com/ können Sie kostenfrei eigene mp3 Dateien erstellen.
Damit Sie den abgespielten Track auch hören können, müssen Sie einen Kopfhörer/Lautsprache per AUX-Kabel mit dem Shield verbinden. Den richtigen Anschluss können Sie dem obigen Bild entnehmen.
Der Schaltplan
Die Verbindung zwischen einem Arduino UNO und dem MP3 Shield VS1053 wird durch Aufstecken des Shields hergestellt. Es ist keine zusätzliche Verkabelung notwendig.
#include <SPI.h> // libraries
#include <SdFat.h>
#include <vs1053_SdFat.h>
SdFat sd; //SD Karte benennen
vs1053 MP3player; //MP3 Shield als „MP3Player benennen
int t=6000; //Der Wert für „t“ gibt im Code den zeitlichen Abstand zwischen dem Abspielen der Datei an.
void setup() {
if(!sd.begin(SD_SEL, SPI_FULL_SPEED)) sd.initErrorHalt(); //SD Karte mit MP3 Dateien auslesen
if (!sd.chdir("/")) sd.errorHalt("sd.chdir");
MP3player.begin(); //MP3 Shield starten
MP3player.setVolume(10,10); //Die Lautstärke einstellen
}
void loop() {
MP3player.available();
MP3player.playTrack(3); //Das MP3 Shield spielt nun die MP3 Datei mit dem Namen „track001“. Bei einer Datei mit dem Namen „track002“ müsste eine „2“ anstelle der „1“ in diese Klammer.
delay(t); //Vorher festgelegte Pause
}
Erweiterung: Soundfiles in Abhängigkeit der gemessenen Temperatur abspielen
Der Schaltplan
Das MP3 Shield wird auf das Mikrocontroller Board gesteckt. Anschließend wird der LM35 durch das Schraubklemmenshield mit dem Board verbunden. Dabei entspricht das schwarze Kabel des LM35 dem GND, das rote Kabel dem 5V Anschluss und das gelbe Kabel dem analogen Signal A0.
Damit du den abgespielten Track auch hören kannst, musst du einen Kopfhörer/Lautsprache per AUX-Kabel mit dem Shield verbinden. Den richtigen Anschluss kannst du dem obigen Bild entnehmen.
Der Programmcode
#include <SPI.h> // libraries
#include <SdFat.h>
#include <vs1053_SdFat.h>
SdFat sd; //SD Karte benennen
vs1053 MP3player; //MP3 Shield als „MP3Player benennen
int LM35 = A0; //Der Sensor soll am analogen Pin A0 angeschlossen werden. Wir nennen den Pin ab jetzt "LM35"
int sensorwert; //Variable für den Sensorwert erstellen
int temperatur = 0; //Unter der Variablen "temperatur" wird später der Temperaturwert abgespeichert.
int t=6000; //Der Wert für „t“ gibt im Code die zeitlichen Abstände zwischen den einzelnen Messungen vor.
void setup() {
Serial.begin(9600); //Serielle Verbindung starten
if(!sd.begin(9, SPI_HALF_SPEED)) sd.initErrorHalt(); //SD Karte mit MP3 Dateien auslesen
if (!sd.chdir("/")) sd.errorHalt("sd.chdir");
MP3player.begin(); //MP3 Shield starten
MP3player.setVolume(10,10); //Die Lautstärke einstellen
}
void loop() {
MP3player.available();
sensorwert=analogRead(LM35); //Auslesen des Sensorwertes.
temperatur= map(sensorwert, 0, 307, 0, 150); //Umwandeln des Sensorwertes mit Hilfe des "map" Befehls.
Serial.println(temperatur); //Temperatur am seriellen Monitor anzeigen lassen
MP3player.playTrack(temperatur); //Das MP3 Shield spielt nun je nach gemessener Temperatur die Datei mit dem passenden Dateinamen ab.
delay(t); //Vorher festgelegte Pause
}
Weitere Details zum MP3-Shield findet man zudem unter folgendem Link:
http://www.geeetech.com/wiki/index.php/Arduino_MP3_shield_board_with_TF_card
Funduino - Dein Onlineshop für Mikroelektronik
-
Dauerhaft bis zu 10% Rabatt für Schüler, Studenten und Lehrkräfte
-
Mehr als 3.500 Artikel sofort verfügbar!
-
Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.