Скачать презентацию Лекция 6 Таймеры микроконтроллера Рис 1 Функциональная Скачать презентацию Лекция 6 Таймеры микроконтроллера Рис 1 Функциональная

Лекция 12.ppt

  • Количество слайдов: 15

Лекция 6 Таймеры микроконтроллера Рис. 1 – Функциональная схема таймера Т 0 Лекция 6 Таймеры микроконтроллера Рис. 1 – Функциональная схема таймера Т 0

Таймер Т 0 может использовать следующие выводы МК: PD 4 (T 0) – вход Таймер Т 0 может использовать следующие выводы МК: PD 4 (T 0) – вход внешнего тактового сигнала для таймера Т 0 PB 2 (OC 0 A) – выход канала совпадения А таймера Т 0 PD 5 (OC 0 B) – выход канала совпадения B таймера Т 0 Таймер Т 0 может формировать запросы на следующие прерывания: TIMER 0 OVF – переполнение таймера Т 0 TIMER 0 COMPA – совпадение канала А таймера Т 0 TIMER 0 COMPB – совпадение канала B таймера Т 0 Таймер Т 0 содержит следующие регистры ввода/вывода: TCTN 0 – счетный регистр таймера T 0 OCR 0 A – регистр совпадения канала А таймера Т 0 OCR 0 B – регистр совпадения канала B таймера Т 0 TCCR 0 A, TCCR 0 B – регистры управления таймером T 0 TIMSK – регистр маски прерываний таймеров Т 0 и Т 1 TIFR – регистр флагов прерываний таймеров Т 0 и Т 1

Таймер Т 0 Бит 2 — OCIE 0 B: Разрешение прерываний таймера/счетчика 0 по Таймер Т 0 Бит 2 — OCIE 0 B: Разрешение прерываний таймера/счетчика 0 по совпадению в канале В. Когда бит OCIE 0 B установлен в единицу, а флаг I регистра состояния также установлен, то прерывания по совпадению в канале В таймера 0 разрешены. Генерация запроса на прерывание происходит в момент совпадения, если бит OCF 0 B регистра TIFR установлен. Бит 1 — TOIE 0: Разрешение прерывания по переполнению таймера/счетчика 0. Если бит TOIE 0 установлен в единицу, а также установлен флаг I регистра состояния, то прерывания по переполнению таймера 0 разрешены. Генерация запроса на прерывание происходит в случае переполнения таймера/счетчика 0, если бит TOV 0 регистра TIFR установлен. Бит 0 — OCIE 0 A: Разрешение прерываний таймера/счетчика 0 по совпадению в канале А. Когда установлены бит OCIE 0 A в единицу и флаг I регистра состояния, то прерывания по совпадению в канале В таймера 0 разрешены. Генерация запроса на прерывание происходит в момент совпадения, если бит OCF 0 A регистра TIFR установлен. Рис. 2 – Описание регистра TIMSK

Таймер Т 0 Бит 2 — OCF 0 B: Флаг совпадения в канале В. Таймер Т 0 Бит 2 — OCF 0 B: Флаг совпадения в канале В. Бит OCF 0 B устанавливается в том случае, когда возникает совпадение содержимого счетного регистра таймера/счетчика 0 и регистра совпадения OCR 0 B. Бит OCF 0 B аппаратно сбрасывается в ноль в тот момент, когда начинается выполнение соответствующей процедуры обработки прерывания. Бит OCF 0 B может быть очищен программно путем записи в него логической единицы. Прерывание выполняется, когда флаг I регистра SREG, бит OCIE 0 B (бит разрешения прерывания по совпадению В) и флаг OCF 0 B установлены. Бит 1 — TOV 0: Флаг переполнения таймера/счетчика. Бит TOV 0 устанавливается в единицу в том случае, когда происходит переполнение таймера/счетчика 0. Бит TOV 0 сбрасывается в тот момент, когда начинается выполнение соответствующей процедуры обработки прерывания. Бит TOV 0 может быть очищен программно, путем записи в него логической единицы. Прерывание выполняется, когда флаг I регистра SREG, бит TOIE 0 (бит разрешения прерывания по переполнению) и флаг TOV 0 установлены. Действие этого флага зависит от состояния разрядов WGM 02: 0. Бит 0 — OCF 0 A: Флаг совпадения канале А. Бит OCF 0 A устанавливается в том случае, когда возникает совпадение содержимого счетного регистра таймера/счетчика 0 и регистра OCR 0 A. Бит OCF 0 A аппаратно сбрасывается в ноль в тот момент, когда начинается выполнение соответствующей процедуры обработки прерывания. Бит OCF 0 A может быть очищен программно путем записи в него логической единицы. Прерывание выполняется, когда флаг I регистра SREG, бит OCIE 0 A (бит разрешения прерывания по совпадению А) и флаг OCF 0 A установлены. Рис. 3 – Описание регистра TIFR

Таймер Т 0 Биты 7 -4 — COM 0 nx: Установка режима выходов совпадения Таймер Т 0 Биты 7 -4 — COM 0 nx: Установка режима выходов совпадения каналов А и В. Биты 1 -0 — WGM 0 x: Установка режима работы таймера Т 0. Рис. 4 – Описание регистра TCCR 0 A Бит 7 — FOC 0 A: Принудительное изменение сигнала на выходе совпадения (канал А). Бит 6 — FOC 0 B: Принудительное изменение сигнала на выходе совпадения (канал В). Бит 3 — WGM 02: Выбор режима работы таймера Т 0. Биты 2: 0 — CS 02: 0: Выбор режима тактового генератора. Рис. 5 – Описание регистра TCCR 0 В

Таймер Т 0 Рис. 6 – Функциональная схема предделителя частоты таймеров Т 0 и Таймер Т 0 Рис. 6 – Функциональная схема предделителя частоты таймеров Т 0 и Т 1

Таймер Т 0 CS 02 0 CS 01 0 CS 00 0 1 1 Таймер Т 0 CS 02 0 CS 01 0 CS 00 0 1 1 1 0 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 0 B

Таймер Т 0 Рис. 8 – Счетный модуль таймера Т 0 Рис. 9 – Таймер Т 0 Рис. 8 – Счетный модуль таймера Т 0 Рис. 9 – Модуль совпадения таймера Т 0

Таймер Т 0 Режимы работы таймера Т 0: 1) 2) 3) 4) Normal mode Таймер Т 0 Режимы работы таймера Т 0: 1) 2) 3) 4) Normal mode – обычный счетный режим; CTC (Clear Timer on Compare) – сброс при совпадении; Fast PWM mode – режим быстрой ШИМ; Phase Correct PWM mode – режим ШИМ, корректной по фазе Номер режима WGM 2 WGM 1 WGM 0 Название режима 0 1 0 0 0 1 2 3 4 0 0 1 1 1 0 0 1 0 5 1 0 1 6 1 1 0 7 1 1 1 Normal PWM, Phase Correct СТС Fast PWM Зарезервиро вано PWM, Phase Correct Зарезервиро вано Fast PWM Верхний предел (TOP) 0 x. FF Флаг ТОV 0 устанавлива ется от МАХ BOTTOM OCRA 0 x. FF MAX OCRA BOTTOM OCRA TOP Рис. 10 – Выбор режима работы таймера при помощи регистров TCCR 0 A и TCCR 0 B

Таймер Т 0 в режиме CTC Рис. 11 – Работа таймера Т 0 в Таймер Т 0 в режиме CTC Рис. 11 – Работа таймера Т 0 в режиме СТС COM 0 A 1 COM 0 A 0 0 1 1 1 0 1 Описание Стандартный режим порта. Выход ОС 0 А не подключен Переключение ОС 0 А на противоположное в момент совпадения Сброс ОС 0 А в момент совпадения Установка ОС 0 А в момент совпадения СОМ 0 В COM 0 B Описание 1 0 0 0 Стандартный режим порта. Выход OC 0 B не подключен 0 1 Переключение OC 0 B в момент совпадения 1 0 Сброс OC 0 B в момент совпадения 1 1 Установка ОСОВ в момент совпадения Рис. 12 – Установка режима выводов OC 0 A и OC 0 B при помощи регистра TCCR 0 A

Таймер Т 0 в режиме Fast PWM Рис. 13 – Работа таймера Т 0 Таймер Т 0 в режиме Fast PWM Рис. 13 – Работа таймера Т 0 в режиме Fast PWM

Таймер Т 0 в режиме Fast PWM COM 0 A 1 COM 0 A Таймер Т 0 в режиме Fast PWM COM 0 A 1 COM 0 A 0 0 1 1 1 0 1 Описание COM 0 B 1 COM 0 B 0 Описание Стандартный режим порта. 0 0 Стандартный режим порта. Выход ОС 0 А не подключен Выход OC 0 A не подключен WGM 02 = 0: Стандартный режим 0 1 Зарезервировано порта. Выход ОС 0 А не подключен. 1 0 Сброс ОС 0 B в момент WGM 02 = 1: Переключение ОС 0 А совпадения, установка OC 0 B при в момент совпадения Сброс OC 0 A в момент совпадения, установка OC 0 A при достижении счетчиком значения ТОР Установка ОС 0 А в момент совпадения, сброс ОС 0 А при достижении счетчиком значения ТОР 1 1 достижении счетчиком значения ТОР Установка OC 0 B в момент совпадения, сброс OC 0 B при достижении счетчиком значения ТОР Рис. 14 – Установка режима выводов OC 0 A и OC 0 B при помощи регистра TCCR 0 A

Таймер Т 0 в режиме Phase Correct PWM Рис. 15 – Работа таймера Т Таймер Т 0 в режиме Phase Correct PWM Рис. 15 – Работа таймера Т 0 в режиме Phase Correct PWM

Таймер Т 0 в режиме Phase Correct PWM СОМ 0 А 1 0 СОМ Таймер Т 0 в режиме Phase Correct PWM СОМ 0 А 1 0 СОМ 0 А 0 0 0 1 1 Описание Стандартный режим порта. Выход ОС 0 А не подключен WGM 02 = 0: Стандартный режим порта. Выход ОС 0 А не подключен. WGM 02 = 1: Переключение ОС 0 А в момент совпадения Сброс ОС 0 А в момент совпадения при прямом счете. Установка ОС 0 А в момент совпадения при обратном счете Установка ОС 0 А в момент совпадения при прямом счете. Сброс ОС 0 А в момент совпадения при обратном счете СОМ 0 В 1 0 COM 0 B 0 0 Описание Стандартный режим порта. Выход ОС 0 B не подключен 0 1 1 0 Зарезервировано Сброс ОС 0 B в момент совпадения при прямом счете. Установка ОС 0 B в момент совпадения при обратном счете 1 1 Установка ОС 0 B в момент совпадения при прямом счете. Сброс ОС 0 B в момент совпадения при обратном счете Рис. 16 – Работа таймера Т 0 в режиме Phase Correct PWM

Установка флагов прерываний таймера Т 0 Рис. 17 – Установка флага TOV 0 Рис. Установка флагов прерываний таймера Т 0 Рис. 17 – Установка флага TOV 0 Рис. 18 – Установка флага OCR 0 x