Probleme : impossible de sortir du son avec un fichier wav sur arduino

Bonjour,

j'ai pour projet de fair un jukebox avec un module sd. Et malgrès un bon code sans aucune erreur impossible de sortir du son. Les hp son des hp 4ohm.

le cablage que j'ai fait pour les hp

Cablage hp

le cablage que j'ai fait pour le module sd

Cablage module sd

et voici le code

#include <SD.h>
#include <TMRpcm.h> 

const int chipSelect = 10;
String music[10];
char caractere;

File root;
TMRpcm tmrpcm;

void setup() 
{

  Serial.begin(9600);
  tmrpcm.setVolume(4); // gestion du volume de 0 à 7
  tmrpcm.quality(1); // qualitée audio 0 ou 1
  InitSdCard();
  InitSpeaker();


  root = SD.open("/");

  SetSongIntoVect(root, 0);

  Serial.println("done!");
  Serial.println("tapez un caractere -> a");
}

void loop() 
{
  if(Serial.available()){
    caractere = Serial.read();
    if(caractere == 'a'){
      Serial.println("Lecture");
      Serial.println(music[2].c_str());
      tmrpcm.play(music[2].c_str());
    }
  }
}

void SetSongIntoVect(File dir, int numTabs) 
{
  int count = 0;
  
  while (true) {
    File entry = dir.openNextFile();
    if (! entry)
      break;
    Serial.println(entry.name());
    music[count] = entry.name();
    count++;
    entry.close();
  }
}

void playSound(char *file)
{
   tmrpcm.play(file);
   return; 
}

void InitSdCard()
{
  while (!Serial);

  Serial.print("Initializing SD card...");

  if (!SD.begin(chipSelect))
    Serial.println("initialization failed");

  Serial.println("initialization done.");
}

void InitSpeaker()
{
  tmrpcm.speakerPin = 8;
  tmrpcm.setVolume(4);
  tmrpcm.quality(1);
}

J'ai essayer de convertir les musique sur plusieurs fréquence et le mieux que j'ai pu obtenir c un grésillement grave.

Si quelqu'un aurait une idée de ce que je pourrait rajouter ou faire par ce que j'ai plus trop d'idée

Pour le format c'est indiqué dans le Wiki de la librairie

  • Main formats: WAV files, 8-bit, 8-32khz Sample Rate, mono.

Pour la sortie muette c'est indiqué dans les codes en exemple livrés avec la librairie

tmrpcm.speakerPin = 9; //5,6,11 or 46 on Mega, 9 on Uno, Nano, etc

le probleme c'est que j'ai déjà cette configuration

Ben non

En effet mais si je l'ai changé c'est que sur la 9 ça ne fonctionnait pas non plus

Possible mais si dans la librairie il est indiqué que la seule sortie utilisable c'est la 9, il faut utiliser la 9.
Si ça ne fonctionne pas correctement, chercher la source du problème ailleurs mais pas en changeant la broche de sortie.
Se poser peut-être la question sur l'adéquation du mosFET avec l'application. Quel référence de mosFET utilises-tu?

La référence est RLR2905

J'ai réussi merci beaucoup pour ton aide je pense que pendantt mes test j'ai pas tester toute les frequnce sur la pin 9

ça fait un moment que je n'ai pas joué avec la lib tmrpcm mais de memoire

  • il faut modifier la lib pour selectionner le bon MCU (port ou timer à modifier) c'est indiqué il me semble en en tete de lib

jouer des wav avec le bon format
Je vais regarder + tard si j'ai ici en ce moment la lib modifiée

Merci j'ai réussi grace a fdufnews je te remercie quand meme pour ton aide