Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kharakhnin / ПОСОБИЕ_Харахнин.doc
Скачиваний:
274
Добавлен:
08.03.2016
Размер:
17.89 Mб
Скачать

1. 6. Режимы работы таймеров/счетчиков

Режим 0. Установка битов М0=0 и М1=0 определяет режим 0. Рассмотрим логику работы Т/С1 в режиме 0, представленную на рис. 8 . Для Т/С0 логика работы аналогична. Т/С представляет собой устройство на основе 13 - разрядного регистра. Этот регистр состоит для Т/С0 из 8 разрядов регистра TH0 и 5 младших разрядов регистра TL0, а для Т/С1 – 8 разрядов регистра TH1 и 5 младших разрядов регистра TL1. Таким образом, максимальное число, которое может быть записано в регистр, - 8192. На рис. 7 на выходе источника синхронизации OSC имеет место частота сигналов fBQ. Делитель делит частоту синхронизации на fBQ/12. Бит С/Т определяет работу в качестве таймера либо счетчика. Счет начинается при установке TR = 1. Если необходимо управлять счетом по сигналу на входах INT, необходимо установить GATE = 1. При INT0=1 и INT1=1 счет будет разрешен, а при INT0 = 0 и INT1 = 0 счет запрещается. При TR = 0 счет прекращается.

Рис. 8. Логика работы таймеров/счетчиков в режиме 0

Режим 1. Установка битов М1 = 0 М0 = 1 определяет режим работы 1.

Режим 1 аналогичен режиму 0. Отличие состоит в том, что регистр Т/С является шестнадцатиразрядным, то есть максимальным числом, которое может быть записано, является 65535 (FFFFH). Логика работы Т/С показана на рис. 9.

Рис. 9. Логика работы таймеров/счетчиков в режиме 1

Режим 2. Установка битов М1 = 1, М0 = 0 определяет режим работы 2. В этом режиме Т/С представляет собой устройство на основе восьмиразрядного регистра TL0 для Т/С0 и TL1 для Т/С1. Счет в регистре продолжается до 255 (FFH). После переполнения кроме установки флага TF = 1 происходит автоматически перезагрузка содержимого TH в TL. Таким образом, в этом режиме счет начинается с числа, загруженного в старший байт TH. Изменяя число в TH, можно тем самым изменять время до переполнения регистра. Логика работы таймеров/счетчиков представлена на рис. 10. Назначение битов управления аналогично вышерассмотренным режимам.

Рис. 10. Логика работы таймеров/счетчиков в режиме 2

Режим 3. Установка битов М1 = 1, М0 = 1 определяет режим работы 3.

Т/С1 в этом режиме заблокирован и сохраняет свой счет, как при установке TR1 = 0.

Т/С0 представляет собой два независимых устройства на основе восьмиразрядных регистров TL0 и TH0. Устройство на основе регистра TL0 может работать в режиме таймера и в режиме счетчика. За ним сохраняются все биты управления Т/С0, оно реагирует на импульсы, поступающие на входы Т0 и INT0. При переполнении TL0 устанавливается флаг TF0. Устройство на основе регистра TH0 может работать только в режиме таймера. Оно использует бит включения TR1, при переполнении TH0 устанавливается флаг TF1. Других битов управления устройство на основе TH0 не имеет. Логика работы Т/С представлена на рис.11.

T/C1 аппаратно связан с блоком синхронизации последовательного порта. Поэтому при работе в режимах 0,1,2 при переполнении T/C1 всегда вырабатывается импульс тактирования последовательного порта. Режим 3 Т/С0 удобно использовать в случае, когда требуется работа последовательного порта и двух таймеров либо PS, таймера и счетчика.

Рис. 11. Логика работы таймеров/счетчиков в режиме 3