При нажатии кнопки мне нужно воспроизвести вступительный звуковой файл, затем один из 50 других звуков по порядку при каждом нажатии кнопки

Мне нужно воспроизвести вступительный файл и один из 50 различных файлов после него по порядку при каждом нажатии переключателя с небольшой задержкой между вступлением и следующим файлом.

Например, предположим, что вступление называется "intro.wav", а каждый из 50 других звуковых файлов просто называется 01.wav-50.wav.

Логика будет следующей:

TRIGGER
PLAY intro.wav
250ms DELAY
PLAY 01.wav
END
TRIGGER
PLAY intro.wav
250ms DELAY
PLAY 02.wav
END
TRIGGER
PLAY intro.wav
250ms DELAY
PLAY 03.wav
END

и так далее, пока не будут воспроизведены все 50 файлов, затем начните сначала.

Сообщения будут представлять собой группу слов. Я пока не знаю, каким будет вступление, но оно будет примерно таким:

intro.wav = "Слово дня"

01.wav = "помощь"

02.wav = "подняться"

03.wav = "думать"

Я ищу рекомендации о том, с чего начать, подойдет ли продукт Arduino, и если да, то какой. Раньше я работал с звуковой платой Adafruit Audio FX, и она может почти делать то, что мне нужно, но не сама по себе. Похоже, для этого мне понадобится какой-нибудь Arduino, поэтому я заказал Uno.

Я также не согласен с идеей разделения файлов вступления и файлов Word. Если мне нужно создать все 50 файлов, содержащих вступление и слово, это будет нормально, если каждый из них запускается последовательно.

В этом сценарии 01.wav может быть "Словом дня... помощь", а кнопка будет в основном командой "следующая дорожка". На самом деле у меня нет проблем с этим, потому что я стремлюсь к тому, чтобы все было просто, и я не думаю, что у меня кончится место, но я думаю, что будет меньше времени, если просто сбросить все отдельные слова. файлы на карту.

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

, 👍1

Обсуждение

Это просто. Посмотрите на любой базовый пример Arduino, чтобы понять, как читать вашу кнопку. Тогда вам просто нужен оператор if, который говорит, что если кнопка нажата, то воспроизводить звук. Массив имен файлов или, если они действительно последовательно пронумерованы, вы, вероятно, можете создавать имена файлов на лету. Это просто строки массива символов. Какая часть этого держит вас? Вы проделали большую работу, описав то, что вы хотите сделать, но не в чем заключается ваша проблема. Это не бесплатная служба написания кода. Если вы надеялись, что кто-то просто скажет вам, что делать дальше, вы ошиблись., @Delta_G

@delta_g Дааа. Думаю, я просто большой болван, и я должен сдаться, так как это так просто, и я не мог понять это сразу! ¯\\_(ツ)_/¯ Это мой первый набег на мир Arduino, и я надеялся, что у кого-то еще есть похожий проект, чтобы не изобретать велосипед, потому что да, кажется, что это легко сделать, и в мой 2-часовой поиск я не нашел никаких решений. Я уверен, что разберусь с этим, когда у меня будет устройство, с которым я смогу работать., @AdamDallas

Попробуй forum.arduino.cc Это еще для неконкретных, только подскажи как это сделать вроде вопросов., @Delta_G

@AdamDallas, вы не манекен, вы начинающий программист Arduino ... попробуйте некоторые из примеров скетчей, которые включены в среду разработки Arduino IDE ... разбейте свою задачу программирования на мелкие части ... начните с кнопки . .. напишите код, который переключает светодиод... добавьте код, который увеличивает число... добавьте код, который вставляет число в текстовую строку, чтобы получить имя файла, такое как "4.wav"... найти код в Интернете который воспроизводит wav-файлы с SD-карты... передайте имя файла этому коду, @jsotola


1 ответ


1

Вы найдете весь необходимый код и библиотеку в учебном центре Adafruit. .
Для такого проекта я бы использовал DF-робот (клон) MP3-плеер (~ 4 $), Uno, динамик и SD-карту. библиотека для проигрывателя содержит примеры, которые помогут вам начать работу, а запланированный звуковой проект возможен даже при низких навыках программирования. Посмотрите на предоставленные примеры кодов и начните программировать.

,

Спасибо за отзыв! Я только что видел это, но мне довелось заказать MP3-плеер microSD в тот день, когда я разместил вопрос, поэтому я рад, что я на правильном пути. Сегодня я буду тестировать как отдельное устройство, но похоже, что мне, вероятно, понадобится какой-то код. Я только что читал пример кода из DFRobot, и это определенно похоже на то, что это возможно. Просто надеюсь, что смогу сделать это с более дешевым материалом Arduino и мне не придется использовать Pi., @AdamDallas