Таймеры/счетчики

В составе микроконтроллера имеются независимые программно-управляемые таймеры/счётчики событий Т/С0, Т/С1 и Т/С2. Они функционируют на основе регистровых пар TH0, TL0, TH1, TL1 и TH2, TL2.

При работе в качестве таймера содержимое T/C инкрементируется в каждом машинном цикле, через каждые 12 периодов резонатора.

При работе в качестве счётчика содержимое T/C инкрементируется под воздействием перехода из 1 в 0 внешнего входного сигнала, подаваемого на соответствующий (T0, T1) вход микроконтроллера. Опрос сигналов выполняется в каждом машинном цикле. Так как на распознавание перехода требуется два машинных цикла, то максимальная частота подсчёта входных сигналов равна 1/24 частоты резонатора. На длительность периода входных сигналов ограничений сверху нет. Для гарантированного прочтения входного считываемого сигнала он должен удерживать значение 1 как минимум в течение одного машинного цикла.

Для управления режимами работы и для организации взаимодействия таймеров T/C0 и T/C1 с системой прерываний используются регистры специальных функций TMOD и TCON.

Таблица 6 - Формат регистра TMOD

7

6

5

4

3

2

1

0

GATE

C\T

M1

M0

GATE

C\T

M1

M0

T\C1

T\C0

Назначение битов M1, M0, если M1, M0 равны 0 то режим 0, если M1=0, M0=1 то режим 1, если M1=1, M0=0 то режим 2, если M1, M0 равны 1 то режим 3.

Бит C\T, если C\T=1 то счётчик, если C\T=0 то таймер.

Бит GATE- управление режимом блокировки.=1 таймер/счётчик разрешён, если вход INT0=1(аппаратное разрешение).=0 таймер/счётчик разрешён, если бит разрешения TR0 в регистре TCON=1(программное разрешение).

Таблица 7 - Формат регистра TCON

7

6

5

4

3

2

1

0

TF1

TR2

TF0

TR0

IE1

IT1

IE0

IT0

К таймерам

К прерыванию

Бит IT, управление типом внешнего прерывания, 1-прерывание по срезу, 0- прерывание по уровню

Бит IE- флаг прерывания по внешнему уровню, флаг IE устанавливается в 1 при переходе запроса на соответствующий внешний уровень.

Бит TR управление работой таймера/счетчика TR0=0-остановка, TR0=1-работа.

Бит TF флаг переполнения таймера, 1- переполнение таймера, 0 нет переполнения, формируется запрос на прерывание при переполнении таймера.

Для таймер/счетчиков режимы работы 0, 1 и 2 одинаковы, режимы 3 различны.

Режим 0. Соответствует тринадцатиразрядному таймеру-счетчику, который состоит из регистра THx и пяти младших битов регистра TLx, выполняющего функцию предделителя частоты на 32.

Режим 1. В этом режиме TL0 и TH0 образуют единый 16 разрядный регистр При переходе из состояния «все единицы» в состояние «все нули», устанавливается флаг переполнения в регистре TCON и таймер продолжает счёт с нуля.

Режим 2. При переходе из состояния «все единицы» в состояние «все нули» 8-битного счётчика TL1 приводит не только к установке флага TF1, но и автоматически перезагружает в TL1 содержимое старшего байта (TH1) таймерного регистра, которое предварительно было задано программным путем. Перезагрузка оставляет содержимое TH1 неизменным.

Режим 3. Используется редко. T1 останавливается, T0 работает как два незавимимых 8 битных таймера/счётчика.

Длительность формирования каждой кодовой комбинации определяется таймером/счетчиком T0 микроконтроллера. При переполнении таймера формируется запрос прерывания, в процессе обслуживания которого микроконтроллер читает из памяти и выводит в порт следующую кодовую комбинацию и начинает отсчет длительности следующего такта.

Определим количество машинных циклов, соответствующих временному интервалу ts при заданной рабочей частоте микроконтроллера. Длительность одного машинного цикла при тактовой частоте 33 МГц составит:

Перейти на страницу: 1 2 3

Читайте также

Применение пространственной фильтрации для улучшения радиоголографических изображений объектов, находящихся за препятствиями
В настоящее время активно развивается раздел науки, посвященный радиовидению. Это связано с тем, что радиовидение может найти свое применение в широкой сфере деятельности человека для об ...

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

Поверка электронного вольтметра В7-26 по напряжению постоянного тока
Считается, что первый вольтметр изобрел М. Фарадей, причем в 1830 году, ещё за год до того, как он же открыл явление электромагнитной индукции, на котором основано действие целого класса ...

Основные разделы

Все права защищены! (с)2024 - www.generallytech.ru