Найти тему
Project A.L.T.

Обзор MP3 модуля DFPlayer Mini (DFR0299)

Оглавление
 Обзор MP3 модуля DFPlayer Mini (DFR0299)
Обзор MP3 модуля DFPlayer Mini (DFR0299)

Введение

DFPlayer Mini - это компактный модуль аудио-плеера, который позволяет воспроизводить звуковые файлы в формате MP3, WMA и WAV. Он широко используется в различных проектах, где необходимо воспроизводить звуковые эффекты, музыку, записи голоса и т.д. DFPlayer Mini легко интегрируется в различные электронные устройства и системы, такие как Arduino, Raspberry Pi и другие микроконтроллеры. Он имеет небольшой размер, низкое потребление энергии и простой интерфейс управления, что делает его идеальным выбором для различных проектов DIY и встраиваемых систем. В этом обзоре мы рассмотрим основные характеристики DFPlayer Mini и способы его использования в различных проектах.

Технические характеристики

  • Напряжение питания: от 3,2 до 5 В
  • Поддерживаемые форматы аудиофайлов: MP3, WMA и WAV
  • Максимальная емкость карты памяти: 32 ГБ (Micro SD/TF)
  • Максимальное количество папок: до 100
  • Количество треков в папке: до 100
  • Выходная мощность: 3 Вт (при 4 Ом нагрузке)
  • Разрядность ЦАП: 24 бита
  • Сигнал-шум: до 85 дБ
  • Частотный диапазон: 20 Гц - 20 кГц
  • Количество уровней громкости:30
  • Режимов эквалайзера: 6 (Normal/Pop/Rock/Jazz/Classic/Base)
  • Интерфейс управления: Serial Mode, AD Key Mode,  I/O Mode
  • Размер модуля: 24 мм х 18 мм

В качестве усилителя мощности аудиосигнала в модуле используется популярная микросхема 8002D, которая имеет выходную мощность до 3 Вт на нагрузку 4 Ом при напряжении питания 5 В. Она обеспечивает высокое качество звука и имеет низкий уровень искажений.

В качестве ЦАП используется микросхема MH2024K-24SS. Она обладает высоким разрешением 24 бит, что обеспечивает высокую точность и качество воспроизведения аудио. Микросхема использует дельта-сигма модуляцию для преобразования цифровых сигналов в аналоговый формат. MH2024K-24SS также имеет встроенные фильтры, что помогает устранить нежелательные артефакты и шумы в аналоговом сигнале, а также обеспечивает защиту от перегрузок и других электрических помех.

Внешний вид и расположение выводов

Вид спереди:

Вид спереди
Вид спереди

Вид сзади:

Вид сзади
Вид сзади
Назначение пинов
Назначение пинов

Файловая система

Файлы и папки на sd карте для управления по UART должны хранится в определенном формате. Имя  файла трека обязательно должно начинаться 4-х цифр. Например: 0001.mp3 или 0010track.mp3. Имена  папок состоят из 2 цифр. 00 - 99. В общем виде структура файлов на sd карте должна иметь следующий вид: \0001.mp3. или \02\0001.mp3.

Для остальных режимов управления к именам файлов и папок строгих требований нет.

Интерфейсы управления

Плата поддерживает 3 режима управления: через интерфейс UART(Serial Mode), управление кнопками (AD Key Mode), упрощенный режим(I/O Mode).

Serial Mode

Служит для управления модулем с помощью внешнего микроконтроллера через UART интерфейс. В целом протокол управления очень похож на тот что используется в модуле DY-SV17f. Ознакомиться с ним можно здесь.

Управление осуществляется с помощью отправки через серийный порт микроконтроллера последовательности команд. Настройки порта должны быть следующие: Скорость 9600 бод, Data bits :1 Checkout :none Flow Control :none
Формат команды следующий:
$S  VER Len CMD Feedback para1 para2 checksum $O
Описание значений параметров в таблице ниже:

Значения параметров команды
Значения параметров команды

Управляющие команды в таблице ниже:

Управляющие команды
Управляющие команды

Команды запросов:

Команды запросов
Команды запросов

Например, нам необходимо выбрать первый файл для воспроизведения. Для этого необходимо направить модулю через последовательный интерфейс следующий набор байтов:

7E FF 06 03 00 00 01 FE EE EF

7E - стартовый байт
FF - версия
06 - количество передаваемых байт данных
03 - команда выбора номера трека
00 - ответ от модуля получать не нужно
00 - старший байт номера трека. Здесь 0 так как номер для указания 1 трека достаточно 1 байта
01 - младший байт номер трека. Для первого трека равен 1
FE - старший байт контрольной суммы
EE - младший байт контрольной суммы
EF -  Конец команды

В данном примере для передачи номера трека использовался только один параметр - младший байт. Если номер трека больше 255, то для передачи его номера в команде нужно уже 2 байта данных. Например для выбора трека 1000.mp3 необходимо перевести 1000 в шестнадцатеричный формат. Получится число 0x03E8. Соответственно старший байт будет равен 03, а младший E8.

Отдельно стоит упомянуть параметр Len. Его значение вычислить тоже довольно просто. В данном примере он вычисляется так 1 байт на команду + 1 байт на флаг ответа + 2 байта на номер трека + 2 байта на контрольную сумму. Итого получаем 6 байт передаваемых данных.

Контрольная сумма - эта сумма всех байт между начальным и конечными байтами команды  умноженная на -1. Также делится на старший и младший байт. То есть (FF+06+03+00+00+01) *-1=112*-1=FEEE. Старший байт FE, младший байт EE.

Данный формат передачи в целом очень прост, но не очень понятен для визуального восприятия. Для более простого управления по UART существует специальная библиотека DFRobotDFPlayerMini.

AD Key Mode

Используя всего два входа ADKEY1 и ADKEY2 мы можем подключить 20 кнопок, которые позволят воспроизводить произвольно 14 файлов и управлять громкостью.

Кнопки подключаются к выводу ADKEY1 и ADKEY2 через резисторы разных номиналов. Определение какая конкретно кнопка нажата определяется по номиналу сопротивления на указанных выводах.

Схемы номиналов сопротивлений и их значений на рисунках ниже:

Схема номиналов сопротивлений
Схема номиналов сопротивлений
Номиналы сопротивлений
Номиналы сопротивлений

I/O mode

Это самый простой способ управления модулем. Он, как и AD Key Mode, не требует контроллера. Нужно подключить только динамик, 4 кнопки и подать питание от 3.3 до 5 Вольт.

Обычное нажатие на Pre/Vol+ (Next/Vol-) означает предыдущий или следующий трек, длинное нажатие и удержание — громкость больше или меньше.

Схема подключения кнопок на рисунке ниже:

I/O Mode
I/O Mode

Схемы подключения

Логика последовательного порта модуля работает с напряжением 3.3 вольта. Если ваш микроконтроллер работает от напряжения 5В, то рекомендуется выводы RX и TX подключать через резистор 1 кОм. Общая схема подключения по последовательному интерфейсу представлена на рисунке ниже:

Подключение к микроконтроллеру по UART
Подключение к микроконтроллеру по UART

Пины DACL и DACR служат для подключения внешнего усилителя или наушников. Наушники рекомендуется подключать через резистор 100 Ом для ограничения тока. Общая схема подключения на рисунке ниже:

Подключение внешнего усилителя
Подключение внешнего усилителя

Пины SPK1 и SPK2 служат для подключения внешнего динамика до 3Вт 4Ом к усилителю 8002D на плате модуля. Общая схема подключения на рисунке ниже:

Подключение динамика
Подключение динамика

При подключении динамика через DAC или SPK пины при слабом источнике питания могут возникнуть такие проблемы как треск в динамике или случайные перезагрузки устройства. Поэтому не рекомендуется подключать к пинам питания микроконтроллера. Они попросту не способны выдать необходимый ток. Лучше использовать внешний источник.

Также модуль можно использовать в качестве внешнего кард ридера подключив его через USB кабель к ПК по следующей схеме:

Подключение по USB
Подключение по USB

Заключение

В заключение, можно с уверенностью сказать, что DFplayer mini является надежным и удобным устройством для воспроизведения звуковых файлов в проектах DIY. Его маленький размер, низкий потребляемый ток и простота в использовании делают его идеальным выбором для проектов, где важны компактность и энергоэффективность.

DFplayer mini поддерживает различные форматы аудиофайлов, такие как MP3, WAV и WMA, и может воспроизводить звуки с USB-накопителей или микро-SD карт. Кроме того, он имеет встроенный усилитель, что позволяет воспроизводить звук на небольшом динамике без необходимости внешнего усилителя.

Однако, следует отметить, что  иногда возникают проблемы, связанные с питанием и шумом при использовании DFplayer mini. Чаще всего они решают подключением более мощного источника питания.

В целом, DFplayer mini является отличным выбором для тех, кто ищет простой и надежный способ добавления звуковых эффектов в свои DIY проекты.

Материал также доступен на моем сайте https://projectalt.ru и в группе ВК.