Наверное, часто в ваших проектах возникала необходимость воспроизводить определенный звук или мелодию. Например, по завершению какого-нибудь процесса, или просто звуковое сопровождение. В этом нам поможет Mini MP3 Проигрыватель, который обладает очень большим потенциалом.

В данный модуль вставляется microSD карточка, на которую предварительно мы можем записать Mp3 композиции, которые, в дальнейшем, сможем воспроизводить с помощью Mini MP3 Проигрывателя.
Нам понадобится:
- Arduino
- Перемычки или Набор проводов для макетирования 65 шт.
- Провода Папа-Мама
- Breadboard
- Резисторы
- Mini MP3 ПроигрВыход на динамик, со встроенного усилителя до 3W
- Динамик 3W 4Ом.
Для реализации проекта нам необходимо установить библиотеки:
Демонстрация:
Подготавливаем microSD карточку:
Mini MP3 Проигрыватель может распознавать карты объемом до 32G и файловой системой FAT16 , FAT32.
- Для начала нам необходимо подключить карту через катридер к компьютеру и отформатировать карточку.
- Теперь нам нужно создать папку с названием "mp3".

- Записать ваши mp3 композиции в данную папку и дать им имена "0001.mp3" , "0002.mp3", "0003.mp3" и тд. Так же файл можно называть "0001alla-tratata.mp3" главное, указать в самом начале номер трека в четырех символьном формате.

Описание контактов:

| Pin Number | Pin Description | Description | Note | ||
|---|---|---|---|---|---|
| 1 | VCC | Питание | Питание постоянного тока от 3 до 5 Вольт | ||
| 2 | RX | UART serial input | |||
| 3 | TX | UART serial output | |||
| 4 | DAC_R | Audio output right channel | Выход на усилитель, правый канал | ||
| 5 | DAC_L | Audio output left channel | Выход на динамик, со встроенного усилителя до 3W | ||
| 9 | IO1 | Trigger port 1 | Короткое нажатие | ◄ (длительное нажатие - уменьшение громкости) | |
| 10 | GND | Ground | Выход на динамик, со встроенного усилителя до 3W | ||
| 11 | IO2 | Trigger port 2 | Короткое нажатие ► | (длительное нажатие - увеличение громкости) | |
| 12 | ADKEY1 | AD port 1 | Trigger play first segment | ||
| 13 | ADKEY2 | AD port 2 | Trigger play fifth segment | ||
| 14 | USB | USB DP | USB Port | ||
| 15 | USB- | USB- DM | USB Port | ||
| 16 | Busy | Playing Status | Low means playingHigh means no |
Модуль имеет сразу два вида выходного сигнала: первый - со встроенным усилителем, а второй вариант - через внешний усилитель например УНЧ модуль 2*3 Вт класса D PAM8403. В наших примерах будет рассматриваться вариант со встроенным усилителем.
- Подключение к усилителю c помощью выходов DAC_R и DAC_L
- Подключение к динамику напрямую. динамик подключается одним контактом IO1, а вторым к IO2
Пример 1. Управление с помощью Arduino
Схема подключения:
Данный Mini MP3 Проигрыватель может быть подключен как обычному Serial порту, так и к виртуальному Serial порту. Это дает возможность arduino подключиться к компьютеру и к mp3 проигрывателю.
Подключать удобнее всего с помощью Breadboard mini и проводков папа-папа. Так же не забудьте подключать Mp3 плеер к Serial порту с через резисторы на 1 кОм.

В результате у вас должна получиться примерно следующая картина:
Не забудьте установить библиотеку Mini mp3 Arduino Library V2.0.
Скетч №1:
Данный пример запустит проигрывание треков и каждые 10 секунд будет переключать на следующий трек.
Между двумя командами необходимо делать задержку delay (100); 100 миллисекунд, в противном случае некоторые команды могут работать не стабильно.
Копировать1234567891011121314#include <SoftwareSerial.h> #include <DFPlayer_Mini_Mp3.h> void setup () { Serial.begin (9600); mp3_set_serial (Serial); mp3_set_volume (25); delay (100); mp3_play (); delay (100); } void loop () { mp3_next (); // Следующий трек delay (10000); // пуза 10 секунд }
Скетч №2:
В этом примере мы запускаем плеер, он начинает проигрывать композиции целиком одна за другой в случайном порядке.
Копировать1234567891011121314#include <SoftwareSerial.h> #include <DFPlayer_Mini_Mp3.h> void setup () { Serial.begin (9600); mp3_set_serial (Serial); //set Serial for DFPlayer-mini mp3 module delay (100); mp3_set_volume (25); delay (100); mp3_play (); // запускаем трек delay (100); mp3_random_play (); // Даем команду проигрывать треки в случайной последовательности } void loop () { }
Скетч №3:
Для запуска определенной мелодии нужно обязательно задать правильные имена mp3 файлам, которые находятся на флешке как указано в пункте "Подготавливаем microSD карточку". Вы так же можете записывать файлы в любые папки и с любыми названиями, но их вы не сможете запустить выборочно по команде.
Копировать123456789101112131415161718192021#include <SoftwareSerial.h> #include <DFPlayer_Mini_Mp3.h> void setup () { Serial.begin (9600); mp3_set_serial (Serial); //set Serial for DFPlayer-mini mp3 module delay (100); mp3_set_volume (20); } void loop () { delay (100); mp3_play (2); // Произрываем "mp3/0002.mp3" delay (5000); mp3_play (5); // Произрываем "mp3/0005.mp3" delay (5000); mp3_play (1); // Произрываем "mp3/0001.mp3" delay (5000); mp3_play (4); // Произрываем "mp3/0004.mp3" delay (5000); mp3_play (3); // Произрываем "mp3/0003.mp3" delay (5000); }
Полный список функций:
- mp3_play (); // Запуск воспроизведения
- mp3_play (5); // Воспроизвести файл "mp3/0005.mp3"
- mp3_next (); // Следующий трек
- mp3_prev (); // Предыдущий трек
- mp3_set_volume (uint16_t volume); // Уровень громкости 0~30
- mp3_set_EQ (); // Эквалайзер 0~5 (0 - Normal, 1 - Pop, 2 - Rock, 3 - Jazz, 4 - Classic, 5 - Bass)
- mp3_pause (); // пауза
- mp3_stop (); // остановить воспроизведение
- mp3_random_play (); // Воспроизвести в случайнВоспроизвести в случайном порядке.
- void mp3_get_state (); //send get state command
- void mp3_get_volume ();
- void mp3_get_u_sum ();
- void mp3_get_tf_sum ();
- void mp3_get_flash_sum ();
- void mp3_get_tf_current ();
- void mp3_get_u_current ();
- void mp3_get_flash_current ();
- void mp3_single_loop (boolean state); //set single loop
- void mp3_DAC (boolean state);
Пример 2. Автономное управление без Arduino, с помощью подключенных кнопок.
Данный модуль может работать как под управлением микроконтроллера Arduino, так и автономно, как самостоятельный проигрыватель mp3.
Но модулем нужно как-то управлять, регулировать громкость, переключать треки и тд. Эти возможности мы можем реализовать очень просто, нам нужно подключить управляющие кнопки, и с помощью них мы сможем полноценно управлять mp3 проигрывателем.
Есть несколько вариантов подключения:
Простой способ (Минимум функций):
Расширенный способ (Максимальный функционал):
Комплект для повторения проекта
Что понадобится
Это быстрый ориентир по основным модулям и деталям. Полный список для повторения проекта смотрите в самой статье.
8 позиций
Mini MP3-плеер
Компактный MP3-модуль, управляемый по UART
Открыть в iArduino
Набор перемычек для Breadboard
Комплект из 140 перемычек разной длины для прототипирования схем на макетной плате
Открыть в iArduino
Соединительные провода «папа-папа» (65 шт.)
Пучок из 65 проводов «папа-папа» разной длины для прототипирования электронных устройств
Открыть в iArduino
Соединительные провода «папа-мама» (40 шт. / 20 см)
Шлейф из 40 проводов «папа-мама» длиной 20 см для прототипирования электронных устройств
Открыть в iArduino
Комплект резисторов 30 х 20 шт. 10 Ом - 1 мОм / 600 шт.
30 номиналов по 20 штук
Открыть в iArduino
Динамик 40мм, 3W, 4Ом.
Динамик 3W 4Ом.
Открыть в iArduino
Мини аудио усилитель 2*3 Вт класса D PAM8403
класса D, питание 2.5 - 5 В.
Открыть в iArduino
Breadboard Half (400 точек), макетная плата без пайки
Макетная плата на 400 точек для быстрого прототипирования
Открыть в iArduino


