IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Df mini player sur carte Arduino


Sujet :

Arduino

  1. #1
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut Df mini player sur carte Arduino
    Bonjour à tous,

    Je vous soumets ce code de fonctionnement du Df mini player sur une carte Arduino, il fonctionne normalement mais j'ai un problème de son quand la carte est alimentée, il est au maximum soit 30 pour le mini player juste 1 seconde puis passe au niveau indiqué dans le code soit 10,

    Si vous avez une idée,

    En vous remerciant,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    //
    #include "SoftwareSerial.h"
    #include "DFRobotDFPlayerMini.h"
     
    // Use pins 2 and 3 to communicate with DFPlayer Mini
    static const uint8_t PIN_MP3_TX = 2; // Connects to module's RX 
    static const uint8_t PIN_MP3_RX = 3; // Connects to module's TX 
    SoftwareSerial softwareSerial(PIN_MP3_RX, PIN_MP3_TX);
     
    // Create the Player object
    DFRobotDFPlayerMini player;
     
    void setup() {
     
      // Init USB serial port for debugging
      Serial.begin(9600);
      // Init serial port for DFPlayer Mini
      softwareSerial.begin(9600);
     
      // Start communication with DFPlayer Mini
      if (player.begin(softwareSerial)) {
       Serial.println("OK");
     
        // Set volume to maximum (0 to 30).
        player.volume(10);
        // Play the first MP3 file on the SD card
        player.play(1);
      } else {
        Serial.println("Connecting to DFPlayer Mini failed!");
      }
    }
     
    void loop() {
    }

  2. #2
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    peut-être il faut un peu de temps pour que la commande soit prise en compte ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    //
    #include "SoftwareSerial.h"
    #include "DFRobotDFPlayerMini.h"
     
    // Use pins 2 and 3 to communicate with DFPlayer Mini
    static const uint8_t PIN_MP3_TX = 2; // Connects to module's RX 
    static const uint8_t PIN_MP3_RX = 3; // Connects to module's TX 
    SoftwareSerial softwareSerial(PIN_MP3_RX, PIN_MP3_TX);
     
    // Create the Player object
    DFRobotDFPlayerMini player;
     
    void setup() {
     
      // Init USB serial port for debugging
      Serial.begin(9600);
      // Init serial port for DFPlayer Mini
      softwareSerial.begin(9600);
     
      // Start communication with DFPlayer Mini
      if (player.begin(softwareSerial)) {
       Serial.println("OK");
     
        // Set volume to maximum (0 to 30).
        player.volume(10);
     
        delay(1000); // <==== ON ATTEND UN PEU POUR QUE LA COMMANDE SOIT PRISE EN COMPTE ??
     
        // Play the first MP3 file on the SD card
        player.play(1);
      } else {
        Serial.println("Connecting to DFPlayer Mini failed!");
      }
    }
     
    void loop() {
    }

  3. #3
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Bonjour et merci pour la réponse, non ça change rien mais j'ai sans doute mal expliqué ce problème, apparemment c'est le df player qui démarre avant la carte arduino dés la mise en contact, donc le df commence à lire et après la carte fait son programme,

  4. #4
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    normalement le DF player ne lit rien tant qu'il n'en a pas reçu l'ordre.

  5. #5
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Le Df est branché sur le 5v de la carte Arduino,

    Cdlt

  6. #6
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    J'ai compris, j'ai laissé une connexion entre le 0 v et ADKEI d'un précédent montage, d'ou l'erreur, et la c'est bon, mais il me manque une boucle pour répéter le morceau sonore sans arret,

    Cdlt

  7. #7
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    ah

  8. #8
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Une idée pour répéter le mp3 en boucle ?

  9. #9
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Je n'ai pas trouvé de solution à mon problème,

  10. #10
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    Pour répéter vous attendez la fin et relancez

    Sinon avec enableLoop() il doit y avoir moyen de répéter automatiquement

  11. #11
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    J'ai essayé avec while sans succès,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #
    void loop(){
    while (true);
    {player.play (1);
     
     
    }
     
    }

  12. #12
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    Play n’attend pas la fin… ce n’est pas une fonction bloquante donc vous demandez sans cesse de venir jouer le morceau 1 et comme ça va vite il n’a sans doute même pas le temps de commencer. Le while ne sert à rien d’ailleurs puisque le principe de la loop c’est de boucler

    il faudrait dire en pseudo code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    void setup()
      Configuration
      Lancer le morceau 1
     
    void loop()
      Si le morceau est terminé 
        Alors lancer le morceau 1
    Mais il me semble qu’il existe un mode où on dit qu’une fois fini le morceau se relance automatiquement. Faut lire la doc. Le code devient alors tout simplement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    void setup()
      Configuration
      Lancer le morceau 1 en mode boucle
     
    void loop()
      (Rien du tout à faire)

  13. #13
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    D'accord je comprends le principe mais c'est pas facile pour moi, je vais chercher merci

  14. #14
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    Si vous prenez cette bibliothèque
    https://github.com/PowerBroker2/DFPlayerMini_Fast
    Elle est plus optimisée et simple d’emploi et il y a une fonction loop() qui répète le même fichier audio sans fin.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    #include <DFPlayerMini_Fast.h>
    #include <SoftwareSerial.h>
     
    const uint8_t PIN_MP3_TX = 2; // Connects to module's RX 
    const uint8_t PIN_MP3_RX = 3; // Connects to module's TX 
    SoftwareSerial mySerial(PIN_MP3_RX, PIN_MP3_TX);
    DFPlayerMini_Fast myMP3;
     
    void setup() {
      Serial.begin(115200);
     
      mySerial.begin(9600);
      myMP3.begin(mySerial, true);
      delay(1000);
     
      Serial.println("volume au max");
      myMP3.volume(30);
     
      Serial.println("je répète la track 1");
      myMP3.loop(1);
    }
     
    void loop() {}

  15. #15
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Merci Jay M,

    Le code semble plus simple effectivement,

    Je viens de télécharger la bibliothèque et l'installer mais j'ai une erreur de compilation, j'ai essayé sur un autre pc et c'est pareil, j'ai pourtant tout mis à jour,

  16. #16
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    Citation Envoyé par Bernard1957 Voir le message
    mais j'ai une erreur de compilation,
    Quelle est l’erreur ?

  17. #17
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    exit status 1
    Erreur de compilation pour la carte Arduino Uno

    J'ai pourtant bien installé la bibliothèque

  18. #18
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    J'ai recommencé au début et re téléchargé les bibiliothèques, le programme est bien téléversé mais aucun son et le Df player n'est pas allumé


    J'ai modifié le code et ça fonctionne et en boucle sauf que je ne peux pas régler le volume avec le programme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
           #include <DFPlayer_Mini_Mp3.h>
     
    #include <DFPlayerMini.h>
     
     
    #include <DFPlayerMini_Fast.h>
    #include <SoftwareSerial.h>
     
    const uint8_t PIN_MP3_TX = 2; // Connects to module's RX 
    const uint8_t PIN_MP3_RX = 3; // Connects to module's TX 
    SoftwareSerial mySerial(PIN_MP3_RX, PIN_MP3_TX);
    DFPlayerMini_Fast myMP3;
     
    void setup() {
      Serial.begin(9600);
     
      mySerial.begin(9600);
      myMP3.begin(mySerial, true);
      delay(1000);
      myMP3.play (1);
     
      Serial.println("volume au max");
      myMP3.volume(5);
     
      Serial.println("je répète la track 1");
      myMP3.loop(1);
    }
     
    void loop() {}
    Cdlt

  19. #19
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 715
    Points : 5 403
    Points
    5 403
    Par défaut
    Citation Envoyé par Bernard1957 Voir le message
    je ne peux pas régler le volume avec le programme
    Vous voulez dire que à 5 ou à 30 vous avez le même son qui sort ?

    Vous avez mis quoi comme haut parleur?

  20. #20
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2023
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2023
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Oui c est ça, de 5 à 30 pas de changement, sur un autre programme pas de problème et le son se règle, le hp est un 8 ohm de 3 w

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/11/2021, 15h44
  2. Installer Flash Player sur Mandrake 64_x86 (firefox=ok)
    Par CR_Gio dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 23/12/2005, 15h16
  3. [Système] navigation sur carte du type mappy
    Par BernardT dans le forum Langage
    Réponses: 2
    Dernier message: 28/10/2005, 09h39
  4. Reset sur carte à puce
    Par stolken dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 05/10/2005, 00h08
  5. Comment lire sur Carte/Interface PCI
    Par Philippe299 dans le forum MFC
    Réponses: 4
    Dernier message: 12/07/2005, 10h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo