- Требуемое оборудование:
- Подготовка аудиофайлов WAV:
- Схема и оборудование:
- Программирование вашего Arduino:
- Работа этого музыкального проигрывателя Arduino:
Добавление звуков или музыки в наш проект всегда будет выглядеть круто и звучать намного привлекательнее. В особенности, если вы используете Arduino и у вас много свободных контактов, вы можете легко добавить звуковые эффекты в свой проект, просто вложив средства в дополнительный модуль SD-карты и обычный динамик. В этой статье я покажу вам, как легко воспроизводить музыку / добавлять звуковые эффекты с помощью платы Arduino. Спасибо сообществу Arduino, которое разработало несколько библиотек для быстрого и простого создания этого. Мы также использовали IC LM386 для усиления и подавления шума.
В этом проекте мы будем воспроизводить музыкальные файлы.wav, хранящиеся на SD-карте. Мы запрограммируем Arduino на чтение этих файлов.wav и воспроизведение звука при разговоре через аудиоусилитель LM386. Теперь, поскольку этот код может читать только файлы.wav, технически этот проект нельзя называть Arduino Mp3 Player, но вы все равно сможете слушать песни с ним. Если вы ищете простые альтернативы, такие как музыкальный проигрыватель Arduio без SD-карты, вам следует проверить музыкальный проигрыватель Arduino, который мы создали ранее.
Требуемое оборудование:
- Arduino UNO
- Модуль чтения SD-карт
- SD Card
- Усилитель звука LM386
- Конденсатор 10 мкФ (2 шт.)
- Конденсатор 100 мкФ (2 шт.)
- Резистор 1 кОм, 10 кОм
- Кнопки (2 шт.)
- Макетная плата
- Подключение проводов
Подготовка аудиофайлов WAV:
Для воспроизведения звуков с SD-карты с помощью Arduino нам нужны аудиофайлы в формате.wav, потому что Arduino Board может воспроизводить аудиофайлы в определенном формате, который является форматом wav. Для создания mp3-плеера для arduino доступно множество экранов для mp3, которые можно использовать с arduino. Или же для воспроизведения файлов mp3 в Arduino существуют веб-сайты, которые можно использовать для преобразования любого аудиофайла на вашем компьютере в этот конкретный файл WAV.
Итак, чтобы преобразовать любой аудиофайл в формат wav, выполните следующие действия:
Шаг 1: Нажмите «Online Wav Converter», чтобы войти на сайт.
Шаг 2: Arduino может воспроизводить wav-файл в следующем формате. Вы можете поиграть с настройками позже, но эти настройки были лучшими по качеству в эксперименте.
Битовое разрешение |
8 бит |
Частота выборки |
16000 Гц |
Аудио канал |
Мононуклеоз |
Формат PCM |
PCM без знака 8-битный |
Шаг 3: На веб-сайте нажмите «Выбрать файл» и выберите файл, который хотите преобразовать. Затем введите указанные выше настройки. После этого он должен выглядеть примерно так на изображении ниже.
Шаг 4: Теперь нажмите «Конвертировать файл», и ваш аудиофайл будет конвертирован в формат файла.Wav. Он также будет загружен после завершения преобразования.
Шаг 5: Наконец, отформатируйте SD-карту и сохраните на ней аудиофайл.wav. Обязательно отформатируйте его, прежде чем добавлять этот файл. Также запомните название вашего аудиофайла. Точно так же вы можете выбрать любую из четырех аудиозаписей и сохранить их с именами 1, 2, 3 и 4 (имена не должны быть изменены). Я преобразовал четыре песни и сохранил их как 1.wav, 2.wav, 3.wav и 4.wav, как показано ниже.
Схема и оборудование:
Принципиальная схема этого проигрывателя аудиофайлов Arduino проста. Полная принципиальная схема показана на изображении ниже.
Как мы знаем, наши аудиофайлы сохраняются на SD-карту, поэтому мы связываем модуль чтения SD-карт с нашим Arduino. Arduino и SD - карта для передачи информации с использованием протокола SPI связи. Следовательно, модуль взаимодействует с выводами SPI Arduino, как показано на схеме выше. Далее он указан в таблице ниже.
Ардуино |
Модуль SD-карты |
+ 5В |
Vcc |
Gnd |
Gnd |
Штырь 12 |
MISO (Мастер в подчинении вне) |
Штырь 11 |
MOSI (главный выход, подчиненный вход) |
Пин 13 |
SCK (синхронные часы) |
Штырь 4 |
CS (выбор чипа) |
Теперь Arduino сможет читать музыкальный файл с SD-карты и воспроизводить его на контакте номер 9. Но звуковые сигналы, производимые Arduino на контакте 9, не будут сильно слышны. Следовательно, мы усиливаем его с помощью микросхемы аудиоусилителя низкого напряжения LM386.
Показанный выше усилитель рассчитан на усиление 200, а напряжение Vdd (вывод 6) запитывается от вывода 5V Arduino. Если вы хотите увеличить / уменьшить звук, вы можете увеличить / уменьшить напряжение, подаваемое на этот вывод. Он выдерживает максимум 15В. Узнайте больше об этой конфигурации усиления 200 для LM386 здесь.
У нас также есть две кнопки, подключенные к контактам 2 и 3 Arduino. Эти переключатели используются для воспроизведения следующей дорожки песни и воспроизведения / паузы музыки соответственно. Я использовал эти кнопки только для демонстрации его возможностей; вы можете воспроизвести песню, когда это необходимо. Посмотрите демонстрационное видео в конце.
Вы можете полностью собрать эту схему на макетной плате, как показано на рисунке ниже.
Программирование вашего Arduino:
Когда мы будем готовы с оборудованием и SD-картой, мы будем в одном шаге от воспроизведения этих песен. Вставьте карту в модуль SD-карты и выполните следующие действия.
Шаг 1. Как было сказано ранее, мы будем использовать библиотеку, чтобы этот проект заработал. Ссылка на библиотеку дана ниже. Щелкните по нему и выберите «Клонировать или загрузить» и выберите «Загрузить в формате ZIP».
- Библиотека TMRpcm
Шаг 2: Добавьте этот Zip-файл в вашу Arduino IDE, выбрав Sketch-> Include Library -> Add.ZIP Library, как показано ниже, и выберите ZIP-файл, который мы только что загрузили.
Шаг 3: Полная программа проекта музыкального плеера Arduino приведена в конце этой статьи, просто скопируйте ее и вставьте в программу Arduino. Теперь нажмите «Загрузить» и приготовьтесь к воспроизведению аудиофайлов.
Программа не требует пояснений, поскольку в них есть строки комментариев. Но я также объяснил возможности библиотеки TMRpcm ниже.
Воспроизведение аудиофайла:
Вы можете воспроизводить любой звук, который хранится в формате Wav внутри модуля SD-карты, используя строку ниже.
music.play ("3.wav"); // имя объекта.play («FileName.wav»);
Вы можете использовать эту строку в местах, где вы хотите запускать аудио
Приостановить аудиофайл:
Чтобы приостановить аудиофайл, вы можете просто позвонить в строку ниже.
music.pause (); // имя объекта.pause ();
Пересылка / перемотка аудио:
Прямых способов перемотки аудиофайла вперед или назад нет, но вы можете использовать строку ниже для воспроизведения песни в определенное время. Это можно использовать для перемотки вперед / назад с некоторым дополнительным программированием.
music.play ("2.wav", 33); // Воспроизводит песню с 33-й секунды // имя_объекта.play(Filename.wav", время в секундах);
Настройка качества звука:
Библиотека дает нам два качества для воспроизведения музыки: одно - играть в обычном режиме, другое - играть с двукратной передискретизацией.
музыка. качество (0); // Нормальный режим music.quality (1); // режим двукратной передискретизации
Настройка громкости звука:
Да, вы можете регулировать громкость звука через программное обеспечение. Вы можете просто установить громкость, используя строку ниже. Более высокая громкость музыки, как правило, влияет на качество звука, поэтому по возможности используйте аппаратное управление.
music.setVolume (5); // Воспроизводит песню на уровне громкости 5 // имя объекта.setVolume(Volume level);
Работа этого музыкального проигрывателя Arduino:
После программирования вашего Arduino просто нажмите кнопку, подключенную к контакту 2, и ваш Arduino воспроизведет для вас первую песню (сохраненную как 1.wav). Теперь вы можете нажать кнопку еще раз, чтобы перейти к следующей песне, которая будет воспроизводиться в формате 2.wav. Таким же образом вы можете перейти ко всем четырем песням.
Вы также можете воспроизвести / приостановить песню, нажав кнопку, подключенную к контакту 3. Нажмите ее один раз, чтобы приостановить песню, и нажмите еще раз, чтобы воспроизвести ее с того места, где она остановилась. Посмотрите видео ниже, чтобы получить полную информацию (или, может быть, расслабиться под несколько песен).
Надеюсь, вам понравился проект. Теперь ваше творчество может использовать их в своих проектах. Вы можете сделать говорящие часы, голосового помощника, говорящего робота, систему голосового оповещения и многое другое. Сообщите мне, как вы планируете использовать его, через раздел комментариев, а также, если у вас есть какие-либо проблемы с его работой, вы можете связаться со мной через форумы или раздел комментариев ниже.