Шестнадцатибитные таймеры микроконтроллера ATmega 128: Методические указания к выполнению лабораторной работы по курсу «Микропроцессорные устройства систем управления», страница 3

Одновременно с установкой флага, может изменятся состояние вывода OСnA микроконтроллера. Поведение вывода OcnA определяется разрядами COMnA1 и COMnA0 регистра TCCRnA и не отличается от режима Normal.

Временной интервал появления прерываний можно рассчитать из соотношения:

где N – коэффициент деления предделителя;

OCR – содержимое регистра совпадения;

fвх.пр. – частота кварцевого резонатора.

Например:

При N=1024; OCR=14400 и fвх.пр.=7,372800

Dt=(1024*14400)/ 7372800 = 2 сек

Режим Fast PWM (быстрый ШИМ)

Таймер Т1 (Т3) имеет пять режимов Fast PWM 5,6,7,14,15, отличающихся максимальным значением счета или разрешением. Причем, два последних 14 и 15 позволяют изменять разрешение в процессе работы таймера. Разрешающая способность определяется выражением:

, где ТОР – максимальное значение счета.

Счетчик считает от нуля до максимального значения, а затем, сбрасывается в ноль и цикл повторяется.

При достижении счетчиком максимального значения устанавливается флаг прерывания TOVn регистра TIFR (ETIFR). Одновременно с ним устанавливается флаг ICFn (режим 14) либо OCFnА (режим 15).

При равенстве счетного регистра и какого-либо регистра сравнения устанавливается соответствующий флаг OCFnХ, где n=1,3; Х=А, В, С, регистра TIFR. Одновременно изменяется состояние выхода блока сравнения ОСnХ. Поведение этих выходов определяется битами COMnХ1, COMnХ0 регистра TCCRnA, в соответствии с таблицей:

Поведение вывода OCnХ в режиме Fast PWM

COMnX1

COMnX0

Состояние вывода OCnX

0

0

Таймер Тn отключен от вывода OCnX.

0

1

WGMn3=0; Тn отключен от вывода OCnX.

WGMn3=1; инверсия OCnX.

1

0

Прямой ШИМ:

Если TCNT=OCR, сбрасывается в 0.          

Если TCNT=max,  устанавливается в 1.

1

1

Инверсный ШИМ:

Если TCNT=OCR, устанавливается в 1.  

Если TCNT=max,  сбрасывается в 0.

Режим Phase Correct PWM

Таймеры Т1 (Т3) имеют пять разновидностей режима ШИМ с коррекцией фазы (режимы 1, 2, 3, 10, 11), отличающихся разрешающей способностью. Причем, в режимах 10 и 11 разрешение может задаваться программно.

В отличие от режима Fast PWM, при достижении максимального значения счетчик не сбрасывается в ноль, а начинает работать на вычитание, уменьшая с каждым импульсом свое содержимое на единицу.

При достижении счетчиком нулевого значения происходит смена направления счета и устанавливается флаг прерывания TOVn регистра TIFR (ETIFR).

При достижении счетчиком максимального значенияпроисходит смена направления счета. Производится обновление содержимого регистра сравнения. Если максимальное значение счетчика определяется регистром сравнения ICRn (режим 10) или ICRnА (режим 11), одновременно с обновлением регистра сравнения устанавливается флаг ICFn или OCFnA соответственно.

При равенстве содержимого счетного регистра и какого-либо регистра сравнения устанавливается соответствующий флаг OCnХ, где n=1,3; Х=А, В, С регистра TIFR (ETIFR). Одновременно изменяется состояние выхода блока сравнения OCnХ. Поведение вывода OCnХ определяется содержимым разрядов COMnX1, COMnX0, в соответствии с таблицей.

Поведение вывода OCnХ в режиме Режим Phase Correct PWM

COMnX1

COMnX0

Состояние вывода OCnX

0

0

Таймер Tn отключен от вывода OCnX.

0

1

WGMn3=0; Тn отключен от вывода OCnX.

WGMn3=1; инверсия.

1

0

Прямой ШИМ:

При прямом счете, сбрасывается в 0.

При обратном – устанавливается в 1.

1

1

Инверсный ШИМ:

При прямом счете, устанавливается в 1.

При обратном – сбрасывается в 0.