Projeto 46

DFPlayer mini

Projeto 46 - DFPlayer mini

Código (download)

/*

Projeto 46 - DFPlayer mini

Física na Lixa

https://fisicanalixa.blogspot.com/

https://sites.google.com/aelixa.pt/fisicaearduino

*/


#include "SoftwareSerial.h"

#include "DFRobotDFPlayerMini.h"


SoftwareSerial mySoftwareSerial(10, 11); //RX e TX

DFRobotDFPlayerMini myDFPlayer;


#define pinLEDvermelho 7

#define pinLEDverde 6


void setup()

{

  Serial.begin(9600);

  mySoftwareSerial.begin(9600);

  pinMode(pinLEDvermelho, OUTPUT);

  pinMode(pinLEDverde, OUTPUT);

  if (!myDFPlayer.begin(mySoftwareSerial))

  {

    digitalWrite(pinLEDvermelho, HIGH);   //O cartão não se encontra no DFPlayer

    digitalWrite(pinLEDverde, LOW);

    while (true);

  }

  else

  {

    digitalWrite(pinLEDvermelho, LOW);

    digitalWrite(pinLEDverde, HIGH);      //O cartão está pronto

  }

  myDFPlayer.setTimeOut(500);             //Timeout serial de 500 ms

  myDFPlayer.volume(20);                  //Volume (entre 0 e 30)

  myDFPlayer.EQ(0);                       //Equalização normal

}


void loop()

{

  myDFPlayer.play(1);

  delay(134000);           //Duração da primeira música 2:14

  myDFPlayer.play(2);

  delay(149000);           //Duração da segunda música 2:29

  myDFPlayer.play(3);

  delay(225000);           //Duração da terceira música 3:45

}

Projeto 46 - DFPlayer mini com botão PAUSA e PRÓXIMA MÚSICA

Código (download)

/*

Projeto 46 - DFPlayer mini (com botões "Próxima música" e "Pausa")

Física na Lixa

https://fisicanalixa.blogspot.com/

https://sites.google.com/aelixa.pt/fisicaearduino

*/


#include "SoftwareSerial.h"

#include "DFRobotDFPlayerMini.h"

SoftwareSerial mySoftwareSerial(10, 11); //RX e TX

DFRobotDFPlayerMini myDFPlayer;

#define pinLEDvermelho 7

#define pinLEDverde 6

#define pinBTNproxima 5

#define pinBTNpausa 4

int estadoBTNpausa = 1;

int estadoBTNproxima = 1;

int pausa = 0;


void setup()

{

  Serial.begin(9600);

  mySoftwareSerial.begin(9600);

  pinMode(pinLEDvermelho, OUTPUT);

  pinMode(pinLEDverde, OUTPUT);

  pinMode(pinBTNpausa, INPUT_PULLUP);

  pinMode(pinBTNproxima, INPUT_PULLUP);

  if (!myDFPlayer.begin(mySoftwareSerial))

  {

    digitalWrite(pinLEDvermelho, HIGH);   //O cartão não se encontra no DFPlayer

    digitalWrite(pinLEDverde, LOW);

    while (true);

  }

  else

  {

    digitalWrite(pinLEDvermelho, LOW);

    digitalWrite(pinLEDverde, HIGH);      //O cartão está pronto

  }

  myDFPlayer.setTimeOut(500);             //Timeout serial de 500 ms

  myDFPlayer.volume(20);                  //Volume (entre 0 e 30)

  myDFPlayer.EQ(0);                       //Equalização normal

  myDFPlayer.play(1);                     //Inicia com a música 0001.mp3

}


void loop()

{

  estadoBTNpausa = digitalRead(pinBTNpausa);

  estadoBTNproxima = digitalRead(pinBTNproxima);

  if (estadoBTNproxima == LOW)    //Pressionando o botão "Próxima" inicia-se a música seguinte

  {

    myDFPlayer.next();

  }

  if (estadoBTNpausa == LOW)      //Pressionando o botão "Pausa" a música que está a tocar para

  {                               //Pressionando novamente o botão, a música continua a tocar

    pausa = !pausa;

    if (pausa == 0)

    {

      myDFPlayer.start();

    }

    if (pausa == 1)

    {

      myDFPlayer.pause();

    }

  }

  delay(200);

}

Instalar a biblioteca