Системное программное обеспечение персональных ЭВМ


Функции таймера - звук и время



6. Функции таймера - звук и время

Микросхема таймера генерирует импульсы частоты 1193180 гц. Эта последовательность импульсов поступает на три канала таймера. В каждом канале есть свой счетчик, работающий как делитель частоты, максимальное число которое может быть записано в счетчике (коэффициент деления) - 655357. Счетчики каналов таймера независимы друг от друга и доступны для программиста. Назначение каналов таймера следующее:

  • канал 0 используется для системной службы времени. При инициализации системы BIOS записывает в счетчик этого канала максимально возможное число, таким образом, импульсы на выходе делителя выдаются с частотой около 18.2 гц (период этой частоты - около 55 мсек - программисты иногда называют "тиком" таймера). Выход делителя этого канала поступает на контроллер прерываний и вызывает прерывание с номером 8;
  • выход канала 1 используется схемами регенерации памяти, поэтому программисты с этим каналом не работают;
  • выход канала 2 поступает на динамик ПЭВМ, этот канал используется для генерации звука.

Каждый канал может работать в одном из 6 режимов, но программисты, как правило, используют его в режиме 3 (генератор меандра).

Программирование канала таймера представляет собой запись числа в счетчик канала. Имеется один управляющий порт - 0x43 для всех каналов и по одному порту данных для каждого канала - 0x40, 0x41, 0x42. При программировании следует записать в порт 0x43 управляющий байт, который обычно имеет вид:




- Начало -  - Назад -  - Вперед -