From b203ad131f038243c6260b706fef5f75f4ee50c0 Mon Sep 17 00:00:00 2001 From: Mohsen Heidari Date: Tue, 21 Jul 2026 22:40:52 +0330 Subject: [PATCH] MP3 Player. (This is nice.) --- platformio.ini | 1 + src/main.cpp | 53 ++++++++++++++++++++++++++++++-------------------- 2 files changed, 33 insertions(+), 21 deletions(-) diff --git a/platformio.ini b/platformio.ini index ea23b77..9bc99c0 100755 --- a/platformio.ini +++ b/platformio.ini @@ -12,3 +12,4 @@ platform = atmelavr board = uno framework = arduino +lib_deps = https://github.com/DFRobot/DFRobotDFPlayerMini diff --git a/src/main.cpp b/src/main.cpp index 8453716..8a0795d 100755 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,31 +1,42 @@ #include -#define LED 13 +#include +#include "DFRobotDFPlayerMini.h" -void displayMicros(); -void displayMillis(); +int music_num; +SoftwareSerial mySoftwareSerial(10, 11); // #1 +DFRobotDFPlayerMini myDFPlayer; // #2 // Setup Section void setup() { - Serial.begin(9600); - pinMode(LED, OUTPUT); - attachInterrupt(0, displayMicros, RISING); // #1 - attachInterrupt(1, displayMillis, RISING); -} - -void displayMicros() { - Serial.write("micros() = "); - Serial.println(micros()); -} - -void displayMillis() { - Serial.write("millis() = "); - Serial.println(millis()); + mySoftwareSerial.begin(9600); + Serial.begin(115200); + myDFPlayer.begin(mySoftwareSerial); // #3 + myDFPlayer.volume(20); } // Loop Section void loop() { - digitalWrite(LED, HIGH); - delay(500); - digitalWrite(LED, LOW); - delay(500); + if (Serial.available() > 0) { + music_num = Serial.readString().toInt(); // #4 + if (music_num < 5 && music_num > 0) { + switch (music_num) { + case 1: + Serial.println("1"); + myDFPlayer.play(1); + break; + case 2: + Serial.println("2"); + myDFPlayer.play(2); + break; + case 3: + Serial.println("3"); + myDFPlayer.play(3); + break; + case 4: + Serial.println("4"); + myDFPlayer.play(4); + break; + } + } + } }