B25 – Thử nghiệm DFPlayer Mini MP3

DFPlayer Mini MP3 là mạch phát tập tin âm thanh kiểu máy chơi nhạc MP3. Mạch có thể được sử dụng riêng lẻ chỉ cần pin, loa và nút nhất hoặc kết hợp với vi điều khiển có giao tiếp chuẩn USART.

Tính năng cơ bản gồm có:

  • Hỗ trợ tập tin mp3, wmv với hầu hết loại tần số lẫy mẫu chuẩn.
  • Lối ra DAC 24 bit âm thanh chuẩn
  • Thẻ nhớ định dạng FAT16, 32 lên đến 32GB
  • Đọc dữ liệu trong tối đa 100 thự mục, mỗi thư mục 255 bài
  • Âm lượng 30 mức với 6 loại EQ
  • Có sẵn mạch khuếch đại ra loa công suất 2W

 

Tham khảo hướng dẫn sử dụng trong tập tin này.

Sơ đồ chân cụ thể:

Kết nối với Arduino rất đơn giản.

Chú ý gắn trở nối tiếp 1KOhm giữa hai chân TX, RX.

Mạch có thể được sử dụng trong nhiều ứng dụng:

  • Hướng dẫn phân luồng giao thông
  • Trạm thông báo, nhắc nhở
  • Báo động hoặc cảnh báo ngoài trời, trong nhà
  • Quảng báo bán hàng
  • Hướng dẫn thông tin, du lịch…

Chương trình ví dụ sau đây là cảnh báo khi có người đi qua cảm biến chuyển động (PIR sensor)

// Door alarm

#include <SoftwareSerial.h>
#include <DFRobotDFPlayerMini.h>

SoftwareSerial DFmp3(3, 4); // RX, TX
DFRobotDFPlayerMini myDFPlayer;

int LEDpin = 13;
int inputPin = 2;
int PIRs = LOW;
int val = 0;

void setup()
{
 pinMode(LEDpin, OUTPUT);
 pinMode(inputPin, INPUT);
 
 DFmp3.begin(9600);
 Serial.begin(9600);
 
 Serial.println();
 Serial.println(F("DFRobot DFPlayer Mini Demo"));
 Serial.println(F("Initializing DFPlayer ... (May take 3~5 seconds)"));
 
 if (!myDFPlayer.begin(DFmp3)) { //Use softwareSerial to communicate with mp3.
 Serial.println(F("Unable to begin:"));
 Serial.println(F("1.Please recheck the connection!"));
 Serial.println(F("2.Please insert the SD card!"));
 while(true);
 }
 Serial.println(F("DFPlayer Mini online."));
 
 myDFPlayer.setTimeOut(500); //Set serial communictaion time out 500ms
 
 //----Set volume----
 myDFPlayer.volume(20); //Set volume value (0~30).
 
 //----Set different EQ----
 myDFPlayer.EQ(DFPLAYER_EQ_NORMAL);
 
 //----Set device we use SD as default----
 myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD);

//----Mp3 play testing ----
 //play file in SD:/01/009.mp3; Folder Name(1~99); File Name(1~255)
 myDFPlayer.playFolder(1,9); 
 delay(2000);
 
 //----Read imformation----
 Serial.println(myDFPlayer.readState()); //read mp3 state
 Serial.println(myDFPlayer.readVolume()); //read current volume
 Serial.println(myDFPlayer.readEQ()); //read EQ setting
}

void loop()
{
 val = digitalRead(inputPin);
 if (val == HIGH)
 {
 digitalWrite(LEDpin, HIGH);
 //
 myDFPlayer.playFolder(1,2); 
 delay(1500);
 }
 else
 {
 digitalWrite(LEDpin, LOW);
 }
 delay(2000);
 
}

Xem thêm video hướng dẫn

 

Leave a Reply

Your email address will not be published. Required fields are marked *