Справочник программиста на персональном компьютере фирмы IBM. Таймеры и звук
ОГЛАВЛЕНИЕ
Программирование микросхемы таймера 8253/8254.
Установка/чтение времени.
Установка/чтение даты.
Установка/чтение часов реального времени.
Задержка программных операций.
Операции запрограммированные во времени.
Управление работой в реальном времени.
Генерация случайных чисел с помощью микросхемы таймера.
Раздел 2. Создание звука.
Программирование генератора звука 76496 (только PCjr).
Генерация тона.
Генерация звука одновременно с другими действиями.
Гудок динамика.
Генерация набора тонов.
Генерация строки тонов, одновременно с другими операциями.
Создание плавного перехода тонов.
Создание звуковых эффектов.
Одновременная генерация разных звуков.
Глава 2. Таймеры и звук.
Раздел 1. Установка и чтение таймера.
Микросхема 8253 работает независимо от процессора. Процессор
программирует микросхему и затем обращается к другим делам. Таким
образом 8253 действует как часы реального времени - она считает
свои импульсы независимо от того, что происходит в компьютере.
Однако, максимальный программируемый интервал составляет прибли-
зительно 1/12 секунды. Для подсчета интервалов времени в часы и
минуты нужны какие-то другие средства. Именно по этой причине
импульсы от нулевого канала микросхемы таймера накапливаются в
переменной, находящейся в области данных BIOS. Этот процесс пока-
зан на рис. 2-1. Это накопление обычно называется подсчетом вре-
мени суток. 18.2 раза в секунду выход канала 0 обрабатывается
аппаратным прерыванием (прерыванием таймера), которое ненадолго
останавливает процессор и увеличивает счетчик времени суток.
Число 0 соответствует полночи 12:00; когда счетчик достигает
значения эквивалентного 24 часам, он сбрасывается на ноль. Другое
время в течение суток легко определяется делением показателя
счетчика на 18.2 для каждой секунды. Счетчик времени суток ис-
пользуется в большинстве операций, связанных со временем.