Перейти к содержанию

Играем Полифоническую Мелодию


dim3740

Рекомендуемые сообщения

Есть решения типа Дверного звонка, где записывается/проигрывается wav файл, которы, как известно, может содержать мелодию, ноты которой звучат иногда одновременно. Есть решения по синтезу звука, где в памяти прописывается массив, отражающий форму элементарного сигнала, а затем делается выборка, сложение с выборкой другой(-ими) ноты, одновременно звучащей, и результирующий код (8 и более бит) подается на R2R, ЦАП, или ШИМ.

Нужно частное и простое решение, а именно: программно формируется меандр только 4-х определенных нот (менять не требуется!), на аудио выходе нужна возможность проигрывания их в любом сочетании. Отставание включения последнего от первого – не более 30 мс. Один таймер уже занят под интерфейс. Область применения - тренажер рук и ног барабанщика, изучение ритмрисунков. Поэтому желательно один канал - типа "белого шума".

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

программно формируется меандр только 4-х определенных нот

Не понял - в чем проблема?

Ну, дык, программно и складывайте ноты в нужном сочетании и подавайте на аудиовыход.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Я не разу не делал этого... можно поподробнее? К примеру, у меня нет 5-х таймеров... Программно создаем одну ноту, пока код ее формирует, как заставить процессор звучать вторую,... четвертую?

Я думал так..... Матрицу выборок в некой памяти создаем для того, чтобы описать параметры волны, и дать возможность потом применить к мгновенным выборкам математику. Далее. Если будет сложение, то нужен ЦАП/Шим. Но если достаточно меандра, то зачем складывать? И как это делать? 1 +1 = 2 лог.единицы? Я же хочу вообще без цапа… Есть 4 выходных однобитовых порта, и резистивный сумматор. Разве я не услышу тогда 2 и более ноты?

Изменено пользователем dim3740
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Там 3-х голосная шкатулка... Я меня есть опыт создания 3-х канальной ЦМУ... Почти аналогичная задача - ведь яркость каждой лампы независима. Применял Атмегу 8 и задействовал все 3 таймера. И там требовался непрерывное отслеживаение фазы импульса на тиристор. А тут... можно последовательно 30 мс... удар, звучит скажем 500 мс, одновременно еще один звук или два... пауза... И т.п. неужели нельзя найти выход попроще? Ну конечно можно вообще 4 генератора заделать. Т.е. МК без "сложения" одновременно 4 задачи, конечно, не выполняет....

Ну хорошо.... Можно же НЕ НОТЫ.... а шум НЧ... типа разряда кондера... но разные по тембру...имитация удара по барабану.

Изменено пользователем dim3740
Ссылка на комментарий
Поделиться на другие сайты

Ну так сделай имитаторы ударных, и запускай их МК. Схемы имитаторов смотри "Радио" №2 1972 год, стр. 44 "Инструменты группы ритма";

"Радио" №5 1980 г., стр 44 "Синтезатор музыкальных ритмов"; "Радио" №1 1994 г., стр. 36 "Ритм-бокс".

Ссылка на комментарий
Поделиться на другие сайты

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

ISR (TIMER0_OVF_vect)

{

Count++ // счетчик

If ((Count==CH1) & (1 << PC1)) // СН период ноты 1 и нажата кнопка барабана 1

{

PORTB |= (1<<1); // порт 1, потом на сумматор на резисторах и т.п. далее ОУ и т.п.

}

If ((Count==CH2) & (1 << PC2)) // все аналогично

{

PORTB |= (1<<2);

}

}

Ну и обнуление портов в некоторый момент времени сделать. Т.е. уже две частоты на разных битовых портах.

Вопрос: Я услышу одновременно или нет две разные ноты? Если, ДА, то почему так не делается?

Изменено пользователем dim3740
Ссылка на комментарий
Поделиться на другие сайты

dim3740, Ваш вопрос звучит так - "Мне нужно 4 ШИМа, а в моём МК их нет. Что мне делать ?".

Ответ очевиден - взять МК, удовлетворяющий Ваши потребности. Иного быть не может.

Ссылка на комментарий
Поделиться на другие сайты

Не будучи знатоком в широтно импульсной модуляции, предположу, что в контексте вопроса, она обеспечивает получение по ОДНОМУ физическому каналу, наложенного на несущую модулированного сигнала, который человеческое ухо воспримет как совокупность музыкальной и шумовой информации, етс: ноты, тембр, огибающие, эффекты и т.п. То же самое можно получить если имеем 4 физических канала, с последующим микшированием, ( что я пытаюсь понять как сделать), или даже 4 источника звука= динамика....

Изменено пользователем dim3740
Ссылка на комментарий
Поделиться на другие сайты

Спасибо, Alex за внимание. Частоты ... скажем, 200,500,1 кгц... а вот четвертый - имитация белого шума. Я думаю, что все же тут есть простейшее решение.... просто оно настолько узко и неинтересно для массового повторения. Конечно, мелодии содержат по 12-16 нот, а это уже 16 портов... и нет никаких фильтров для более приглаженного))) звука.... но меня тупой меандр устроит. Посмотрите, плз, мой код выше...

Ссылка на комментарий
Поделиться на другие сайты

Если 200, 500, 1000... то не проблема. Периоды этих частот кратны 1 ms. Значит настраиваем таймер на 0.5 ms и, инвертируя в нём вывод, получаем частоту в 1 Кгц. Чтобы получить 500 Гц, делаем в обработчике этого таймера делитель на 2. Для 200 Гц - делитель на 5.

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

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...