Как бы вы воспроизводили звуки с микроконтроллера (STM32 и т. д.)?

Например, как стиральная машина воспроизведет определенный звук (MP3, WAV или что-то еще) после завершения стирки? Какие внешние компоненты необходимы?

Я знаю, что это действительно расплывчатый вопрос, но я не смог найти никаких реальных решений, кроме какого-то модуля MP3-плеера, который кажется более «удобным для конечного пользователя», а не используется программно (кнопки пропуска и паузы).

Вам нужен резистор и caoacitor. ЛП фильтр. Генерация ШИМ.

0___________ 14.12.2020 01:56

это самое простое

0___________ 14.12.2020 02:03

вы можете использовать ЦАП

0___________ 14.12.2020 02:03

Ваш вопрос должен включать КОД, чтобы использовать тег arduino. Прочтите описание тега и добавьте код или удалите тег. И это не сайт дизайна/мозгового штурма. Задайте конкретный вопрос по коду или удалите его.

TomServo 14.12.2020 03:06
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
4
2 285
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

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

Для коротких звуковых фрагментов: вы можете хранить их во (внешней) памяти и воспроизводить их через ЦАП, если он есть в вашем MCU. Я разместил базовую реализацию этого для Arduinos на базе SAMD21G здесь; идея одинакова для всех микроконтроллеров с ЦАП. Если в вашем микроконтроллере нет ЦАП, вы можете использовать внешний ЦАП или сделать «ЦАП для бедняков», используя ШИМ и фильтрацию нижних частот на выходе.

Другой вариант — создать поток I2S из сохраненных сэмплов и отправить их на внешний усилитель (модуль), принимающий I2S. Это помогает, когда ваш MCU имеет периферийное устройство I2S.

Для более длинных звуков лучше всего, вероятно, воспроизводить их на MP3-плеере, управляемом микроконтроллером, потому что для больших звуковых файлов вам в любом случае понадобится хранилище на SD-карте или аналогичное большое хранилище.

Во всех случаях вам понадобится внешний усилитель и динамик.

Другие вопросы по теме

Похожие вопросы

Заполнение буфера аудио конечной точки, предоставленное WASAPI, не воспроизводит звук
Как использовать разделитель каналов WebAudio API для регулировки усиления влево или вправо на звуковой дорожке?
Как я могу получить продолжительность звука mp3-файла в React
Воспроизведение видеофайла и аудиофайла одновременно из командной строки Linux
Получите информацию о времени из MFCC, сгенерированную с помощью librosa.feature.mfcc
Как определить теоретический размер файла преобразованного аудиофайла без фактического преобразования (например, mp3 в wav)
Безопасно ли обрезать загруженные torchaudio 16-битные аудио до `float16` из `float32`?
Как отключить приложение Android, когда оно переходит в фоновый режим
Можно ли отправить поток из данных BLOB-объектов в базе данных в PlaySound (MMSystem) вместо указания имени файла?
Как сделать несколько кнопок воспроизведения и паузы музыки, которые воспроизводят разные аудиозаписи?