Главная chevron_right Наши уроки chevron_right Arduino chevron_right Урок 17. Подключение Mini MP3 плеера к Arduino

Урок 17. Подключение Mini MP3 плеера к Arduino

Подключаем Mini MP3 плеер DFPlayer к Arduino: подготовка microSD карты, схема подключения через резисторы, библиотека DFPlayer Mini и три готовых скетча для управления воспроизв...

Видео-обложка запускается при наведении

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

В данный модуль вставляется microSD карточка, на которую предварительно мы можем записать Mp3 композиции, которые, в дальнейшем, сможем воспроизводить с помощью Mini MP3 Проигрывателя.

Нам понадобится:

Для реализации проекта нам необходимо установить библиотеки:

Демонстрация:

Подготавливаем microSD карточку:

Mini MP3 Проигрыватель может распознавать карты объемом до 32G и файловой системой FAT16 , FAT32.

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

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

Pin NumberPin DescriptionDescriptionNote
1VCCПитаниеПитание постоянного тока от 3 до 5 Вольт
2RXUART serial input
3TXUART serial output
4DAC_RAudio output right channelВыход на усилитель, правый канал
5DAC_LAudio output left channelВыход на динамик, со встроенного усилителя до 3W
9IO1Trigger port 1Короткое нажатие◄ (длительное нажатие - уменьшение громкости)
10GNDGroundВыход на динамик, со встроенного усилителя до 3W
11IO2Trigger port 2Короткое нажатие ►(длительное нажатие - увеличение громкости)
12ADKEY1AD port 1Trigger play first segment
13ADKEY2AD port 2Trigger play fifth segment
14USBUSB DPUSB Port
15USB-USB- DMUSB Port
16BusyPlaying StatusLow 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
Все уроки Arduino