Работа со звуком

В ПЭВМ есть возможность генерировать с помощью встроенного динамика звуковые сигналы частотой от 37 Гц до 20 Кгц. Из программы на Паскале воспроизводятся только чистые тона без искажений. Сила, или громкость звука не регулируется.

Стандартный звуковой сигнал длительностью 0,25 сек и частотой 800 Гц вызывается символом 7 кодовой таблицы, например:

Writeln (‘Ошибка данных’,Chr(7));

Для управления частотой звука и его продолжительностью в модуле Crt предусмотрены следующие процедуры. Включение звука:

Sound (Freq:word);

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

Отмена (выключение) звука:

NoSound;

Задержка по времени:

Delay (ms:word);

Целый аргумент указывает длительность в миллисекундах. Это универсальная процедура и может использоваться в самых различных целях. Но она использует встроенную схему таймера с интервалом 18,2 раз в секунду, поэтому для точного вычисления времени эту процедуру использовать нельзя.

Таким образом, стандартный звуковой сигнал — это последовательность процедур, например:

Sound (800);

Delay (250);

NoSound;

С помощью этих процедур и операторов цикла можно создавать разнообразные звуковые эффекты, например, проиграть гамму:

Program Gamma;

{ Пример проигрывания гаммы }

Uses Crt;

Const

{ Частоты нот гаммы от ДО октавы 1 до ДО октавы 2 }

Freq: Array[1..8] of word=(262,294,330,349,392,440,494,524);

VAR

i:integer;

Begin

Repeat

For i:=1 to 8 do Begin

Sound(Freq[i]); { Включение звука }

Delay(500);

NoSound; { Выключение звука }

end

Until KeyPressed;

end.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: