Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Stenin Lab / C8051F60-67-устройство МК.pdf
Скачиваний:
182
Добавлен:
10.02.2015
Размер:
5.19 Mб
Скачать

C8051F060/1/2/3/4/5/6/7

24.2. Таймер 2, Таймер 3 и Таймер 4

Таймеры 2, 3, 4 представляют собой 16-разрядные таймеры/счетчики, образованные двумя SFR регистрами: TMRnL (младший байт) и TMRnH (старший байт), где n = 2, 3, 4 для Таймеров 2, 3, 4 соответственно. Эти таймеры поддерживают режимы автоперезагрузки, захвата и переключаемого выхода с возможностью реверсивного счета. Режимы захвата и автоперезагрузки выбираются с помощью соответствующих битов в регистрах управления Таймерами 2, 3 и 4 (TMRnCN). Режим переключаемого выхода выбирается с помощью регистров конфигурации Таймеров 2, 3, 4 (TMRnCF). Эти таймеры можно также использовать для генерации прямоугольного сигнала на внешнем выводе. В качестве источника сигнала тактирования Таймеров 2, 3, 4 можно использовать либо системный тактовый сигнал (деленный по частоте на 1, 2 или 12), либо внешний тактовый сигнал (деленный по частоте на 8), либо фронт входного сигнала на внешнем выводе. Таймеры 2 и 3 можно использовать для запуска АЦП. Переполнение Таймеров 2, 3 и 4 можно использовать для определения момента обновления выходного сигнала ЦАП. Таймеры 1, 2, 3 и 4 можно использовать для генерации скорости передачи данных УАПП0. Только Таймер 1 можно использовать для генерации скорости передачи данных УАПП1.

Бит выбора режима Таймер/Счетчик C/Tn (TMRnCN.1) настраивает соответствующий периферийный модуль на работу в режиме таймера или счетчика. Если C/Tn = 0, то Таймер n будет работать в режиме таймера (т.е. на вход таймера будет подаваться системный тактовый сигнал или фронт внешнего сигнала). Если C/Tn = 1, то Таймер n будет работать в режиме счетчика (т.е. регистр таймера/счетчика будет инкрементироваться (или декрементироваться) по срезу внешнего сигнала на выводе Tn). Информация о выборе и настройке внешних выводов портов (в том числе и выводов Tn) приведена в разделе 18.1.

Если Таймер n функционирует как таймер/счетчик с режимом захвата, то в качестве сигнала тактирования можно использовать либо SYSCLK, либо SYSCLK/2, либо SYSCLK/12, либо внешний тактовый сигнал, деленный по частоте на 8, либо срез внешнего сигнала на входе Tn. Если бит C/Tn (TMRnCN.1) сброшен в 0, то на вход Таймера n будет подан системный/внешний тактовый сигнал. Биты TnM0 и TnM1 в регистре TMRnCF определяют коэффициент деления этого тактового сигнала: SYSCLK, SYSCLK/2, SYSCLK/12, либо EXTCLK/8 (см. рис. 24.14). Если бит C/Tn установлен в 1, то переход внешнего сигнала на выводе Tn из состояния лог.1 в состояние лог.0 (т.е. срез) будет вызывать инкремент регистра таймера/счетчика (т.е. Таймер n функционирует как счетчик).

24.2.1. Работа Таймеров 2, 3 и 4 в режиме обратного отсчета

Таймеры 2, 3, 4 могут функционировать в режиме обратного отсчета. Если бит разрешения декрементирования (DCEN) соответствующего таймера в регистре конфигурации таймера (см. рис. 24.14) установлен в 1, то этот таймер может считать в обоих направлениях. Если DCEN = 1, то направление отсчета таймера определяется логическим уровнем на внешнем выводе TnEX. Если TnEX = 1, то таймер/счетчик будет считать в прямом направлении; если TnEX = 0, то таймер/счетчик будет считать в обратном направлении. Чтобы использовать эту функцию, необходимо подключить вывод TnEX с помощью цифровой матрицы и настроить его как цифровой вход.

Примечание: Если DCEN = 1, то другие функции входа TnEX (т.е. захват и автоперезагрузка) недоступны. Если DCEN = 1, то TnEX будет только управлять направлением отсчета таймера.

295

Ред. 1.2