Микроконтроллеры семейства AVR. Воробьева Г.С. - 46 стр.

UptoLike

Составители: 

флаг ICF ибо OCF1A (В зависимости от того, какой из регистров
используется для задания модуля счета).
При достижении счетчиком минимального значения ($0000) направле-
ние счета опять изменяется. При этом устанавливается флаг прерывания
TOV1 и производится обновление содержимого регистра сравнения.
При равенстве содержимого счетного регистра и какого-либо регистра
сравнения устанавливается соответствующий флаг OCF1A/OCF1B
соответствующего регистра. Одновременно изменяется состояние выхода
блока сравнения ОС1А/ОС1В. Как обычно, состояние вывода определяется
содержимым битов СОМ1A1(СОМ1B1):СОМ1A0(СОМ1B0) регистров
TCCR1A
В режиме Phase and frequency Correct PWM каждый период сигнала
является полностью симметричным. Это следствие того, что
обновление содержимого регистра изменения происходит в момент
достижения счетчиком минимального значения. Поэтому время прямого
счета всегда равно времени обратного счета, выходные импульсы
симметричны, и соответственно частота генерируемого сигнала остается
постоянной.
Частота генерируемого сигнала определяется выражением
f
Ocn
=f
clk_I/O
/2*N*TOP
где N— коэффициент деления предделителя.
Пример 1
.
;Программа настройки таймера.
.include "m16def.inc" ; Подключаемый файл с описанием условных
; обозначений микроконтроллера
.CSEG ; Начало сегмента кода
; Назначение имен регистрам:
.def tmp=r16
.org $0000
rjmp RESET
;Настройка 2го таймера-счетчика на режим "Сброс при совпадении"
;Без прерываний, выход - ОС2.
sbi ddrD,7 ;Настройка соответствующего порта
;на вывод (OC2)
ldi tmp , $ff ;Задание частоты (С частотой тактирования
;8МГц частота
на ОС2 соответствует 15.7Гц)
out OCR2,tmp
ldi
tmp,(1<<FOC2)|(0<<WGM20)|(0<<COM21)|(1<<COM20)|(1<<WGM21)|(1<<CS22)|(
1<<CS21)|(1<<CS20)
46