- Необхідне обладнання:
- Підготовка до аудіофайлів WAV:
- Схема та обладнання:
- Програмування вашого Arduino:
- Робота цього музичного програвача Arduino:
Додаючи звуки чи музику до нашого проекту, він завжди буде виглядати круто і звучатиме набагато привабливіше. Особливо, якщо ви використовуєте Arduino, і у вас багато вільних контактів, ви можете легко додати звукові ефекти до свого проекту, просто інвестуючи в додатковий модуль SD-карти та звичайний динамік. У цій статті я покажу вам, як легко відтворювати музику / додавати звукові ефекти за допомогою дошки Arduino. Дякуємо спільноті Arduino, яка розробила деякі бібліотеки, щоб побудувати це швидко і просто. Ми також використовували IC LM386 тут для посилення та придушення шуму.
У цьому проекті ми будемо відтворювати сховища музичних файлів.wav на SD-карті. Ми запрограмуємо Arduino читати ці файли.wav та відтворювати звук на динаміку через підсилювач звуку LM386. Зараз, оскільки цей код міг читати лише файли у форматі.wav, технічно цей проект не можна називати програвачем Mp3 Arduino Mp3, але ви все одно зможете слухати пісні з ним. Якщо ви шукаєте прості альтернативи, такі як музичний плеєр Arduio без SD-карти, вам слід перевірити мелодійний програвач Arduino, який ми створили раніше.
Необхідне обладнання:
- Arduino UNO
- Модуль зчитування карток SD
- флеш-картка
- Підсилювач звуку LM386
- Конденсатор 10 мкФ (2 ні)
- Конденсатор 100 мкФ (2 ні)
- Резистор 1K, 10K
- Кнопки (2 ні)
- Макет
- Підключення проводів
Підготовка до аудіофайлів WAV:
Для відтворення звуків з SD-карти за допомогою Arduino нам потрібні аудіофайли у форматі.wav, оскільки Arduino Board може відтворювати аудіофайл у певному форматі, який є форматом wav. Щоб зробити mp3-плеєр arduino, існує безліч екранів mp3, які ви можете використовувати з arduino. Або ж для відтворення mp3-файлів у arduino є веб-сайти, за допомогою яких можна перетворити будь-який аудіофайл на вашому комп’ютері у цей конкретний файл WAV.
Отже, щоб перетворити будь-який аудіофайл у формат wav, виконайте такі дії:
Крок 1: Клацніть на «Інтернет-конвертер WAV», щоб увійти на веб-сайт.
Крок 2: Arduino може відтворювати wav-файл у наступному форматі. Ви можете пограти з налаштуваннями пізніше, але ці налаштування були експериментом, щоб бути найкращими за якістю.
Бітове дозвіл |
8 біт |
Частота дискретизації |
16000 Гц |
Аудіоканал |
Мононуклеоз |
Формат PCM |
8-бітний PCM без підпису |
Крок 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 (Master In Slave out) |
Штифт 11 |
MOSI (Master Out Slave In) |
Контакт 13 |
SCK (синхронний годинник) |
Контакт 4 |
CS (вибір мікросхеми) |
Тепер Arduino зможе читати музичний файл із SD-карти і відтворювати його на виводі No 9. Але звукові сигнали, що виробляються Arduino на виводі 9, будуть мало чутні. Отже, ми підсилюємо його, використовуючи звуковий підсилювач низької напруги LM386.
Показаний вище підсилювач розрахований на коефіцієнт підсилення 200, а Vdd (висновок 6) живиться від 5-контактного виводу Arduino. Якщо ви хочете збільшити / зменшити звук, ви можете збільшити / зменшити напругу, яка подається на цей штифт. Він може витримати максимум 15В. Дізнайтеся більше про цю конфігурацію посилення посилення 200 для LM386 тут.
У нас також є дві кнопки, підключені до висновків 2 і 3 Arduino. Ці перемикачі використовуються для відтворення наступної доріжки пісні та відтворення / паузи музики відповідно. Я використав ці кнопки лише для демонстрації його здібностей; Ви можете відтворити пісню, коли це потрібно. Перевірте демонстраційне відео в кінці.
Ви можете повністю зібрати цю схему на макеті, як показано на малюнку нижче
Програмування вашого Arduino:
Після того, як ми готові до апаратного забезпечення та SD-карти, ми залишимо лише один крок відтворення цих пісень. Вставте картку в модуль SD-карти та виконайте наведені нижче дії.
Крок 1: Як вже було сказано раніше, ми будемо використовувати бібліотеку, щоб цей проект працював. Посилання на бібліотеку наведено нижче. Клацніть на нього та виберіть “Клонувати або завантажити” та виберіть завантажити як ZIP.
- Бібліотека TMRpcm
Крок 2: Додайте цей Zip-файл у свою IDE Arduino, вибравши Ескіз-> Включити бібліотеку -> Додати бібліотеку.ZIP, як показано нижче, та виберіть ZIP-файл, який ми щойно завантажили.
Крок 3: Повна програма проекту музичного програвача arduino подана в кінці цієї статті, просто скопіюйте її та вставте в програму Arduino. Тепер натисніть Завантажити і готуйтеся до відтворення аудіофайлів.
Програма є зрозумілою, оскільки вони мають рядки коментарів. Але я також пояснив можливості бібліотеки TMRpcm нижче.
Відтворення аудіофайлу:
Ви можете відтворити будь-який звук, який зберігається у форматі Wav у модулі SD-карти, використовуючи рядок нижче.
music.play ("3.wav"); // ім’я об’єкта.play (“FileName.wav”);
Ви можете використовувати цей рядок у місцях, де потрібно активувати звук
Призупинити звуковий файл:
Щоб призупинити звуковий файл, ви можете просто зателефонувати до рядка нижче.
music.pause (); // ім'я об'єкта.pause ();
Пересилання / перемотування аудіо:
Немає прямих способів перемотування або перемотування аудіофайлу, але ви можете використовувати рядок нижче, щоб відтворити пісню в певний час. Це можна використовувати для перемотування вперед / назад із додатковим програмуванням.
music.play ("2.wav", 33); // Відтворює пісню з 33-ї секунди //objectname.play(COUNTFilename.wavARY, час в секунді);
Налаштування якості звуку:
Бібліотека дає нам дві якості відтворення музики, одна - грати в звичайному режимі, інша - відтворювати вдвічі більше.
music.quality (0); // Звичайний режим music.quality (1); // 2 рази за режим вибірки
Налаштування гучності звуку:
Так, ви можете регулювати гучність звуку за допомогою програмного забезпечення. Ви можете просто встановити гучність за допомогою рядка нижче. Більший обсяг музики, як правило, впливає на якість звуку, отже, використовуйте апаратне управління, коли це можливо.
music.setVolume (5); // Відтворює пісню на гучності 5 //objectname.setVolume(Volume level);
Робота цього музичного програвача Arduino:
Після програмування вашого Arduino просто натисніть кнопку, підключену до виводу 2, і ваш Arduino відтворить для вас першу пісню (збережену як 1.wav). Тепер ви можете натиснути кнопку ще раз, щоб змінити трек на наступну пісню, яку потрібно відтворити 2.wav. Так само ви можете перейти до всіх чотирьох пісень.
Ви також можете відтворити / призупинити пісню, натиснувши кнопку, підключену до штифта 3. Натисніть один раз, щоб призупинити пісню, і натисніть ще раз, щоб відтворити її там, де вона зупинилася. Подивіться відео нижче, щоб повністю попрацювати (або, можливо, відпочити за допомогою деяких пісень).
Сподіваюся, вам сподобався проект. Тепер ваша творчість залежить від того, як використовувати їх у своїх проектах. Ви можете зробити годинник, що говорить, голосовий асистент, робот, що говорить, система голосового оповіщення та багато іншого. Повідомте мене, як ви плануєте використовувати це через розділ коментарів, а також якщо у вас виникли проблеми з приведенням цієї речі в дію, ви можете зв’язатися зі мною через форуми або розділ коментарів нижче.