Системный таймер и часы реального времени. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Системный таймер и часы реального времени.



В качестве системного таймера компьютера используется микросхема трехканального 16-разрядного таймера i8254 или се аналог. Таймер предназначен для получения программно управляемых временных задержек и генерации сигналов заданной частоты. Таймер позволяет
повысить эффективность программирования процессов управления и синхронизации внешних устройств, особенно в реальном времени.

Таймер содержит три независимых канала (0, 1 и 2).каждый из которых может быть, в принципе, запрограммирован на работу в одном из шести режимов счета:

• прерывание терминального счета;

• программируемый генератор одиночного импульса;

• генератор импульсов заданной частоты;

• генератор прямоугольных импульсов типа «меандр»;

• программно формируемый строб;

• аппаратно формируемый строб.

На каждый канал могут подаваться входные синхросигналы. Из каждого канала можно получать сигнал с частотой, равной входной частоте, деленной на произвольное 16-разрядное число. В компьютере на все входы поступают синхросигналы частотой 1,19 МГц. Все каналы таймера в компьютере имеют специальное назначение, поэтому особой свободы в
выборе режима работы или переназначении функций у пользователя нет.

• Выход канала 0 связан с сигналом запроса прерывания IRQ0 и обеспечивает прерывание для счетчика реального времени (используется режим работы 3). Пользователю не рекомендуется перепрограммировать этот канал. При старте компьютера канал программируется так, чтобы выдавать импульсы примерно 18,2 раза в секунду. По этому
прерыванию программно увеличивается состояние счетчика реального времени. Пользователь может читать состояние данного счетчика из специально выделенной ячейки памяти и применять его для задержек в своих программах.

• Выход канала 1 генерирует сигнал запроса регенерации динамической памяти (режим работы 2). Использование этого канала не по назначению может привести к потере содержимого оперативной памяти.

• Выход канала 2 генерирует тональный сигнал для встроенного динамика компьютера (режим работы 3). Однако разрешение этого тонального сигнала производится установкой выделенных разрядов (0 и 1) программно доступного параллельного порта контроллера периферийных устройств. Один разряд (0) разрешает работу канала,
другой разряд (1) пропускает выходной сигнал на динамик.

Таким образом, пользователь компьютера может задействовать только канал 2. Чаше всего его применяют для генерации звуков заданной частоты и длительности. Кроме того, выходной сигнал данного канала программнодоступен по чтению из одного из разрядов параллельного порта. Это позволяет, запрограммировав таймер соответствующим образом, выдерживать нужные временные интервалы. Для этого следует программно разрешить генерацию (при отключенном динамике), а затем программно опрашивать выходной сигнал таймера и принимать решения по изменению его уровня.

Подсистема часов реального времени в первых компьютерах выполнялась на микросхеме контроллера МС146818 фирмы Motorola. Этот контроллер содержит 64 байта CMOS-памяти, из которых первые 14 байт используются для часов реального времени, а остальные 50 байт хранят информацию о конфигурации системы.

Для входного тактового сигнала контроллера применяется специальный «часовой» кварцевый генератор с частотой 32 768 кГц, что позволяет с помощью деления частоты получить импульсы с частотой 1 Гц. Контроллер считает секунды, минуты, часы, дни недели, месяцы и годы. Причем работает он даже при отключении питания компьютера, подпитываясь от батареи или аккумулятора. Это позволяет сохранять информацию о текущем времени постоянно.

Помимо счетчика текущего времени, контроллер имеет в своем составе будильник. Будильник может формировать прерывания (IRQ8) с программно заданной периодичностью. Состояния всех счетчиков (секунд, минут, часов и т.д.) программно доступны как по чтению, так и по записи, что позволяет устанавливать нужное время и следить за ним.

 




Поделиться:


Последнее изменение этой страницы: 2016-12-13; просмотров: 327; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.123.32 (0.004 с.)