Mixly编程之MP3模块的使用方法

释放双眼,带上耳机,听听看~!

有听过MP3吗?知道MP3播放器是怎么工作的吗?有没有想过自己有一天也能够做一个MP3播放器呢?

那么,这堂课就来教一下大家如何使用arduino轻松的操控MP3模块,从而控制音乐播放吧!

首先,来认识一下MP3模块:

Mixly编程之MP3模块的使用方法

这个小模块就是MP3模块了。

那我们先来准备一下这样可需要的材料吧

材料准备

  • arduino UNO或micro pro
  • 数据线一根(用于烧写程序)
  • 1k电阻一个
  • 按键3个(没有按键模块的话要搭建外部上拉电路)
  • DFPlayer Mini 模块一个
  • 256M~32G TF内存卡一个
  • 若干导线
  • 一块面包板

发现MP3模块的引脚很多,但是这堂课我们只需要使用几个引脚就行。那么,这些引脚都是干嘛的呢?

接下来咱们就来学习一下它的原理吧。

原理介绍

MP3模块使用简单,只需要通过程序控制MP3模块的引脚,就可以实现相应的功能了。

Mixly编程之MP3模块的使用方法
Mixly编程之MP3模块的使用方法

电路搭建

Mixly编程之MP3模块的使用方法
  • MP3模块VCC——arduino 5V
  • MP3模块GND——arduino GND
  • MP3模块RX——arduino 11号脚(串联一个1K的电阻)
  • MP3模块TX——arduino 10号脚
  • SPK_1和SPK_2分别连接喇叭的两个端口
  • 按键1——aruino 2号脚
  • 按键2——aruino 3号脚
  • 按键3——aruino 4号脚

开始编程

安装库文件

在编程之前需要注意了,mixly不带有MP3模块的驱动库文件,所以我们首先是需要安装MP3模块的库文件。

首先需要下载库文件,下载地址:

下载之后解压解压:

Mixly编程之MP3模块的使用方法

这是解压之后的文件夹,然后将文件夹复制到Mixly安装路径下面的arduino-1.x.x >>libraries文件夹下面:

Mixly编程之MP3模块的使用方法

安装好之后,打开Mixly软件进入高级模式:

Mixly编程之MP3模块的使用方法

编写程序

Mixly程序:

Mixly编程之MP3模块的使用方法
Mixly程序

Arduino程序:

#include "SoftwareSerial.h"
#include  "DFRobotDFPlayerMini.h"

volatile int mp3Tx;
volatile int mp3Rx;
volatile int button1Pin;
volatile int button2Pin;
volatile int button3Pin;

DFRobotDFPlayerMini mp3Player;
SoftwareSerial mySerial(mp3Rx,mp3Tx);
int mixly_digitalRead(uint8_t pin) {
  pinMode(pin, INPUT);
  return digitalRead(pin);
}

void setup(){
  mp3Tx = 11;
  mp3Rx = 10;
  button1Pin = 2;
  button2Pin = 3;
  button3Pin = 4;
  mySerial.begin(960);
  Serial.begin(115200);
  pinMode(button1Pin, INPUT_PULLUP);
  pinMode(button2Pin, INPUT_PULLUP);
  pinMode(button3Pin,INPUT_PULLUP);
  // 设置音量为10// 范围为0~30
  mp3Player.volume(10);
  // 播放内存卡里名称为0001的音乐
  mp3Player.play(1);
}


余下程序:

TF内存卡音乐命名规则

音乐文件的名称应该命名一个四位数字开始,如:

  • 0001.mp3
  • 0002Chasing The Sun.mp3
  • 0003.mp3
  • 0004Try.mp3
  • 0010FourFiveSeconds.mp3

在TF卡里面需要建立一个文件夹为mp3,然后在mp3文件夹里面存放音乐。

如图所示为TF卡打开之后的样子:

Mixly编程之MP3模块的使用方法

最终效果

按键1按下,进行下一曲播放

按键2按下,进行上一曲播放

按键3按下,音乐暂停

从程序中可以看到,

mp3Player.volume(10);
mp3Player.play(1);
mp3Player.next();
mp3Player.previous();
mp3Player.pause();

这些分别表示:设置音量为10,播放第一首音乐,上一曲,下一曲,暂停的语句,除了这些以外 还有一些语句。

所有音乐控制语句总结如下:

给TA打赏
共{{data.count}}人
人已打赏
免费项目

Arduino教程:使用millis()代替delay()

2019-11-16 23:13:27

四级课件

四级第四课 IO口输入输出

2019-10-28 21:49:55

2 条回复 A文章作者 M管理员
  1. eagler8

    ✗微笑✗ 学习了,挺详细的

  2. zwang55

    这个地方的资料好详细

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
'); })();