Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "Arduino.h"
- #include <SoftwareSerial.h>
- #include "DFRobotDFPlayerMini.h"
- //#include <math.h>
- #define TX 0
- // #define potPinSound A1
- //#define ANADossier A2
- #define ANACommut A3
- // int bb;
- int bbb;
- // int etatBPPause = LOW;
- // int etatBPStart = LOW;
- byte volumeLevel; //variable for holding volume level;
- /* float a;
- float ratio; // Pour log
- float ratio1024; */ // Pour log
- // ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- SoftwareSerial mySoftwareSerial(1,0); // RX, TX
- // Réaffectation des RX/TX pour ne pas avoir de problème lors du téléversement
- // La résistance de 1K branchée en série sur le port n'a pas été installée, j'ai ajouté un adapteur de niveau du signal basé sur l'emploi d'une résistance en série avec une zener
- // d'émetteur et collecteur relié au 3,3V de la Nano
- // ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- DFRobotDFPlayerMini myDFPlayer;
- void setup()
- {
- pinMode (TX, OUTPUT); // Ouverture du port TX
- //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- // ===================================== La première ligne de commande sert à déterminer le voulume linéairement : ======================================
- //
- // volumeLevel = map(analogRead(potPinSound), 0, 1023, 0, 30);
- //
- // ====================== La deuxième ligne de commande sert à déterminer le voulume avec correction logarithmique logicielle : =========================
- // volumeLevel = map(ratio1024, 0, 1023, 0, 30);
- //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- mySoftwareSerial.begin(9600);
- myDFPlayer.begin (mySoftwareSerial);
- pinMode (TX, OUTPUT);
- // ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++On sélectionne une piste et on la fait tourner en boucle++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- //-----------------------------------------------------------------------Sélection du dossier MP3----------------------------------------------------------
- pinMode (TX, INPUT_PULLUP); // Une fois la commande DFPlayer passée, le port TX est positionné en haute impédance
- // ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- }
- void loop()
- {
- bbb = 0;
- volumeLevel = 25;
- pinMode (TX, OUTPUT);
- myDFPlayer.volume(volumeLevel);
- pinMode (TX, INPUT_PULLUP);
- TestANACommut ();
- bbb = analogRead (ANACommut);
- analogRead (ANACommut); // Valeur ANA en provenance XIAO pour sélectionner un des trois dossiers
- delay (10);
- }
- void TestANACommut ()
- {
- bbb = 0;
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (50);
- /*bbb = 0;
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);*/
- // ===============================================================MSG1===============================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ((bbb < 100) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 100) && ( bbb < 140))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(1);
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 140) && (bbb < 160) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 160) && ( bbb < 200))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(1); //ok
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 200) && (bbb < 260) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 260) && ( bbb < 300))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(2);; //ok
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 300) && (bbb < 320) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 320) && ( bbb < 360))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(3);; //ok
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 360) && (bbb < 400) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 400) && ( bbb < 450))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(4);; //ok
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 450) && (bbb < 470) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 470) && ( bbb < 510))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(5);; //ok
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 510) && (bbb < 540) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- if ( (bbb > 540) && ( bbb < 570))
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- myDFPlayer.loop(6);; //ok
- }
- delay (10);
- pinMode (TX, INPUT_PULLUP);
- delay(4400);
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- bbb = analogRead (ANACommut);
- analogRead (ANACommut);
- delay (10);
- if ( (bbb > 570) )
- {
- delay (10);
- pinMode (TX, OUTPUT);
- delay (10);
- {
- pinMode (TX, OUTPUT);
- myDFPlayer.disableLoopAll(); //stop loop all mp3 files.
- delay(1000);
- }
- pinMode (TX, INPUT_PULLUP);
- }
- // ====================================================================================================================================
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement