Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции.doc
Скачиваний:
288
Добавлен:
20.06.2014
Размер:
1.06 Mб
Скачать
          1. Режим шим с корректировкой фазы и частоты (Phase and Frequency Correct pwm Mode) таймера t1

В режиме ШИМ с корректировкой фазы и частоты счетчик также считает в обе стороны, сначала от BOTTOM до TOP, а затем от TOP до BOTTOM (рис.).

При этом TOP может задаваться регистрами ICR1 (WGM13:0 = 8) или OCR1A (WGM13:0 = 9).

Минимальное разрешение составляет 2 бита (значение ICR1 или OCR1A равно 0x0003), а максимальное — 16 бит (значение ICR1 или OCR1A равно MAX).

В неинверсном режиме работы выхода OC0 сбрасывается при совпадении при счете вверх, устанавливается при совпадении при счете вниз, в инверсном, наоборот, устанавливается при совпадении при счете вверх, сбрасывается при совпадении при счете вниз.

Рис. Временная диаграмма работы таймера T1 в режиме ШИМ с корректировкой фазы и частоты

Когда TOP задается ICR1, устанавливается флаг прерывания ICF1, а когда — OCR1A, устанавливается флаг прерывания OCF1A, когда TCNT1 достигает значения TOP.

Флаг TOV0 устанавливается при достижении счетчиком значения BOTTOM.

Частота сигнала в режиме ШИМ с корректировкой фазы определяется следующей формулой:

,

где N — коэффициент деления частоты: 1, 8, 64, 256 или 1024.

В этом режиме значение OCR1A обновляется при достижении счетчиком значения BOTTOM. Поэтому выходной сигнал всегда симметричен. Благодаря симметричности, этот режим предпочтителен для управления двигателями.

Крайние значения регистра OCR1A представляют специальные случаи генерации сигнала:

  • OCR1A = BOTTOM — выходной сигнал является постоянным нулем в неинверсном и постоянной единицей в инверсном режиме;

  • OCR1A = TOP — выходной сигнал является постоянной единицей в неинверсном и постоянным нулем в инверсном режиме.

Если OCR1A используется для задания TOP (WGM13:0 = 9) и COM1A1:0 = 1, то скважность сигнала на выходе OC1A составит 0,5.

        1. Таймер t2

          1. Назначение и свойства таймера t2

Таймер T2 — 8-разрядный одноканальный таймер-счетчик общего назначения (рис.), который может быть использован как:

  • одноканальный счетчик;

  • сбрасывающийся (автоматически перезагружаемый) таймер при совпадении сравниваемых значений;

  • широтно-импульсный модулятор, ШИМ, (PWM, Pulse Width Modulator);

  • генератор частоты;

  • 10-битный делитель частоты;

  • источник прерывания по переполнению(TOV0) и совпадению (OCF0).

В отличие от таймера T0, таймер T2 не имеет входа для приема внешнего сигнала и соответственно, не может быть использован как счетчик внешних событий. Но зато он имеет внутренний источник тактовой частоты с выводами для подключения кварцевого резонатора частотой 32 КГц.

          1. Структура таймера t2

Рис. Схема структуры таймера T2

На схеме жирным шрифтом выделены программно-доступные регистры и отдельные биты программно-доступных регистров.

Запросы прерываний таймера фиксируются в регистре флагов прерываний таймера (Timer Interrupt Flag Register, TIFR).

Они могут быть разрешены или запрещены с помощью регистра масок прерываний таймера (Timer Interrupt Mask Register, TIMSK).

Таймер может тактироваться синхронно (на рис. clkI/O) или асинхронно с помощью внутреннего генератора (T/C Oscillator), стабилизируемого кварцем, подключаемым к выводам TOSC1/2. Синхронный или асинхронный режим выбирается с помощью регистра ASSR (Asynchronous Status Register). Также этот регистр используется для корректной записи остальных регистров таймера Т2 в асинхронном режиме.

На выбранный источник тактовых импульсов влияет поле CS02:0 (Clock Select) регистра TCCR2 (Timer/Counter Control Register). Его частота может быть поделена или он вообще может быть отключен, и тогда таймер останавливается. Однако и в этом случае счетный регистр TCNT2 является доступным для CPU. Операция записи TCNT2 процессором имеет более высокий приоритет, чем внутренние текущие операции, например, счет или сброс.

Каждый импульс инкрементирует или декрементирует регистр TCNT2, значение которого в каждом такте сравнивается со значением регистра OCR2 (Output Compare Register). Результат сравнения может быть использован для генерации заданного сигнала на выходе OC2 (Output Compare). Также при совпадении устанавливается флаг OCF2, который может быть использован для генерации соответствующего сигнала запроса прерывания.

Режим работы таймера определяется битами WGM01:0 регистра TCCR2. В соответствии с заданным режимом работы устанавливается флаг переполнения таймера TOV2 (Timer/Counter Overflow Flag), который может быть использован для генерации соответствующего прерывания.