Лекция 13 Таймер T 1 Рис. 1 – Функциональная схема таймера Т 1
Таймер Т 1 может использовать следующие выводы МК: PD 5 (T 1) – вход внешнего тактового сигнала для таймера Т 1 PB 3 (OC 1 A) – выход канала совпадения А таймера Т 1 PB 4 (OC 1 B) – выход канала совпадения B таймера Т 1 PD 6 (ICP) – вход захвата таймера T 1 Таймер Т 1 может формировать запросы на следующие прерывания: TIMER 1 CAPT – захват таймера Т 1 TIMER 1 OVF – переполнение таймера Т 1 TIMER 1 COMPA – совпадение канала А таймера Т 1 TIMER 1 COMPB – совпадение канала B таймера Т 1 Таймер Т 1 содержит следующие регистры ввода/вывода: TCTN 1 H: TCTN 1 L – счетный регистр таймера T 1 (16 разрядный) OCR 1 AH: OCR 1 AL – регистр совпадения канала А таймера Т 1 (16 разрядный) OCR 1 BH: OCR 1 BL – регистр совпадения канала B таймера Т 1 (16 разрядный) ICR 1 H: ICR 1 L – регистр захвата таймера Т 1 (16 разрядный) TCCR 1 A, TCCR 1 B, TCCR 1 C – регистры управления таймером T 1 TIMSK – регистр маски прерываний таймеров Т 0 и Т 1 TIFR – регистр флагов прерываний таймеров Т 0 и Т 1
Таймер Т 1 Бит 7 — TOIE 1: Разрешение прерываний по переполнению. Прерывания по переполнению таймера/счетчика 1 разрешены, когда значение этого бита равно единице, а также установлен флаг I регистра состояния (глобальное разрешение прерываний). Если при этом установлен флаг TOV 1 регистра TIFR, вызывается процедура обработки прерывания по соответствующему вектору. Бит 6 — OCIE 1 A: Разрешение прерывания по совпадению (канал А). Прерывания по совпадению в канале А таймера/счетчика 1 разрешены, когда значение этого бита равно единице, а также установлен флаг I регистра состояния (глобальное разрешение прерываний). Если при этом установлен флаг OCF 1 A регистра TIFR, вызывается процедура обработки прерывания по соответствующему вектору. Бит 5 — OCIE 1 B: Разрешение прерывания по совпадению (канал В). Прерывания по совпадению в канале В таймера/счетчика 1 разрешены, когда значение этого бита равно единице, а также установлен флаг I регистра состояния (глобальное разрешение прерываний). Если при этом установлен флаг OCF 1 B регистра TIFR, вызывается процедура обработки прерывания по соответствующему вектору. Бит 3 — ICIE 1: Разрешение прерываний по захвату таймера/счетчика 1. Прерывания по захвату таймера/счетчика 1 разрешены, когда значение этого бита равно единице, и флаг I регистра состояния (глобальное разрешение прерываний) также установлен. Если при этом установлен флаг ICF 1 регистра TIFR, вызывается процедура обработки прерывания по соответствующему вектору. Рис. 2 – Описание регистра TIMSK
Таймер Т 1 Бит 7 — TOV 1: Флаг переполнения таймера/счетчика 1. Поведение этого флага зависит от состояния разрядов WGM 13: 0. В режимах Normal и СТС флаг TOV 1 устанавливается в том случае, если таймер переполняется. В момент вызова процедуры обработки прерывания по переполнению таймера/счетчика 1 флаг TOV 1 автоматически сбрасывается. Флаг TOV 1 может быть сброшен программно путем записи в этот разряд логической единицы. Бит 6 — OCF 1 A: Флаг совпадения канала А таймера/счетчика 1. Этот флаг устанавливается в следующем тактовом цикле таймера после совпадения содержимого счетного регистра (TCNT 1) и регистра (OCR 1 A). Строб принудительной установки сигнала совпадения (FOC 1 A) не устанавливает флаг OCF 1 A. Флаг OCF 1 A очищается автоматически в момент запуска процедуры обработки прерывания. Флаг OCF 1 А может быть сброшен программно путем записи в этот разряд логической единицы. Бит 5 — OCF 1 B: Флаг совпадения канала В таймера/счетчика 1. Этот флаг устанавливается в следующем тактовом цикле таймера после совпадения содержимого счетного регистра (TCNT 1) и регистра совпадения (OCR 1 B). Строб принудительной установки сигнала совпадения (FOC 1 B) не устанавливает флаг OCF 1 B. Флаг OCF 1 B очищается автоматически в момент запуска процедуры обработки прерывания. Флаг OCF 1 B может быть сброшен программно путем записи в этот разряд логической единицы. Бит 3 — 1 CF 1: Флаг захвата таймера/счетчика 1. Этот флаг устанавливается в том случае, если на вход ICP 1 поступает сигнал захвата. В том случае, если регистр захвата (ICR 1) используется для хранения значения ТОР, флаг 1 CF 1 устанавливается в момент достижения счетчиком значения ТОР. Флаг ICF 1 очищается автоматически в момент запуска процедуры обработки прерывания. Флаг ICF 1 может быть сброшен программно путем записи в этот разряд логической единицы. Рис. 3 – Описание регистра TIFR
Таймер Т 1 Биты 7 -4 — COM 1 nx: Установка режима выходов совпадения каналов А и В. Биты 1 -0 — WGM 1 x: Установка режима работы таймера Т 1. Рис. 4 – Описание регистра TCCR 1 A Бит 7 — ICNC 1: Разрешение работы шумоподавителя на входе захвата. Бит 6 — ICES 1: Выбор активного фронта сигнала захвата. Бит 4 -3 — WGM 1 х: Выбор режима работы таймера Т 1. Биты 2: 0 — CS 12: 0: Выбор режима тактового генератора. Рис. 5 – Описание регистра TCCR 1 В Бит 7 — FOC 1 A: Принудительная установка выхода совпадения (канал А). Бит 6— FOC 1 В: Принудительная установка выхода совпадения (канал В). Рис. 6 – Описание регистра TCCR 1 C
Таймер Т 1 CS 12 0 0 1 1 1 CS 11 0 0 1 CS 10 0 1 0 1 1 1 Описание Нет источника сигнала (таймер/счетчик остановлен) с1 к. I/O/1 (Нет предварительного деления) с1 к. I/O /8 (деление на 8) с1 к. I/O 64 (деление на 64) с1 к. I/O /256 (деление на 256) с1 к. I/O /1024 (деление на 1024) Внешний источник сигнала на входе Т 1, Синхронизация по заднему фронту Внешний источник сигнала на входе T 1. Синхронизация по переднему фронту Рис. 7 – Выбор тактовой частоты при помощи регистра TCCR 1 B Рис. 8 – Счетный модуль таймера Т 1
Таймер Т 1 Рис. 9 – Модуль совпадения таймера Т 1
Таймер Т 1 Рис. 10 – Модуль захвата таймера Т 1
Таймер Т 1 Режимы работы таймера Т 1: 1) 2) 3) 4) 5) Normal mode – обычный счетный режим; CTC (Clear Timer on Compare) – сброс при совпадении; Fast PWM mode – режим быстрой ШИМ; Phase Correct PWM mode – режим ШИМ, корректной по фазе Phase and Frequency Correct PWM mode – режим ШИМ, корректной по фазе и частоте Mode WGM 13 WGM 12 WGM 10 Режим работы таймера/ счетчика TOP 0 0 WGM 11 0 0 0 1 0 x. FFFF 0 x 00 FF 0 0 1 0 0 x 01 FF BOTTOM 3 0 0 1 1 0 x 03 FF BOTTOM 4 5 6 7 8 0 0 1 1 1 0 0 0 1 1 0 0 1 0 OCR 1 A 0 x 00 FF 0 x 01 FF 0 x 03 FF ICR 1 MAX TOP TOP BOTTOM 9 1 0 0 1 OCR 1 A BOTTOM 10 11 12 13 14 15 1 1 1 0 0 1 1 0 1 0 1 Normal PWM, Phase Correct, 8 -бит PWM, Phase Correct, 9 -бит PWM, Phase Correct, 10 -бит СТС Fast PWM, 8 -бит Fast PWM, 9. Бит Fast PWM, 10. Бит PWM, Phase and Frequency Correct PWM, Phase Correct CTC (Зарезервировано) Fast PWM Флаг TOV 1 устанавлив ается пo MAX BOTTOM 0 1 0 0 2 ICR 1 OCR 1 A BOTTOM MAX TOP Рис. 11 – Выбор режима работы таймера при помощи регистров TCCR 0 A и TCCR 0 B
Таймер Т 1 в режиме Phase Correct PWM Рис. 12 – Работа таймера Т 1 в режиме Phase Correct PWM
Таймер Т 1 в режиме Phase and Freq. Correct PWM Рис. 13 – Работа таймера Т 1 в режиме Phase and Freq. Correct PWM
Таймер Т 1 в режиме Phase Correct PWM СОМ 1 А 1/ COM 1 B 1 0 COM 1 A 0/ COM 1 B 0 0 0 1 1 Описание Обычные операции с портом. Сигналы ОС 1 А/ОС 1 В Отключены WGM 13=0: Обычные операции с портом, Сигналы ОС 1 А/ ОС 1 В отключены. WGM 13=1: Переключение ОС 1 А в момент совпадения. Для выхода ОС 1 В этот режим зарезервирован Очистка ОС 1 А/ОС 1 В в момент совпадения при прямом счете. Сброс ОС 1 А/ОС 1 В в момент совпадения при обратном счете Установка ОС 1 А/ОС 1 В в момент совпадения при прямом счете. Сброс ОС 1 А/ОС 1 В в момент совпадения при обратном счете Рис. 14 – Работа таймера Т 1 в режимах Phase Correct PWM, Phase and Freq. Correct PWM