СХЕМА MP3 ПЛЕЕРА

Простейший самодельный MP3 плеер Сакура с открытым исходным кодом

Купив деталей на 30 долларов и с добрым количеством терпения, вполне можно собрать целый МР3 плеер, с открытым исходным кодом, и широкими возможностями к модификации. Он может быть модифицирован так, что будет принимать команды по последовательному интерфейсу, может быть частью художественного проекта, использован как голос для вашего очередного умного говорящего робота-друга, или наполнен музыкой, и использован как есть. Вставляйте карту какого хотите размера, вплоть до теоретического предела формата MMC. Весь программный код и схемы, представленные здесь, распространяются свободно.

Вебинар «Новинки и решения Traco для промышленных и отраслевых приложений» (28.10.2021)

Основные возможности плеера: режим воспроизведения в случайном порядке, базовая навигация в треках, регулятор громкости, поддержка FAT32, поддержка фрагментированных файлов, неограниченное количество файлов в корневом каталоге и высокое качество воспроизведения. Файлы с битрейтом 256 кбит/с воспроизводятся без сбоев. Поддерживаются файлы с разным битрейтом, максимальный – 320 кбит/с.

Wav -файлы так же поддерживаются, но они должны быть меньшего качества чем CD , до тех пор, пока вы не поставите кварцевый резонатор для PIC контроллера с большей частотой. В моем тестовом устройстве это работает, но использовать PIC контроллер на тактовой частоте более 8 мегагерц при напряжении питания всего 3,3 вольта проблематично. Я все еще работаю над воспроизведением wav -файлов, по этому, если вы столкнулись с забавными результатами, воспроизводя wav -файлы, дайте мне знать.

Простейший самодельный MP3 плеер с открытым исходным кодом

Чтобы записать данные на карту памяти, вам потребуется устройство чтения/записи карт. Во множество компьютеров такие устройства встроены. Внешние USB модели доступны в продаже по цене приблизительно в 10 долларов. Проверьте формат файловой системы карты, он должен быть FAT32 а не FAT16.

Для нормального проигрывания загрузите MP 3-файлы на карту (проверьте, чтобы все файлы имели расширение «. mp 3») и вставьте ее в плеер. Включите плеер и он сразу же начнет воспроизводить первый трек. Файлы воспроизводятся в таком порядке, в каком они были записаны на карту памяти.

Чтобы перейти в режим воспроизведения в случайном порядке, держите нажатой кнопку «следующий трек» (next track) при включении плеера. Он останется в этом режиме до следующего цикла выключения/включения. Как только все песни будут проиграны, плеер переходит в спящий режим до следующего цикла выключения/включения.

Предостережение для новичков! Это проект промежуточного уровня. Вам потребуются такие вещи как PIC программатор, некоторое знание программирования на языке С, так же как и неплохого, но и не огромного знания электроники. Осциллограф также не повредит. Будьте осторожны, детали очень маленькие.

Почему проект назван Сакура? Этот проект начался, когда везде цвели вишни. Сакура означает цветение вишни по Японски. И первый прототип проекта был помещен в корпус из розового пластика.

Схема

Исходный код

Исходный код написан на С. Я использую PCM компилятор для контроллеров средней разрядности (PCM midrange compiler) от CCS. Он стоит около ста долларов и производит очень компактный код, имеет полный набор встроенных функций и типов данных. Я очень доволен им. Web сайт разработчиков компилятора — ccsinfo.com .

Для людей, которым не нужно модифицировать код программы есть . hex файлы, готовые для загрузки непосредственно в PIC контроллер. Не забудьте очистить флажки ( fuses ) BROWNOUT и WATCHDOG , это будет значить – запретить их.Если вы не сделаете этого, все устройство откажется работать. Это наиболее распространенная ошибка.

На текущий момент все 4 килобайта памяти программ почти полностью заняты. 256 байт флеш ( EEPROM) памяти полностью используются для хранения таблиц функции воспроизведения в случайном порядке. Имеется несколько некритичных функций, которые можно удалить, чтобы освободить немного пространства в памяти, такие как интерфейс кнопок и подпрограммы режима воспроизведения в случайном порядке. Если компания Микрочип когда ни будь выпустит 18-ногий контроллер с 8 килобайтами памяти, я обязательно использую его для этого проекта. Так же вы можете сделать код более эффективным, чем сделанный мной код. Если сделаете, дайте мне знать, что именно вы сделали.

Расположение элементов

Щелкните здесь, что бы получить версию расположения элементов пригодную для печати.

АУДИО ПЛЕЕР СВОИМИ РУКАМИ

В настоящее время, когда в магазинах изобилие всевозможных гаджетов; планшетов, смартфонов, mp3 плейеров, может возникнуть вопрос для чего собирать цифровое устройство дома, своими руками? Дело это непростое, да и удовольствие не из дешевых. Но зачем в советское время собирали детекторные приемники, приемники на одном или нескольких транзисторах. Ведь и тогда в магазинах были в продаже так называемые “транзисторы”, маленькие переносные радиоприемники с хорошим дизайном, да и по своим параметрам часто превосходящие самодельные. Дело в том, что радиолюбители по натуре люди творческие, и никогда не пойдут в магазин покупать что либо, если такое же устройство или аналог, можно собрать своими руками. Так произошло недавно и со мной. Несмотря на то, что есть и mp3 плейер и плейер на телефоне, решил собрать аудиоплейер своими руками. Просматривая недавно радиолюбительские сайты, на одном интернет ресурсе нашел схему интересного и относительно простого аудио плейера Wav файлов. Если кто-то не в курсе, что это за формат, Wav, поясню, это формат аудиофайлов, используется часто в работе музыкантами. Почему именно Wav, а не более популярный в широких кругах mp3? Аудио плеер Wav файлов собрать значительно легче, чем mp3 файлов.

микроконтроллер AVR attiny2313v

В моем устройстве применен распространенный и недорогой микроконтроллер AVR attiny2313v. Ниже вы можете видеть его схему, взятую с интернет ресурса, по которой сделал данный плеер с небольшими изменениями:

Схема плеера

АУДИО ПЛЕЕР СВОИМИ РУКАМИ - схема

Файлы Wav формата хранятся на micro SD флешке, подключенной в устройстве через SD адаптер. При желании если позволяет опыт, можно переразвести печатную плату и подключать micro SD флешку через собственный разъем. Аналогичный разъем стоит в сотовых телефонах. При этом нужно помнить, что номера контактов SD флешки не соответствуют номерам контактов micro SD флешки. Список контактов обоих флешек с нумерацией приведен на следующем рисунке:

Назначение контактов SD и micro SD

В устройстве, которое планируется как переносной аудио плеер с питанием от аккумуляторов, будут применены 2 последовательно соединенных б\у аккумулятора от сотовых телефонов на 3.7 вольта каждый. Привожу рисунок разведенной мною печатной платы из программы sprint layout:

Рисунок печатной платы плеера мп3

Распечатанный рисунок на печатную плату был переведен ЛУТом. Перевелось в принципе нормально, за исключением трех контактов стабилизатора, с левого края платы.

Плата подготовленная к ЛУТу

Вместе эти два аккумулятора, которые выбрал, дают 7,4 вольта. Так как для питания карты памяти необходимо питание 3.3 вольта, решено было питать все устройство, в том числе и микроконтроллер от стабилизатора 3.3 вольта в корпусе ТО-220. Тут использовал AZ1085-3.3. Стабилизатор без радиатора должен легко выдавать стандартный 1 ампер, что для моих целей более чем достаточно. Так выглядит стандартный корпус стабилизатора в ТО-220.

корпус стабилизатора в ТО - 220

Если применить для питания карты памяти отдельный стабилизатор на 3.3 вольта, думаю даже в корпусе ТО — 92 будет достаточно. Тогда микроконтроллер можно будет питать от стандартных 5 вольт. Также на печатной плате были установлено гнездо Джек-3.5 стерео, в котором запараллелил оба канала, чтобы звук был хоть и моно, но в обоих наушниках. Так выглядела плата после травления:

плата после травки

Контакты стабилизатора перенеслись при ЛУТе не полностью, и были подрисованы перманентныим маркером. Травить предпочитаю лимонной кислотой и перекисью водорода:

Читайте также  УНИВЕРСАЛЬНЫЙ СТРЕЛОЧНЫЙ ПРИБОР ДЛЯ ПРОВЕРКИ ДЕТАЛЕЙ

Травление лимонной кислотой

Питание планируется помимо аккумуляторного, стационарное, через гнездо, от нестабилизированного адаптера питания, с которого подается 11 вольт. В обвязке стабилизатора, в отличие от стандартных конденсаторов на 0.33 и 0.1 микрофарад, которые ставятся в схеме на 7805, должны были быть применены танталовые конденсаторы на 10 микрофарад по входу и на 22 микрофарада по выходу. Поискав в своих закромах, нашел 3 нужных конденсатора на 10 микрофарад, по выходу поставил 2 параллельно. Управляется устройство тремя кнопками, 2 из них без фиксации, это Выбор директории Dir1\Dir2 и Play\Select, и 1 с фиксацией, Repeat, то есть повтор. Когда она нажата, трек повторяется бесконечно. Залуженная плата и просверлены отверстия:

Плата после лужения и сверления

В этом варианте устройства выбор трека кнопками, подключенными к контактам микроконтроллера 6,7,8,9 не осуществлен. Также не используется UART, контакты МК 2,3 и включение эффектов Монстер и Хелиум, контакты 12,15. SD адаптер временно прикрепил к плате на скотч, впоследствии закреплю на термоклей. Вот собранное устройство:

АУДИО ПЛЕЕР СВОИМИ РУКАМИ

При воспроизведении мигает зеленый светодиод, при включении горит также зеленый. При ожидании подключения флеш карты, постоянно мигает желтый светодиод. При переключении с последнего трека на первый, также 1 раз мигает желтый светодиод.

аудиоплейер Wav файлов, на базе микроконтроллера AVR attiny2313v

При использовании устройства совместно с активной акустикой, переменный резистор регулирующий громкость не нужен, но при использовании с наушниками, без него пользоваться становится неудобно. Поэтому был установлен переменный резистор на 4.7 килоОма. При подключении динамика напрямую на выход микроконтроллера через конденсатор на 100 микрофарад громкость очень тихая, еле слышно. При использовании с наушниками, громкость достаточная.

Конвертер WAV файлов

Для пакетной конвертации файлов хорошо подходит Weeny Free Audio converter. Формат файлов должен быть WAV, 8 бит, 32000 герц, Моно. Файлы должны быть размещены в двух папках созданных в корневом каталоге флешки. Папки должны называться (1) и (2), без скобок. Начинаться файлы должны с букв английского алфавита, первый файл, a_любой текст, второй, b_любой текст, третий, c_любой текст, d… и так далее. Например, как на следующем рисунке:

Пример названия файлов wav

Поддерживаются любые Micro SD карты объемом до 2 гигабайт. Карты памяти SDHC или SDXC не поддерживаются. Рисунок как выставлять фьюзы для программы uniprof приведен ниже:

Фьюзы плеера МК

Видео работы плеера

Кроме основной функции, такое устройство можно задействовать как электронный звонок со сменными мелодиями. Печатная плата для программы sprint layout с прошивкой для attiny2313 выложены в архиве. Автор проекта — AKV.

Плата MP3 плеера за 1$

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

Плеер построен на микросхеме GPD2856A производства китайской Shenzhen Chenbing electronics (даташит). Микросхема усилителя 8002B того же производителя (даташит).

Характеристики:

Формат воспроизведения: mp3;
Поддерживаемые носители: USB (до 32 Гб.), micro SD (до 16 Гб.);
Питание: 3,7 — 5,5 В.;
Автоматические определяет подключение наушников;
Возможность прослушивания радио при использовании модулей RDA5807, BK1080 и RTC6207E.
Размер платы: 47 мм * 34 мм.
Особенность: при питании от аккумулятора некоторые USB-флешки могут не читаться.

Общий вид:

Пайка аккуратная, видно что выполнялась роботом. Флюс отмыт. Контакты для подключения аккумулятора и microUsb дополнительно пропаивал я.


Для тестов использовался динамик 0,5 ГД-37.


Описание работы:

