Go Down

Topic: Problème de lecture MP3 avec bibliothèque (Read 65 times) previous topic - next topic

xtazz

Bonjour, je viens donc ici car j'ai un projet à réaliser pour le bac, et j'ai besoin de lire des fichiers mp3 pré-enregistré sur ma carte SD selon certaines conditions

Pour faire simple, j'ai un capteur IR qui doit envoyé l'information à mon module MP3 de lire tel fichier.

Pour l'instant je réussis à lire un fichier MP3 très simplement

Mais je comprend pas bien la bibliothèque Software Serial, je montre le code :


Code: [Select]

#include <SoftwareSerial.h>
#include <MP3Player_KT403A.h>

// Note: You must define a SoftwareSerial class object that the name must be mp3,
//       but you can change the pin number according to the actual situation.
SoftwareSerial mp3(6, 7);

void setup()
{
    mp3.begin(9600);
    Serial.begin(9600);
    delay(100);
   
    SelectPlayerDevice(0x02);       // Select SD card as the player device.
    SetVolume(30);                // Set the volume, the range is 0x00 to 0x1E.
}

void loop()
{
    char recvChar = 0;
    while(Serial.available())
    {
        recvChar = Serial.read();
    }
    Serial.print("Send: ");
    Serial.println( recvChar );
   
    switch (recvChar)
    {
        case '1':
            SpecifyMusicPlay(1);
            Serial.println("Specify the music index to play");
            break;
        case '2':
            PlayPause();
            Serial.println("Pause the MP3 player");
            break;
        case '3':
            PlayResume();
            Serial.println("Resume the MP3 player");
            break;
        case '4':
            PlayNext();
            Serial.println("Play the next song");
            break;
        case '5':
            PlayPrevious();
            Serial.println("Play the previous song");
            break;
        case '6':
            PlayLoop();
            Serial.println("Play loop for all the songs");
            break;
        case '7':
            IncreaseVolume();
            Serial.println("Increase volume");
            break;
        case '8':
            DecreaseVolume();
            Serial.println("Decrease volume");
            break;
        default:
            break;
    }
   
    delay(1000);
   
//    printReturnedData();
}


Enfaite c'est simple, selon la "valeur" de recvChar, cela exécute certaines fonction (lié à la lecture mp3), mais mon gros problème, c'est que même en mettant

Code: [Select]

  char recvChar;
    recvChar = 1;


Dans mon code, qui fixe la valeur 1 à recvChar, je dois donc normalement lire le premier fichier mp3 grâce à cette ligne de code

Code: [Select]

    case '1':
      SpecifyMusicPlay(1);
      break;



Sauf que la valeur considéré n'est pas 1 puisque ça n'éxécute pas mon fichier MP3
J'ai vraiment besoin d'aide merci



Go Up