Arduino mp3 Shield Dateien gezielt anspielen

OP #5395823
Lesenswert?
• ▲
▼
Hallo.
Ich habe gerade ein VS1053 mp3 Shield in Betrieb genommen und möchte 
damit einen mp3 Player für die Kids bauen. Dabei möchte ich folgende 
Funktionalität abbilden:

Druck auf Knopf 1:
Gehe in Ordner "1" auf der SD Karte und spiele dort die erste Datei ab, 
dann die zweite usw...

Druck auf Knopf 2:
Gehe in den Ordner "2" auf der SD Karte und spiele dort die erste Datei 
ab, dann die zweite usw...

In meinem Sketch habe ich es schon  geschafft, die Ordner zu wechseln 
und gezielt Tracks abzuspielen mit z.B.
1
MP3player.playMP3("track004.mp3");

Allerdings bedingt das, das die mp3s dort strukturiert abgelegt werden 
müssen.
Gibt es eine Möglichkeit, in Ordner X zu wechseln und von dort die 
erste, zweite, dritte Datei usw. abzuspielen?

Mit
1
MP3player.playTrack(3)
wird das ganze ja so wie ich das nachvollzogen habe global auf der SD 
Karte gehandhabt.
Ich hoffe, ich konnte mich einigermaßen verständlich ausdrücken ;-)

Hier mein aktueller Code zum besseren Verständnis:
1
#include <SPI.h>      // libraries
2
#include <SdFat.h>
3
// #include <SdFatUtil.h>
4
#include <SFEMP3Shield.h>
5

6
SdFat sd;       //SD Karte benennen
7
SFEMP3Shield MP3player;   //MP3 Shield als „MP3Player benennen
8

9
int t=6000;       //Der Wert für „t“ gibt im Code den zeitlichen Abstand zwischen dem Abspielen der Datei an.
10

11

12
void setup() {
13
Serial.begin (9600);
14
  if(!sd.begin(9, SPI_HALF_SPEED)) sd.initErrorHalt();  //SD Karte mit MP3 Dateien auslesen
15
  if (!sd.chdir("/")) sd.errorHalt("sd.chdir");
16

17
  MP3player.begin();    //MP3 Shield starten
18
  MP3player.setVolume(10,10); //Die Lautstärke einstellen 
19
  
20
}
21

22
void loop() {
23

24
  MP3player.available();
25

26
  sd.chdir("/a02/",true);
27
  MP3player.playMP3("track003.mp3");
28

29
  delay(3000);
30
  sd.chdir("/a03/",true);
31
  MP3player.playMP3("track004.mp3");
32
   
33
  delay(3000);
34
    
35
}

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.