При включении несколько секунд моргает красный светодиод (который я затем заменил на зеленый). Треки проигрываются в том порядке, как вы скопировали их на флешку. Чтобы изменить порядок, переименуйте песни с добавлением номера (1, 2, 3. ). Плеер не запоминает место в треке, где вы остановились, зато запоминает сам трек.
Кнопки выполняют свои функции, но производитель микросхемы использовал очень неудачное решение, совместив на одной кнопке переключение трека и регулирование громкости, так как часто вместо того, чтобы увеличить/уменьшить громкость переключаешь трек.

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

Prev / V— — предыдущий трек (короткое нажатие)/ уменьшение громкости (длительное нажатие);
Next / V++ — следующий трек/ увеличение громкости;
P/P / Mode — play, пауза, режим (выбор флешка или USB);
Repeat — повтор.

На небольшой громкости плата «жрет» всего 30-40 мА., на средней — 70-90, а на максимальной — 160 мА.


Схема из даташита:

Как видно из этой схемы, дополнительно можно добавить EEPROM 24lc02 и радио, например, на RDA5807, который продается в виде модуля за 0,6$.

Тестирование звучания:

В качестве тестовых треков использовались:
— Marika Takeuchi – The Arctic Lite;
— The Beatles — If I Fell;
— The All-American Rejects – Sunshine;
— A-ha — Lifelines;
— Jan Cyrka — The Right Road.

Послушаем, как звучит?

Возможно на видео плохо слышно, но… Гнесинку я не заканчивал, но даже человек без музыкального слуха скажет, что у платы соотношение сигнал/шум не сильное место. При включении платы на долю секунды слышится сильный треск в динамике. При паузе уровень шума снижается, но его можно услышать на расстоянии около 20 см. от динамика. С другой стороны, от платы за 1$ многого и не ждешь.

Как включить эквалайзер:
В даташите на 4 странице есть таблица дополнительных кнопок и их описание, среди них есть кнопка № 8 — EQ, для работы которой помимо кнопки необходим резистор на 100 кОм. На плате есть кнопка repeat (повтор), а к ней впридачу — резистор R10. Если Вам эта кнопка не нужна, то можно выпаять резистор на 27 кОм, и поставить на его место 100 кОм.

Проверим работу эквалайзера:

Иные возможные доработки:
Некоторые покупатели в отзывах на товар также советуют заменить конденсаторы C7 и C8 на 0,1 мкФ. чтобы улучшить звук в наушниках. У меня после замены звук стал еще тише, так что вернул кастомные кондеры на 0,05 мкФ.
Также интересен совет vismyk: если Вам не нужно переключение режимов с флешки на USB и обратно, то можно заменить R3 на 18 кОм.

Итоги:

Достоинства:

— Цена;
— Возможность проигрывания с USB и micro SD;
— Наличие какого-никакого, но эквалайзера.

Недостатки:

— Слышимый шум при проигрывании треков;
— Звук плоский, не очень качественный (что ожидаемо);
— Совмещенные кнопки переключения треков и громкости.

Я бы рекомендовал использовать эту плату там, где качество звука не критично — это игрушки и иные подобные поделки.

Урок 19. Делаем MP3-плеер на DFPlayer Mini и Arduino.

.Урок 19. Делаем MP3-плеер на DFPlayer Mini и Arduino.

Как воспроизвести аудиофайлы в формате wav я уже рассказывал в уроке: Arduino SD карта. Воспроизводим звуки и музыку в wav формате. Данный способ подходит, когда нужно воспроизвести файлы не очень высокого качества, например, уведомления, оповещение и пр. Если же надо воспроизводить файлы в формате mp3, нам поможет модуль DFPlayer Mini.

модуль DFPlayer Mini

MP3-плеер DFPlayer Mini позволяет воспроизводить аудиофайлы, записанные на карту памяти формата microSD. С помощью этого плеера можно управлять музыкой: приостановка и возобновление воспроизведения аудиофайла. А также можно установить громкость из 30-ти уровней громкости и одни из 6-ти режимов эквалайзера.

Читайте также  РЕГУЛИРУЕМЫЙ БЛОК ПИТАНИЯ

DFPlayer отлично подходит для Arduino проектов, в которых нужно воспроизводить уведомления или оповещения, а также для музыкального сопровождения с автоповтором выбранного трека, воспроизведением всех треков, или случайное воспроизведение треков.

