ViKo 1 17 января, 2019 Опубликовано 17 января, 2019 · Жалоба Вот задумался, как бы на пьезопищалке, подключенной к выходу таймера STM32, сыграть мелодию, а не просто пищать одним тоном. Например, таймер высоты ноты по срабатыванию переключает выход на противоположный. Значит, задать ему нужно половину периода ноты. Скважность будет всегда два. А длительность ноты отсчитывать другим таймером, и по его срабатыванию загружать по DMA новый полупериод в таймер высоты и новую длительность в таймер длительности. Это, получается, два канала DMA нужно. Будет два массива - ноты и их длительности. Количество элементов массива задает количество пересылок в DMA. Кто-нибудь делал подобное? Сложного, полифонического не хочу. Чисто в качестве небольшого украшения в работе прибора. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 17 января, 2019 Опубликовано 17 января, 2019 · Жалоба 13 минут назад, ViKo сказал: Кто-нибудь делал подобное? Сложного, полифонического не хочу. Чисто в качестве небольшого украшения в работе прибора. Мне понравилась реализация мелодий в старых микросхемах УМС. Там кроме высоты и длительности ноты есть еще и огибающая. Причем выход цифровой комплиментарный с тактом 32768Гц. Там память всего 128 байт (нот?). Как именно эти 128 байт превращаются в ноты и огибающую до конца не разобрался, но очень бы хотелось. Сделал граббер сигнала с УМС. Сырые данные есть, но превратить их обратно в ноты/длительность/огибающую и паковку в 128 байт в авторежиме не осилил. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 18 января, 2019 Опубликовано 18 января, 2019 · Жалоба Можно даже и без длительности. Повторять ту же ноту, если нужно дольше. Громкость можно регулировать скважностью, но для меня это лишнее. Да и тембр тогда меняется неестественно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Михась 4 18 января, 2019 Опубликовано 18 января, 2019 (изменено) · Жалоба 19 minutes ago, ViKo said: Можно даже и без длительности. Повторять ту же ноту, если нужно дольше. Громкость можно регулировать скважностью, но для меня это лишнее. Да и тембр тогда меняется неестественно. Вот интересный проект на эту тему. Лучшее что видел, но до практической реализации руки не дошли. http://www.deep-shadows.com/hax/wordpress/?page_id=1111 https://www.radiokot.ru/circuit/digital/game/51/ Изменено 18 января, 2019 пользователем Михась Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bolden 0 18 января, 2019 Опубликовано 18 января, 2019 · Жалоба Пробовал делать такое, только попроще, без DMA. Таймер с прерываниями ( длительность нот) + PWM ( высота ноты). "Мурка" и "Варяг" были вполне узнаваемы. Регулировка скважностью громкости мне не понравилась ( или я не умею её готовить). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zeal0t 0 18 января, 2019 Опубликовано 18 января, 2019 · Жалоба буквально недавно читал не помню точную ссылку но что то из разряда https://habr.com/ru/post/126835/ https://habr.com/ru/post/348192/ искать на том же хабре. была статья именно про генерацию 1 битного звука, который звучит очень необычно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 18 21 января, 2019 Опубликовано 21 января, 2019 · Жалоба Как же вы забыли про тов. Чана? http://elm-chan.org/works/mxb/report.html http://elm-chan.org/works/sd8p/report.html Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться