Не так давно я публиковал DIY-статью про часы на газоразрядных индикаторах (ознакомиться можно здесь), там среди прочего я упоминал что можно расширить функционал этих часов добавив будильник. Для этого нужно в схему добавить модуль MP3 плеера DFPlayer Mini — вот о нём сегодня и будет небольшой обзор.
Ехала посылка ко мне полтора месяца, в конце концов в один прекрасный день в почтовом ящике обнаружил заветный черный пакет. Внутри был зип пакетик с нашим модулем:
Представляет собой маленькую платку размером 2х2 см, на верней стороне распаян слот для microSD карты, справа и слева которого распаяны две группы контактов по 8 штук.
С обратной платы две микросхемы, та что поменьше — это НЧ усилитель на 3Вт, более крупная — микросхема MP3 декодера:
По сути модуль это миниатюрный MP3 плеер, который может воспроизводить файлы c microSD карты. Управлять им можно как самостоятельным устройством — подключив кнопки, или подключив его к микроконтроллеру.
Характеристики модуля:
— Напряжение питания: 3,2В — 5В
— Аудио выходы: моно / 3 Вт или стерео выход на усилитель
— Поддерживаемые частоты сэмплирования (кГц): 8 / 11.025 / 12/16 / 22.05 / 24/32 / 44.1 / 48
— Разрядность АЦП: 24-разрядный
— Динамичный диапазон: 90dB
— Соотношение сигнал/шум: 85dB
— Поддерживаемые файловые системы: FAT16 и FAT32
— Максимальный размер раздела: 32 ГБ
— Управление: UART порт, прямое подключение кнопок, подключение кнопок к АЦП входу
— Максимальное количество папок: 100
— Максимальное количество файлов в папке: 255
— Уровни изменения громкости: 30
— Эквалайзер: 6 пресетов (Normal / Pop / Rock / Jazz / Classic / Base)
Согласно даташиту есть несколько схем подключения модуля для управления им. Первая — простой вариант с двумя кнопками:
В таком варианте: короткое нажатие на кнопку S1 — следующая запись, длительное нажатие на кнопку S1 — громкость меньше, короткое нажатие на кнопку S2 — предыдущая запись, длительное нажатие на кнопку S2 — громкость больше.
Более сложный вариант с резисторами и двадцатью кнопками:
Но это совсем не интересно, мы же будем управлять модулем через последовательный интерфейс UART. Для этого надо подключить линии RX и TX к микроконтроллеру. Как я упоминал в начале, модуль будет использоваться в часах, для будильника и оповещения. Схема подключения такая:
Кстати существует библиотека Arduino для этого модуля — ссылка
Для начала необходимо подготовить карту памяти, создал на ней три папки — 01, 02, 03. В папке «01» три файла мелодий будильника, в папке «02» три файла для звуков оповещений (например каждый час будет воспроизводиться короткое «динь»), в папке «03» лежат 24 файла озвучивания времени каждый час.
Разобрал часы, подключил для проверки схемы, маленький динамик нашелся от какой-то детской игрушки:
Всё заработало без проблем, собираем до кучи. На плате часов пришлось заменить сервисный PLS-разъём на угловой, иначе бы не поместилось:
На плате модуля DFPlayer Mini демонтировал PLS-разъёмы, изолировал её кусочком пластика, и этот «бутерброд» приклеил двухсторонним скотчем:
Демонстрация как это работает, качество не очень, снимал на тапок:
Проговаривание времени каждый час отключил (надоело), оставил «Динь» каждый час и будильник.
Что можно сказать в итоге — прикольный модуль для самоделок, можно его использовать в качестве озвучивания разных режимов в автоматике, оповещения о неисправностях, или сигнализации, та где угодно.
UPD. В комментариях проcили поделится MP3-файлами — ссылка
Всем спасибо за внимание, удачных покупок, и будьте здоровы.
Планирую купить+33Добавить в избранноеОбзор понравился+84
+123
нуууууу… не соглашусь. мне бывшая жена в своё время говорила что часы громко тикают — я не верил (речь не о часах у нас дома). сейчас понимаю что наверно иногда да, громко. иногда не слышно, иногда прям бесит.
Датчик освещенности регулирует только яркость свечения ламп
Полагаю, человеку, самостоятельно собравшему такие часы, несложно в цепь от усилителя к динамику вставить транзистор, управляемый сигналом от датчика освещённости, сделать громкость пропорциональной освещённости. Не обязательно линейную, даже простое отрубание при снижении освещённости ниже какого-то порога — уже будет хорошо.
У меня есть настенные кварцевые стрелочные часы с чириканьем разных птиц каждый час. Стоит фотодатчик, в сумерках чирикают тихо, в темноте вообще не издают звуков.
тоже недавно дособрал такие же часы на лампах. Смотрятся cекc!
фото
прикрутил этот же модуль для будильника. С его работой есть очень неприятная особенность, а именно если поставить голосовое оповещение каждый час или это самое «динь» и будильник, на 8… 9… 10 ровно, то «динь» сработает, а будильник НЕТ! и еще будильник играет ровно столько, сколько длится его мелодия(зацикливать мелодию прошивка не умеет) писал об этом в группе автора часов, но так увы тишина… Сам в прошивках этих О, да и автор исходников никаких не дает
Сам по себе этот плеер — довольно капризная штука, скажу по опыту.
Главное, не забывайте, что уровни у него 3.3V, а не 5, и не верьте документации, она врёт и путает!
+ после его включения надо сбрасывать буфер приёма через небольшое время, модуль шлёт туда мусор, и любит некоторые ответы слать ДВАЖДЫ, о чём документашка умалчивает, опять же, чистите буфер!
Присмотритесь и поймете, что эта уже уде не та плата, старая была на YY5200 если мне память не изменяет и вот эта микруха да, капризная но и качественная, а сейчас в этом модуле стоит JL, и этим все сказано. В общем подделка на ту самую плату.
Как просто мп3 работает именно старая версия, за эту ничего не скажу, JL на дух не переношу.
DY-HV8F DY-HV20T Voice Playback Module
Питание у них 6-35 Вольт.
Один вариант с карточкой, второй с внутренней памятью, пишется как USB drive.
Есть более простые их версии.
DY-SV5W DY-SV8F
Питание только 5 Вольт.
Также варианты с карточкой и с флеш памятью.
Главное у них ( кроме работы по сериалу) возможность играть одну из 8 мелодий просто коммутируя нужный пин
или одну из 256 переключив плату в режим ввода в двоичном коде.
При этом никаких процессоров не требуется.
Переключаются режимы джамперами на плате.
Размер плат конечно чуть побольше и цена немного выше.
я себе давно такой к часам прикрутил, но со временем он начал ужасно фонить и действовать на нервы, пришлось отключить, подключения электролита по питанию не помогло избавится от шума.
Обзор понравился, бонус про фото понял, не понял где бонус папок с аудио, а что сильно сложно сделать говорящие часы, чтоб при нажатии на кнопку говорили текущее время?
ага… только если цифры на Русском. а то у меня есть Diy kit clock музыкальные часы на DS3231, точность хода хорошая, но вот балякают на Китайском и Английском, может попробую им подсунуть русские авдио треки… вдруг на русском заговорят…
Я себе DY-SV17F набрал (стоит он кончено чуть дороже, но для него не нужно флешку покупать), есть ещё DY-SV8F под который даже плату можно не разводить что бы поиграться.
Правда у этих модулей есть маленький нюанс, записи воспроизводятся не по названиям, а по порядку записи на флеш накопитель. Поэтому если нужно получить последовательный список воспроизведения, то нужно грохнуть все файлы и залить их заново.
Модуль неплохой, но в качестве standalone дверного звонка не подходит. Если нажать и подержать кнопку звонка, то модуль начитает играть песню по кругу. Безостановочно.
Я бы на каждый час записал звуки боя маятниковых часов. И по поводу ночи: здесь всё индивидуально — знакомая не может спать просто под тиканье маятника, а мне и бой не мешает.
Обзор весьма кстати, жду такие же модули для метеостанции и детской игры.
В связи с этим вопросы:
1. Если модуль установил сигнал BUSY лог.1 (сейчас проигрывается мелодия) — то подача команды сразу прерывает воспроизведение и начинает воспроизводить другой файл?
2. Как быстро начинает проигрываться файл после команды через UART?
Если генерировать фразы, то возможно ли воспроизведение без пауз или будет так:
У меня есть настенные кварцевые стрелочные часы с чириканьем разных птиц каждый час. Стоит фотодатчик, в сумерках чирикают тихо, в темноте вообще не издают звуков.
Главное, не забывайте, что уровни у него 3.3V, а не 5, и не верьте документации, она врёт и путает!
+ после его включения надо сбрасывать буфер приёма через небольшое время, модуль шлёт туда мусор, и любит некоторые ответы слать ДВАЖДЫ, о чём документашка умалчивает, опять же, чистите буфер!
Но дёшево и звук вполне годный.
Как просто мп3 работает именно старая версия, за эту ничего не скажу, JL на дух не переношу.
Мне особо нравится в такой обработке — ссылка
DY-HV8F DY-HV20T Voice Playback Module
Питание у них 6-35 Вольт.
Один вариант с карточкой, второй с внутренней памятью, пишется как USB drive.
Есть более простые их версии.
DY-SV5W DY-SV8F
Питание только 5 Вольт.
Также варианты с карточкой и с флеш памятью.
Главное у них ( кроме работы по сериалу) возможность играть одну из 8 мелодий просто коммутируя нужный пин
или одну из 256 переключив плату в режим ввода в двоичном коде.
При этом никаких процессоров не требуется.
Переключаются режимы джамперами на плате.
Размер плат конечно чуть побольше и цена немного выше.
Но нет…
Там цап и я офигею, если он реально 24 честных. Что вообще никакого смысла не имеет в мп3.
Интересно, можно ли автомобильный колокол переоборудовать в индивидуальную кричалку.
А то на банальное виу-виу случайные свидетели голову уже давно не оборачивают.
Уже пруд пруди, от схем, до продажи готовых устройств.
Судя по цифрам им удалось убить разрядность с заявленных 24 до реальных 14 бит.
Правда у этих модулей есть маленький нюанс, записи воспроизводятся не по названиям, а по порядку записи на флеш накопитель. Поэтому если нужно получить последовательный список воспроизведения, то нужно грохнуть все файлы и залить их заново.
5btc.ru/voice/
Я бы на каждый час записал звуки боя маятниковых часов. И по поводу ночи: здесь всё индивидуально — знакомая не может спать просто под тиканье маятника, а мне и бой не мешает.
В связи с этим вопросы:
1. Если модуль установил сигнал BUSY лог.1 (сейчас проигрывается мелодия) — то подача команды сразу прерывает воспроизведение и начинает воспроизводить другой файл?
2. Как быстро начинает проигрываться файл после команды через UART?
Если генерировать фразы, то возможно ли воспроизведение без пауз или будет так:
Если паузы некомфортные, то придётся ставить два таких модуля, подавая на них команды с некоторым упрежденим