Характеристики DFPlayer MP3 mini:

Характеристики DFPlayer MP3 mini:

  • Напряжение питания: 3,3–5 В
  • Количество каналов: 1 моно, 3 Вт + 2 стерео, без усилителя
  • Поддерживаемые частоты дискретизации: 8, 11, 12, 16, 22, 24, 32, 44,1, 48 кГц
  • Разрядность ЦАП: 24 бита
  • Поддерживаемые файловые системы: FAT16, FAT32
  • Максимальный объём SD-карты: 32 ГБ
  • Количество каталогов композиций: до 100
  • Количество композиций в каталоге: до 255
  • Форматы аудиофайлов: MP3, WAV, WMA
  • Кол-во уровней громкости: 30
  • Режимов эквалайзера: 6 (Normal/Pop/Rock/Jazz/Classic/Base)

Для реализации самого простого плеера не нужно подключать DFPlayer к Arduino. Достаточно подключить несколько кнопок вот по такой схеме.

Для реализации самого простого плеера не нужно подключать DFPlayer к Arduino.

Но у нас уроки про Arduino, поэтому рассмотрим простой пример подключения MP3-плеер к Arduino, который подключается по аппаратному или программному UART порту (пины RX и TX) Ардуино.

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

Для воспроизведения аудиофайла необходимо поместить на карту памяти microSD один трек. Файлы рекомендуется помещать в папку mp3 и называть порядковыми номерами вот в таком формате 0001.mp3. Мой опыт показывает, что можно скидывать файлы с любым названием и помещать в корень флешки, но воспроизводиться файлы будут в том порядке, в каком их загрузилина карту памяти. При пакетной загрузке одни файлы загружаются быстрее, а другие медленнее, из-за чего воспроизведение треков идет в хаотичном порядке.

Пример MP3-плеера на DFPlayer Mini и Arduino с возможностью выбора трека и изменением громкости.

Давайте сделаем полноценный MP3-плеера на Arduino. Для этого нам понадобится:

5. Динамик. Я использую от ноутбука.

6. 2 резистора на 10 кОм.

Все компоненты нашего будущего MP3-плеера на DFPlayer соединяем по схеме.

Все компоненты нашего будущего MP3-плеера на DFPlayer соединяем по схеме.

Загрузим файлы с треками на карту памяти microSD, я использую 3 трека с YouTube, чтобы можно было воспроизводить музыку в видеоролике и не получить бан. Архив с треками можно скачать внизу статьи, в разделе материалы для скачивания.

Загрузим файлы с треками на карту памяти microSD, я использую 3 трека с YouTube

Код для MP3-плеера на DFPlayer Mini и Arduino с возможностью выбора трека и изменением громкости будет вот такой.

У платы Arduino NANO всего один аппаратный Serial Port, поэтому будем использовать программный порт. Для этого нужно установить и подключить библиотеку SoftwareSerial.h.

подключить библиотеку SoftwareSerial.h.

Чтоб проверить, подключен или нет DFPlayer используется условие:

Чтоб проверить, подключен или нет DFPlayer используется условие:

Если в мониторе порта мы видим надпись «DFPlayer Mini online.» все подключено правильно и работает.

Данные строки кода

Включают первый трек. И выводят в монитор порта информацию об этом.

Включают первый трек. И выводят в монитор порта информацию об этом.

Строки ниже выводят в монитор порта полезную информацию о статусе работы.

Строки ниже выводят в монитор порта полезную информацию о статусе работы.

Первая строчка выводит статус: цифра с кодом.

Вторая строчка выводить уровень текущей громкости от 0 до 30

Третья выводит настройки эквалайзера, также в цифровом значении.

Четвертая выводит, сколько треков найдено на карте памяти.

Последняя стока выводит, какой трек воспроизводится сейчас.

В мониторе порта это будет выглядеть вот так:

В мониторе порта это будет выглядеть вот так:

В основном цикле loop выводим условия проверки нажатия той или иной кнопки. И выполняем нужную команду.

Это одно условие для примера, остальные устроены аналогично, их рассматривать не будем. Список команд для работы с DFPlayer Mini myDFPlayer.next(); // Воспроизвести следующий mp3

Как видите, не так много кода и алгоритм работы достаточно несложный. Планирую реализовать пару проектов с использованием модуля DFPlayer Mini и Arduino, ESP8266, ESP32 для публикации на сайте. Благо, опыт работы с этим модулем и данными платформами есть.

ару проектов с использованием модуля DFPlayer Mini и Arduino, ESP8266, ESP32 для публикации на сайте.

Пишите ваши предложения и пожелания в комментариях. Чем больше будет откликов, тем чаше будут выходить проекты и уроки на сайте.

Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.

СХЕМА MP3 ПЛЕЕРА

mp3 плеер на картах памяти

Данная схема мною была найдена случайно на одном форуме, авторство принадлежит сайту mp3vkarmane.nm.ru

хема представляет собой простой Mp3 плеер на картах пямяти SD и ММС (до 1GB)!

Плеер состоит из mp3-декодера VS1011 (VS1001), контроллера PIC16F73 и собствено карты пямяти.

Основные характеристики:

Напряжение питания: 3 В
Средний потребляемый ток: 35 ма
Носитель информации: MMC flash card, SD (mini/micro), FAT16
Формат файлов: MPEG 1,2 Layers I,II,III; 2.5 Layer III
Битрейт: до 256kbps, в т.ч. VBR

Схема устройства:

Как видите, ничего сложного нет!

Печатную плату вы можите скачать в конце статьи, там же и прошивку для контроллера!
.

Со схемой разобрались, давайте теперь не много о работе плеера, а самое главное об управлении!

Вот что пишет автор данной статьи:
Управление производится с пом. кнопок S1-S4. В контроллере включены подтягивающие резисторы порта B, поэтому внешних «подтяжек» не требуется. Исключение составляет кнопка S4. Она предназначена для временного отключения плеера. При её нажатии декодер и MMC переводятся в режим низкого энергопотребления, контроллер переходит в sleep. Порты остальных кнопок настраиваются как выходы, а подтяжки отключаются. Чтобы плеер тем не менее мог реагировать на S4 (включить), введено сопротивление R5.

Сразу после включения плеера кнопкой S5 начинается воспроизведение с первого трека в корневом каталоге. Кнопки S1 и S3 управляют громкостью (+ и — соотв.). При нажатой кнопке S2 кнопками S1 и S3 производится переключение треков, а кнопка S4 выполняет включение/отключение «Bass/treble enhancer». Переключение треков циклическое(по всему корневому каталогу). Кнопкой S4 (при ненажатой S2) можно остановить воспроизведение. При этом потребляемый ток уменьшается до 50-200 мка(это соответствует не более 5 миллиамперчасов в сутки). Преимущества остановки плеера таким способом (по ср. с отключением питания кнопкой S5) в том, что последующее после повторного нажатия воспроизведение начинается с того-же трека(а не с начала каталога). Также сохраняется и громкость. Чтобы снова включить плеер нужно удерживать S4 до характерного щелчка в наушниках (включение VS1001k), но не менее 1 сек.

Отдельно стоит упомянуть перемычки JMP1 и JMP2. Дело в том, что выводы 1 и 20 (Vdd и Vpp), а так-же 27,28,8,19 (RB6,RB7,GND,GND) микроконтроллера используются для его программирования. Чтобы не заботиться о развязке 1 и 20 выводов как раз и введены соответствующие перемычки — их убирают при программировании. Не желательно, чтобы перемычки были механические (jumper) — лучше пайкой.

Ещё одно замечание, касательно MMC карты. Крайне не рекомендую вынимать карту, если на плеер подано питание, а тем более если с картой идёт обмен (в режиме воспроизведения). В принципе карту испортить сложно, но стоит прислушаться к мнению её разработчиков и производителей ;)

А теперь пару слов от меня :)
Качество звука — превосходное!
При небольшой доработки схемы — возможно подключение LCD от NOKIA.

Место декодера VS1001 можно поставить VS1011, качество при этом не измениться!

Я сделал тестовый вариант платы:

В плеере можно применять карты памятити SD или ММС, объемом не более ОДНОГО ГИГАБАЙТА.

Расположение выводов SD и MMC:

Как видно по фото, у SD карты на 2 вывода больше, их нужно
через резисторы на 10К подтянуть к плюсу (выводы 9 и 8)

Читайте также  СХЕМА ДЛЯ ГОЛОСОВОГО УПРАВЛЕНИЯ

Печатная плата:

На фото расположение элементов немножко другое (добавлены пару деталей) однако особых технических отличий нет! Как видно в схему добавлен стабилизатор LD33V, чтобы питать схему от батарейки КРОНА, стабилизатор можно использовать любой с выходным током 3.3V не менее 0.2A

Ниже показана фотка, демонстрирующая потребление тока плеером!
Плеер стоял на максимальной громкости, была включна SD карта на 1GB, воспроизводилась песня с битрейдом 256kbit/s! Как видно потребление не превышает 60 mА!

СХЕМА MP3 ПЛЕЕРА

Встраиваемый MP3 модуль – это универсальное и компактное устройство для воспроизведения аудио файлов формата MP3. Он может использоваться для встраивания в пользовательские приложения на микроконтроллерах, или как автономное устройство, поддерживает несколько вариантов управления: с помощью кнопок и цифровых входов или по последовательному интерфейсу (ТТЛ уровни). Возможно применение двух способов одновременно.

Аудио файлы хранятся на карте памяти microSD, общее количество файлов, которое поддерживает модуль – 65535, что говорит о возможности применения карты памяти емкостью до 16 Гбайт. Все mp3 файлы на карте памяти должны иметь в качестве имени порядковый номер от 0 до 65535 (например, 0.mp3, 1.mp3, 2.mp3, 3.mp3 16.mp3 … … 65535.mp3).

Блок-схема модуля показана на рисунке ниже.

Как видно, сердцем модуля является микроконтроллер Microchip PIC24FJ64GA002 и микросхема однокристального MP3 декодера VS1011 производства компании VLSI. PIC24FJ64GA002 – это высокопроизводительный универсальный 16-разрядный микроконтроллер с богатой цифровой и аналоговой периферией, выполненный на базе ядра PIC24. Микроконтроллер поддерживает внутрисхемное программирование (ICSP), а так же самопрограммирование (RTSP).

Отличительные особенности микроконтроллера PIC24FJ64GA002:

  • ядро PIC24, рабочая частота до 32 МГц;
  • 64 Кбайт Flash, 8 Кбайт RAM;
  • пять 16-битных таймеров;
  • 5 каналов ШИМ;
  • коммуникационные интерфейсы:
  • 2 канала SPI;
  • 2 канала UART;
  • 2 канала I2C;
  • 10-битный 10-канальный АЦП;
  • напряжение питания 2.0 … 3.6 В.

VS1011 – это высококачественный декодер MP3 формата, имеющий в своем составе высокопроизводительный цифровой сигнальный процессор с низким энергопотреблением, рабочую память, память инструкций, 0.5 Кбайт RAM, которые могут использоваться пользовательским приложением, а также высококачественный стерео аудио ЦАП с усилителем. Для управления используется последовательный интерфейс. Отличительной особенностью VS1011 является возможность работы непосредственно с SPI EEPROM, т.е. без применения микроконтроллера.

Принципиальная схема mp3 модуля

Список компонентов

В зависимости от типа управления модулем, схемы его подключения различны.

Режим непосредственного управления (режим «Pin-to-Pin») предусматривает управление с помощью кнопок (воспроизведение, стоп, громкость + и громкость -) и DIP переключателей, подключаемых непосредственно к модулю. Режим «Serial» – это управление по последовательному интерфейсу с логическими уровнями ТТЛ. Кроме того, как было замечено выше, возможно применение двух способов одновременно. В этом случае количество входов для выбора трека сокращается до 4.

Конфигурирование модуля (выбор режима работы, параметры последовательного интерфейса) осуществляется с помощью файла конфигурации (config.txt), сохраненного на карте памяти.

Следует заметить, что в режиме Pin-to-Pin адресуемых треков на карте памяти будет 64 (6-бит), а при разрешении двух способов управления адресуемых треков с помощью DIP переключателей будет только 16.

Коммуникация и управление модулем по последовательному интерфейсу осуществляется с помощью простых команд, за исключением выбора трека для воспроизведения.

При управлении модулем по последовательному интерфейсу необходимо выполнить ряд простых действий в пределах временных интервалов, заданных в конфигурационном файле. Есть две специальных команды, которые используются при работе с модулем: «#» – команда позволяет задать номер трека для воспроизведения, вторая специальная команда «*» – подтверждение выбора трека.

Рассмотрим последовательность действий при режиме управления по последовательному интерфейсу (режим Serial), к примеру, если нужно воспроизвести трек 65.mp3:

  • Шаг 1 – режим выбора имени трека = команда «#»;
  • Шаг 2 – первый байт имени трека = 6;
  • Шаг 3 – второй байт имени трека = 5;
  • Шаг 4 – подтверждение выбора трека (опционально, выдерживаем время, указанное в конфигурационном файле) = команда «*»;
  • Шаг 5 – команда воспроизведения трека = P;
  • Шаг 6 – команда остановки воспроизведения = S.

Настройка режимов работы mp3 модуля осуществляется с помощью конфигурационного файла config.txt, который сохраняется на карте памяти. Программное обеспечение микроконтроллера способно определить новую карту памяти и создать конфигурационный файл с параметрами по умолчанию. Это например, позволит сохранить работоспособность модуля при повреждении конфигурационного файла в некоторых случаях. Сгенерированный файл сохраняется в корневой директории карты памяти.

Конфигурационный файл состоит из двух частей: первая часть – это описание модуля, назначение выводов и некоторые важные замечания, вторая часть – секция настроек. В файле все линии начинающиеся с символа «#» соответствуют комментариям, остальные содержат конфигурационные параметры.

Содержание конфигурационного файла config.txt

Рассмотрим эти параметры и их возможные значения.

Mode: позволяет выбрать режим работы. Возможные параметры:

0 – Режим Serial, управление по последовательному интерфейсу;
1 – Режим Pin-to-Pin (режим по умолчанию);
2 – Смешанный режим управления (Serial + Pin-to-Pin).

Параметры для управления по последовательному интерфейсу или смешанного режима:

Baud rate: скорость передачи данных по последовательному интерфейсу (допустимы значения 1200, 2400, 9600 (по умолчанию), 19200 и 115200);

Echo Command: команда для включения/выключения режима «Эхо». Возможные значения: 0 – выключено, 1 – включено (по умолчанию);

Extended echo Com: команда, подобная предшествующей. Если данная опция включена, то последовательный порт возвращает описание команды-запроса (включена по умолчанию);

Play: опция, которая позволяет определить функции управления воспроизведением треков. Если значение данной опции 0, то команда воспроизведения будет игнорироваться, если не было выбрано файла для воспроизведения. Если значение опции 1 (по умолчанию), то по команде воспроизведения будет использоваться предшествующий трек.

Timeout: опция которая задает значение длительности ожидания в миллисекундах при выборе номера трека. Значение может быть в переделах 1 – 10000 мс (значение по умолчанию 3000 мс, т.е. 3 с).

Параметры для режима Pin-to-Pin и смешанного режима:

Time Wait Play и Time Wait Vol: похожие опции для кнопок управления (Play, Volume + и Volume -), в них задается значение времени, которое должно пройти перед тем как будет зафиксировано следующее изменение состояния кнопок. Значение может быть в пределах 1 – 500 мс (по умолчанию значение 100 мс).

Play: опция задает поведение при нажатии кнопки Play во время проигрывания трека. Если значение 0, то при нажатии кнопки Play соответствует паузе воспроизведения, при условии что состояние выходов выбора трека (IN1, IN2, IN3, IN4 , IN5 и IN6) не изменилось. Если состояние выходов изменилось, то нажатие на кнопку Play соответствует остановке воспроизведения. При значении опции равной 1, нажатие на кнопку Play при любых условиях соответствует остановке воспроизведения.

Специфические параметры для смешанного режима управления – разрешение или запрещение действия кнопок ((Play, Volume +, Volume -, IN1, IN2, IN3, IN4). Если значение 0 – то игнорируется изменение состояния кнопок, если 1 (значение по умолчанию) – то состояние кнопок учитывается.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: