Notice: DFRobot will be on a short holiday from Apr 4-6. Orders placed during this time will be processed on Apr 7.






_bCoSLignGP.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max)
#include <DFPlayer_Mini_Mp3.h> #include <SoftwareSerial.h> #include <Wire.h> #define PIN_BUSY D0 SoftwareSerial mp3Serial(D1, D2); // RX, TX const int MUX_A = D5; const int MUX_B = D6; const int MUX_C = D7; const int ANALOG_INPUT = A0; int valueF1 = 0; int valueF2 = 0; int valueF3 = 0; int valueF4 = 0; int valueF5 = 0; void setup() { pinMode(MUX_A, OUTPUT); pinMode(MUX_B, OUTPUT); pinMode(MUX_C, OUTPUT); Serial.begin(115200); pinMode(PIN_BUSY, INPUT); Serial.begin (115200); Serial.println("Setting up software serial"); mp3Serial.begin (9600); Serial.println("Setting up mp3 player"); mp3_set_serial (mp3Serial); delay(1000); mp3_set_volume (20); } void changeMux(int c, int b, int a) { digitalWrite(MUX_A, a); digitalWrite(MUX_B, b); digitalWrite(MUX_C, c); } void readValues() { float value; changeMux(HIGH, LOW, LOW); valueF1 = analogRead(ANALOG_INPUT); Serial.print("F1: "); Serial.print(valueF1); Serial.print(" "); changeMux(LOW, LOW, HIGH); valueF2 = analogRead(ANALOG_INPUT); Serial.print("F2: "); Serial.print(valueF2); Serial.print(" "); changeMux(LOW, HIGH, LOW); valueF3 = analogRead(ANALOG_INPUT); Serial.print("F3: "); Serial.print(valueF3); Serial.print(" "); changeMux(LOW, HIGH, HIGH); valueF4 = analogRead(ANALOG_INPUT); Serial.print("F4: "); Serial.print(valueF4); Serial.print(" "); changeMux(LOW, LOW, LOW); valueF5 = analogRead(ANALOG_INPUT); Serial.print("F5: "); Serial.print(valueF5); Serial.println(" "); delay(200); } void loop() { readValues(); if (valueF5 <= 60 && valueF5 > 40) { Serial.println("Stop"); mp3_play (1); Serial.print("Busy: "); Serial.println(digitalRead(PIN_BUSY)); delay(500); delay (1000); } if (valueF5 <= 40 && valueF4 <=40) { Serial.println("Stop"); mp3_play (2); Serial.print("Busy: "); Serial.println(digitalRead(PIN_BUSY)); delay(500); delay (1000); } if (valueF1 <= 40 && valueF5 <=40) { Serial.println("Stop"); mp3_play (3); Serial.print("Busy: "); Serial.println(digitalRead(PIN_BUSY)); delay(500); delay (1000); } if (valueF2 <= 40 && valueF3 <=40 && valueF4 <=40) { Serial.println("Stop"); mp3_play (4); Serial.print("Busy: "); Serial.println(digitalRead(PIN_BUSY)); delay(500); delay (1000); } if (valueF3 <= 40 && valueF4 <=40) { Serial.println("Stop"); mp3_play (5); Serial.print("Busy: "); Serial.println(digitalRead(PIN_BUSY)); delay(500); delay (1000); } }
#include <DFPlayer_Mini_Mp3.h>
#include <SoftwareSerial.h>
#include <Wire.h>
#define PIN_BUSY D0
SoftwareSerial mp3Serial(D1, D2); // RX, TX
const int MUX_A = D5;
const int MUX_B = D6;
const int MUX_C = D7;
const int ANALOG_INPUT = A0;
int valueF1 = 0;
int valueF2 = 0;
int valueF3 = 0;
int valueF4 = 0;
int valueF5 = 0;
void setup() {
pinMode(MUX_A, OUTPUT);
pinMode(MUX_B, OUTPUT);
pinMode(MUX_C, OUTPUT);
Serial.begin(115200);
pinMode(PIN_BUSY, INPUT);
Serial.begin (115200);
Serial.println("Setting up software serial");
mp3Serial.begin (9600);
Serial.println("Setting up mp3 player");
mp3_set_serial (mp3Serial);
delay(1000);
mp3_set_volume (20);
}
void changeMux(int c, int b, int a) {
digitalWrite(MUX_A, a);
digitalWrite(MUX_B, b);
digitalWrite(MUX_C, c);
}
void readValues() {
float value;
changeMux(HIGH, LOW, LOW);
valueF1 = analogRead(ANALOG_INPUT);
Serial.print("F1: "); Serial.print(valueF1); Serial.print(" ");
changeMux(LOW, LOW, HIGH);
valueF2 = analogRead(ANALOG_INPUT);
Serial.print("F2: "); Serial.print(valueF2); Serial.print(" ");
changeMux(LOW, HIGH, LOW);
valueF3 = analogRead(ANALOG_INPUT);
Serial.print("F3: "); Serial.print(valueF3); Serial.print(" ");
changeMux(LOW, HIGH, HIGH);
valueF4 = analogRead(ANALOG_INPUT);
Serial.print("F4: "); Serial.print(valueF4); Serial.print(" ");
changeMux(LOW, LOW, LOW);
valueF5 = analogRead(ANALOG_INPUT);
Serial.print("F5: "); Serial.print(valueF5); Serial.println(" ");
delay(200);
}
void loop() {
readValues();
if (valueF5 <= 60 && valueF5 > 40) {
Serial.println("Stop");
mp3_play (1);
Serial.print("Busy: ");
Serial.println(digitalRead(PIN_BUSY));
delay(500);
delay (1000);
}
if (valueF5 <= 40 && valueF4 <=40) {
Serial.println("Stop");
mp3_play (2);
Serial.print("Busy: ");
Serial.println(digitalRead(PIN_BUSY));
delay(500);
delay (1000);
}
if (valueF1 <= 40 && valueF5 <=40) {
Serial.println("Stop");
mp3_play (3);
Serial.print("Busy: ");
Serial.println(digitalRead(PIN_BUSY));
delay(500);
delay (1000);
}
if (valueF2 <= 40 && valueF3 <=40 && valueF4 <=40) {
Serial.println("Stop");
mp3_play (4);
Serial.print("Busy: ");
Serial.println(digitalRead(PIN_BUSY));
delay(500);
delay (1000);
}
if (valueF3 <= 40 && valueF4 <=40) {
Serial.println("Stop");
mp3_play (5);
Serial.print("Busy: ");
Serial.println(digitalRead(PIN_BUSY));
delay(500);
delay (1000);
}
}