реклама на сайте
подробности

 
 
> Синтез звука.
-=Женек=-
сообщение Oct 21 2011, 08:02
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 559
Регистрация: 6-09-06
Пользователь №: 20 131



Господа, кому-нибудь приходилось заниматься аппаратным синтезом звука?
Имеется контроллер AVR хочется к его ШИМу присоединить динамик и использовать его в качестве некоего сигнализатора.

Однако прямоугольные импульсы, как известно звучат как жесткий циплячий писк.

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

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

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

Может быть у кого есть какие-то наработки в аппаратном синтезе звука, точнее не звука, а отдельных его нот? ПРивитив в виде писка прямоугольных импульсов уже поднадоел. Хочу поиграться с ШИМ.

Заранее спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Абырвалг
сообщение May 30 2012, 08:15
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 55
Регистрация: 23-08-06
Пользователь №: 19 752



Древняя тема, но все-же отмечусь. Если нужен простой "пик", но меандр не устраивает своей незатейливостью и назойливостью, его можно разнообразить добавив к нему второй тон. Если оба тона будут в косонансе, то звук получится более благозвучный и "глубокий". Можно мешать не два тона, а больше. И в разных пропорциях. Простор для фантазии.

Сигналы надо именно складывать, а не умножать. Если звук надо выводить через один логический выход, наверно можно попробовать сделать "ИЛИ", хотя я не пробовал. Если сложить два меандра, то результат будет трехуровневый. Можно 0 и 2 представить, соответсвенно, 0 и 1 на логическом выходе, а 1 представить ШИМ-ом с меандром на высокой частоте, которая после зарежется простым RC-фильтром или самим динамиком. В общем извращаться можно массой способов.

За синусоидальностью тонов гнаться, ИМХО, смысла нет. Синус сам по себе достаточно тоскливый звук.

Традиционно косонансами считаются унисон, октава, квинта, кварта, терции и т. д. Ниже пример, как эти частоты посчитать.

// Частоты тонального сигнала
#define note_re 293.66
#define note_mi 329.63
#define note_fa 349.23
#define note_sol 392.00
#define note_la 440.00
#define main_tone note_fa // Частота основного тона

#define unison *1/1 // 1:1 - унисон
#define octave *1/2 // 1:2 - октава
#define quint *2/3 // 2:3 - квинта
#define quart *3/4 // 3:4 - кварта
#define tierce *4/5 // 4:5 - терция

// Частоты первого и второго тона
#define F_tone1 (main_tone unison )
#define F_tone2 (main_tone tierce )

Дальше генерация этих двух тонов, кому как удобно.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 20:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016