Справочник программиста на персональном компьютере фирмы IBM. Таймеры и звук

ОГЛАВЛЕНИЕ

      Раздел 1. Установка и чтение таймера.
        Программирование микросхемы таймера 8253/8254.
        Установка/чтение времени.
        Установка/чтение даты.
        Установка/чтение часов реального времени.
        Задержка программных операций.
        Операции запрограммированные во времени.
        Управление работой в реальном времени.
        Генерация случайных чисел с помощью микросхемы таймера.
      Раздел 2. Создание звука.
        Программирование генератора звука 76496 (только PCjr).
        Генерация тона.
        Генерация звука одновременно с другими действиями.
        Гудок динамика.
        Генерация набора тонов.
        Генерация строки тонов, одновременно с другими операциями.
        Создание плавного перехода тонов.
        Создание звуковых эффектов.
        Одновременная генерация разных звуков.

Глава 2. Таймеры и звук.

     Раздел 1. Установка и чтение таймера.


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