Last Updated on 1. April 2022 by sfambach
Diese Zusatzplatine, für rund 6€, kann eine Vielzahl an Musikformaten abspielen und besitzt neben einem SD Karten Steckplatz auch ein Mikrophon, einen Kopfhörer Anschluss und einen Line In Eingang. Somit macht sie aus dem Arduino einen Vollständigen MP3 Player und ist zum Digitalisieren von Audiosignalen geeignet.
Fakten
- MP3 Chip VS1053 MP3
- Anschluss über SPI interface
- Kopfhörer 3,5 mm Klinkenanschluss
- Line In 3,5 mm Klinkenanschluss
- Microphon
- Power LED
- Spannungsregler AMS-1117 mit bis zu 800mA
- Stronversorgung über +5 VDC
- Christall 12.288 Mhz crystal
- SD Karten Slot
- Decodes formats Ogg Vorbis:
- MP3 = MPEG 1 & 2 audio layer III (CBR+VBR+ABR)
- MP1 & MP2 = MPEG 1 & 2 audio layers I & II optional
- MPEG4 / 2 AAC-LC(+PNS), HE-AAC v2 (Level 3) (SBR + PS)
- WMA4.0/4.1/7/8/9 alle Profile (5-384 kbps)
- FLAC verlustfreies audio über Softwareinterface (upto 24 bits, 48 kHz)
- WAV (PCM + IMA ADPCM)
- General MIDI 1 / SP-MIDI format 0
- Encodes formats Für das Microphon und Line-In Ogg Vorbis mit Software Plugin
- IMA ADPCM
- 16-bit PCM
| Beschreibung | Kürzel | Pin |
|---|---|---|
| Aktivierung des Chips (low Aktiv) | CS | 6 |
| Daten Chip Auswahl (low Aktiv) | DCS | 7 |
| Data Anfrage Pin (Player fragt nach mehr Daten) | DREQ | 2 |
| Reset des MP3 Chips (Low = Reset) | RESET | 8 |
| Auswahl Pin für die SD Karte | CS | 9 |
| Ausgehende Daten (Master Output Slave Input) | MOSI | 11 |
| Eingehende Daten (Master Input Slave Output) | MISO | 12 |
| Serieller Takt | SCK | 13 |
Anwendungsbereiche
- MP3 Player
- Audio aufnehmen
- Audio abspielen
- OGG Konvertierung
Ansichten


Programmierung
Es gibt eine Bibliothek von SparkFunk mit Beispielen die meiner Meinung nach ausreicht um die Platine zu testen. Deswegen habe ich an dieser Stelle das Rad nicht neu erfunden, sondern ein bestehendes Beispiel genutzt.
Bibliotheken
Die Bibliothek gibt auf github, leider entspricht sie nicht den Arduino Normen,
https://github.com/madsci1016/Sparkfun-MP3-Player-Shield-Arduino-Library
Datei entzippen und die Ordner SdFat und SFEMP3Shield in den Library Ordner kopieren.

Testprogramm
Als Testprogramm habe ich MP3Shield_Library_Demo verwendet.


Die Beschreibung funktioniert nicht.
Schade dass es nicht geklappt hat. Habe es gerade nochmal bei mir probiert und funktionierte. Leider kann ich nicht einschätzen wo bei dir der Fehler liegen könnte.
Die Bibliothek entspricht leider nicht nur den Arduino Normen, sondern auch den Codevorschriften von C++
Man bekommt die Fehlermeldung:
libraries\Arduino_Library-vs1053_for_SdFat-master\src\vs1053_SdFat.cpp:296:34: warning: ISO C++ forbids converting a string constant to ‚char*‘ [-Wwrite-strings]
if(VSLoadUserCode(„patches.053“)) return 6;
Es funktioniert nicht.
Den Fehler habe ich neulich zum ersten mal unter Linux gesehen. Windows war zum Testzeitpunkt nicht so wählerisch. ALlerding habe die sourcen gerade nochmnal unter Linux compiliert und funktionierte. Für den Fehler gibt ne Menge Lösungen im Netz.