Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

высота звука в динамике

12K
31 марта 2006 года
ANdroid
37 / / 31.03.2006
Вобщем народ, нужна консультация. Я знаком с ассемблером совсем недавно. Мне нужно написать программу, играющую мелодию через системный динамик. В принципе с алгоритмами вывода звука я разобрался. Непонятен один момент.
Насколько я понял высота звука задается значением, заносимым в порт 42h а затем в lacth-register и чем ниже значение, тем больше высота звука.
Теперь вопрос: как получить звук определенной частоты (напр. 220 Гц)? Какое значение должно быть загружено в ax? И желательно связать это с непосредственным значением частоты.

mov al,0B6h
out 43h,al
...
mov ax,tone ;собсно tone - высота
out 42h,al
xchg al,ah
out 42h,al
...
17K
06 апреля 2006 года
delta1968
1 / / 06.04.2006
Я не понял для какой системы ты программируешь звук из динамика. Но обычно значение заносимое в порт определяет длину периода равную T=1/F
где Т = длительность периода, а F частота. При программировании на ассамблере частота звука может зависеть от частоты процессора.
12K
07 апреля 2006 года
ANdroid
37 / / 31.03.2006
Цитата:
Originally posted by delta1968
Я не понял для какой системы ты программируешь звук из динамика. Но обычно значение заносимое в порт определяет длину периода равную T=1/F
где Т = длительность периода, а F частота. При программировании на ассамблере частота звука может зависеть от частоты процессора.


Вот для тех, кто не понял я и привел контекст, в котором мне нужно прописать число, которое определит нужную частоту.
Система - WinXP SP2 да так ли это важно?

443
11 апреля 2006 года
REmindER
292 / / 23.03.2003
Частота работы таймера равна (или была равна в старых машинах) 1193180 Гц. Один из каналов таймера может быть настроен на аппаратное формирование звуковых импульсов. Значит, для 220Гц задержка будет 1193180/220 = 5423,545454... Регистр 16-ибитный, именно из-за этого невозможно было получить звук по частоте меньшей, чем 18Гц.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог