Player Mini MP3 模块播放音乐

您所在的位置:网站首页 单片机播放sd卡音乐 Player Mini MP3 模块播放音乐

Player Mini MP3 模块播放音乐

2024-07-16 21:17| 来源: 网络整理| 查看: 265

资料下载 链接:https://pan.baidu.com/s/1P2XU2K0Qs5aZ95LAlVpArg?pwd=lx88 提取码:lx88

1、概述

该模块是一款小巧且价格低廉的 MP3 模块,可以直接接驳扬声器。模块配合供电电池、扬声器、按键可以单独使用,也可以通过串口控制,作为 Arduino UNO 或者是任何有串口的单片机的一个模块。模块本身完美的集成了 MP3、WAV、WMA 的硬解码。同时软件支持 TF 卡驱动,支持 FAT16、FAT32 文件系统。通过简单的串口指令即可完成播放指定的音乐,以及如何播放音乐等功能,无需繁琐的底层操作,使用方便,稳定可靠。

2、规格参数

支持采样率(KHz):8/11.025/12/16/22.05/24/32/44.1/48 24 位 DAC 输出,动态范围支持:90dB,信噪比支持:85dB 完全支持 FAT16、FAT32 文件系统,最大支持 32G 的 TF 卡,支持 32G 的 U 盘、64M 字节的 NORFLASH 多种控制模式可选。IO 控制模式、串口模式、AD 按键控制模式 广播语插播功能,可以暂停正在播放的背景音乐。广告播放完毕回到背景音继续播放 音频数据按文件夹排序,最多支持 100 个文件夹,每隔文件夹可以分配 255 首曲目 30 级音量可调,6 级 EQ 可调

3、引脚说明

在这里插入图片描述 在这里插入图片描述

4、连接方法

在这里插入图片描述

5、测试代码 /* MP3模块 https://sourl.cn/7FXAif */ #include "Arduino.h" #include "SoftwareSerial.h" #include "DFRobotDFPlayerMini.h" SoftwareSerial mySoftwareSerial(10, 11); // RX, TX DFRobotDFPlayerMini myDFPlayer; void printDetail(uint8_t type, int value); void setup() { mySoftwareSerial.begin(9600); Serial.begin(115200); Serial.println(); Serial.println(F("DFRobot DFPlayer Mini Demo")); Serial.println(F("Initializing DFPlayer ... (May take 3~5 seconds)")); if (!myDFPlayer.begin(mySoftwareSerial)) { //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.volume(10); //Set volume value. From 0 to 30 myDFPlayer.play(1); //Play the first mp3 } void loop() { static unsigned long timer = millis(); if (millis() - timer > 30000) { timer = millis(); myDFPlayer.next(); //Play next mp3 every 30 second. } if (myDFPlayer.available()) { printDetail(myDFPlayer.readType(), myDFPlayer.read()); //Print the detail message from DFPlayer to handle different errors and states. } } void printDetail(uint8_t type, int value){ switch (type) { case TimeOut: Serial.println(F("Time Out!")); break; case WrongStack: Serial.println(F("Stack Wrong!")); break; case DFPlayerCardInserted: Serial.println(F("Card Inserted!")); break; case DFPlayerCardRemoved: Serial.println(F("Card Removed!")); break; case DFPlayerCardOnline: Serial.println(F("Card Online!")); break; case DFPlayerPlayFinished: Serial.print(F("Number:")); Serial.print(value); Serial.println(F(" Play Finished!")); break; case DFPlayerError: Serial.print(F("DFPlayerError:")); switch (value) { case Busy: Serial.println(F("Card not found")); break; case Sleeping: Serial.println(F("Sleeping")); break; case SerialWrongStack: Serial.println(F("Get Wrong Stack")); break; case CheckSumNotMatch: Serial.println(F("Check Sum Not Match")); break; case FileIndexOut: Serial.println(F("File Index Out of Bound")); break; case FileMismatch: Serial.println(F("Cannot Find File")); break; case Advertise: Serial.println(F("In Advertise")); break; default: break; } break; default: break; } } 6、测试结果

按照接线方法接好线,烧录好代码,上电,利用代码控制 MP3 模块,过 3 秒钟的左右,能听到喇叭里面发出声音,并以 30 秒的速度切换下一首 MP3.再将 RX TX 接线拔掉,利用按键测试。上电时,能听到声音,按 S1 是上一首,长按 S1 是减小音量。按S2 是下一首,长按 S2 是增加音量。按 S3 第五首,长按 S3 是循环第五首。按 S4 第一首,长按循环第一首。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3