angelxulo:
Muy buenas, el codigo tiene buena pinta, si no has cruzado los cables RX y TX no funcionara.
Y asegurate de tener la libreria correcta.
Recuerda editar el codigo y publicarlo correctamente como dijo "surbyte".
Mientras, puedes ir probando este codigo y me dices...
Simplemente lo he ordenado un poco y te he añadido los estados de los botones para mas tarde ir añadiendolos, ademas de añadir el tipo de ecualizador y que dispositivo utilizar de lectura.
#include "Arduino.h"
#include <SoftwareSerial.h>
#include "DFRobotDFPlayerMini.h"
SoftwareSerial mySoftwareSerial(10, 11); // RX, TX
DFRobotDFPlayerMini myDFPlayer;
void printDetail(uint8_t type, int value);
const int button1 = 2; // gatillo
const int button2 = 3; // selector de tiro
const int button3 = 4; //sonido de caserina colocada
const int relay1 = 5; // relay activador de luz rafaga
const int relay2 = 6; // RELAY ACTIVADOR MOTOR VIBRADOR 1
const int relay3 = 7; // relay activador motor vibrador 2
int estadobutton1 = LOW;
int estadobutton2 = LOW;
int estadobutton3 = LOW;
void setup() {
Serial.begin(9600);
mySoftwareSerial.begin(9600);
myDFPlayer.begin(mySoftwareSerial);
pinMode(button1,INPUT); // señal de entrada de gatillo
pinMode(button2,INPUT); // señal de selector de tiro
pinMode(button3,INPUT); // señal de caserina colocada
pinMode(relay1,OUTPUT); // relay activador de luz rafaga
pinMode(relay2,OUTPUT); // vibrador 1 efecto retroceso tiro simple
pinMode(relay3,OUTPUT); // vibrador 2 eceto reroceso tiro seguido
myDFPlayer.setTimeOut(500);
myDFPlayer.volume(20);
myDFPlayer.EQ(DFPLAYER_EQ_NORMAL);
// myDFPlayer.EQ(DFPLAYER_EQ_POP);
// myDFPlayer.EQ(DFPLAYER_EQ_ROCK);
// myDFPlayer.EQ(DFPLAYER_EQ_JAZZ);
// myDFPlayer.EQ(DFPLAYER_EQ_CLASSIC);
// myDFPlayer.EQ(DFPLAYER_EQ_BASS);
// myDFPlayer.outputDevice(DFPLAYER_DEVICE_U_DISK);
myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD);
// myDFPlayer.outputDevice(DFPLAYER_DEVICE_AUX);
// myDFPlayer.outputDevice(DFPLAYER_DEVICE_SLEEP);
// myDFPlayer.outputDevice(DFPLAYER_DEVICE_FLASH);
}
void loop() {
estadobutton1 = digitalRead(button1);
estadobutton2 = digitalRead(button2);
estadobutton3 = digitalRead(button3);
if (estadobutton1 == HIGH) {
digitalWrite(relay1, HIGH);
myDFPlayer.play(1);
}
else {
digitalWrite(relay1, LOW);
}
}
hola gracias por la ayuda , lo hize por mi parte la parte en donde activo los relays todo ok solo me faltaria la parte para que el dfplayer trabaje con el arduino este es mi codigo en la ultima parte no me cuadra para que caserina active el sonido guardado en el df player
#include "Arduino.h"
#include <SoftwareSerial.h>
#include "DFRobotDFPlayerMini.h"
SoftwareSerial mySoftwareSerial(10, 11); // RX, TX
DFRobotDFPlayerMini myDFPlayer;
const int gatillo=2; // gatillo
const int selector=3; // selector de tiro
const int caserina=4; // caserina colocada
const int luz=5; // relay de luz
const int mot1=6; // relay de motor1
const int mot2=7; // relay de motor2
int val;
int val1;
int val2;
void setup() {
Serial.begin(9600);
mySoftwareSerial.begin(9600);
myDFPlayer.begin(mySoftwareSerial);
pinMode (gatillo,INPUT);
pinMode (selector,INPUT);
pinMode (caserina,INPUT);
pinMode (luz,OUTPUT);
pinMode (mot1,OUTPUT);
pinMode (mot2,OUTPUT);
myDFPlayer.setTimeOut(500);
myDFPlayer.volume(20);
}
void loop() {
val=digitalRead(gatillo);
if (val==HIGH){
digitalWrite(luz, LOW);
}
else{
digitalWrite(luz, HIGH);
}
{
val=digitalRead(gatillo);
if (val==HIGH){
digitalWrite(mot1, LOW);
}
else{
digitalWrite(mot1, HIGH);
}
{
val1=digitalRead(selector);
if( !( val && val1)){
digitalWrite(mot2, HIGH);
}
else{
digitalWrite(mot2, LOW);
}
{
val2=digitalRead(caserina);
if (val2 == HIGH); {
myDFPlayer.play(0001);
}
}