Lancement DFPlayermini

Bonjour, je n'arrive pas à lancer mon DFPlayer mini sur un arduino Nano.

J'ai utilisé les pin 6 et 5 respectivement pour le RX et TX.
(pour une autre application j'avais utilisé les PIN 10 et 11 et cela fonctionnait bien)

J'ai bien mis une résistance de 1K sur le RX pin 6 vers le TX du player
et le TX pin 5 du nano vers le RX du player.
Mais rien a faire je bute sur quelque chose que je n'arrive pas à résoudre.
(les pins 5 et 6 sont elles adaptées?)

Qui peut m'aider SVP?
MERCI
je met le code ci dessous.

#include "Arduino.h"
#include <SoftwareSerial.h>
#include <DFRobotDFPlayerMini.h>

// Utilisation des pins 5 and 6 pour communiquer avec DFPlayer Mini
const byte BusyPin=7;
boolean EtatMP3; 
byte PinRX=6; //  A connecter sur TX du player 
byte PinTX=5; // A connecter sur RX du player 


SoftwareSerial mySoftwareSerial(PinRX, PinTX);
DFRobotDFPlayerMini myDFPlayer;


void setup() {

 pinMode(PinRX, INPUT);
 pinMode(PinTX, OUTPUT);
 pinMode(BusyPin,INPUT_PULLUP); 

 
 mySoftwareSerial.begin(9600);
 Serial.begin(9600);            // Init USB serial port for debugging
 
 
 
 Serial.println(F("Initializing DFPlayer ..."));
 myDFPlayer.begin(mySoftwareSerial) ;

  if (!myDFPlayer.begin(mySoftwareSerial)) {
    Serial.println(F("Unable to begin:"));
    Serial.println(F("1.Please recheck the connection!"));
    Serial.println(F("2.Please insert the SD card!"));
  }
  else
  {
    Serial.println(F("DFPlayer Mini online."));
  }

  myDFPlayer.volume(20);   // Set volume to maximum (0 to 30).
}

void loop() {
  
 myDFPlayer.play(1);
     //delay(5000);

  EtatMP3 = digitalRead(BusyPin);
  delay(100);
 Serial.print ("Etat Player : ");
 Serial.println (EtatMP3);

  
}

et si vous enlevez ça ? (la bibliothèque le fait)

et vous appelez 2 fois begin()

virez le premier appel

OK j'essai

Ca refuse de démarrer quand même.
voici le code

#include "Arduino.h"
#include <SoftwareSerial.h>
#include <DFRobotDFPlayerMini.h>

// Use pins 5 and 6 to communicate with DFPlayer Mini
const byte BusyPin=7;
boolean EtatMP3; 
byte PinRX=6; //  A connecter sur TX du player 
byte PinTX=5; // A connecter sur RX du player 


SoftwareSerial mySoftwareSerial(PinRX, PinTX);
DFRobotDFPlayerMini myDFPlayer;


void setup() {

 //pinMode(PinRX, INPUT);
 //pinMode(PinTX, OUTPUT);
 pinMode(BusyPin,INPUT_PULLUP); 

 
 mySoftwareSerial.begin(9600);
 Serial.begin(9600);            // Init USB serial port for debugging
 
 
 
 Serial.println(F("Initializing DFPlayer ..."));
// myDFPlayer.begin(mySoftwareSerial) ;

  if (!myDFPlayer.begin(mySoftwareSerial)) {
    Serial.println(F("Unable to begin:"));
    Serial.println(F("1.Please recheck the connection!"));
    Serial.println(F("2.Please insert the SD card!"));
  }
  else
  {
    Serial.println(F("DFPlayer Mini online."));
  }

  myDFPlayer.volume(20);   // Set volume to maximum (0 to 30).
}

void loop() {
  
 myDFPlayer.play(1);
     //delay(5000);

  EtatMP3 = digitalRead(BusyPin);
  delay(100);
 Serial.print ("Etat Player : ");
 Serial.println (EtatMP3);

  
}

c'est à dire que vous voyez ces messages ?

comment est alimenté le DFPlayer ?

oui j'ai ces messages et le Haut parleur ne sort rien!

Il est alimenté en 5 v selon les spécifications, j'avais double checké.

l'état du pin busy reste à 1

et le GND ?

Pas très clair.
Il faut une résistance entre le TX de la Nano et le RX du Player.
Dans l'autre sens ce n'est pas nécessaire.

c'est bien ce que j'ai fait, j'ai vérifié plusieurs fois.

Bon il semble que le problème vienne ailleurs,
je vais revérifier le montage, les connections et les tensions et changer le DFPlayer des fois qu'il soit défaillant!

Bon à tête reposée cela va bien mieux.
je sais que je suis débutant mais là c'est terrible.

je me suis trompé dans la numérotation des PINs en confondant le repérage des pins.
Le pin (5) est en fait D2 E/S digital 2 et
Le pin (6) est en fait D3 E/S digital 3.

Je demande pardon de vous avoir sollicité pour une telle erreur de base.

En mettant 2 à la place de 5 et 3 à la place de 6 "CA MARCHE".

Pardon et MERCI

(des fois çà M'ENERVE)

Bon je vais pouvoir continuer le devpt.

Ah, vous m'avez battu! Lorsque j'ai modifié uniquement ces lignes de votre code, tout s'est bien passé.

Mais j'ai également commenté votre code BUSY, car je pense que c'était également incorrect. Confirmez-vous que cela fonctionne pour vous maintenant ?

Oui cela fonctionne bien maintenant.

L'utilisation du busy n'était pas fini sur les premiers codes. Il fallait dans un premier temps avoir de dfplayer operationnel.
Une fois opérationnel, j'ai ensuite exploiter le code busy pour lancer et finir une bande son et passer à la suivante.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.