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

Страницы работы

Содержание работы

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

ГОУВПО «КнАГТУ»

Кафедра электропривода и автоматизации промышленных установок

Шестнадцатибитные таймеры микроконтроллера ATmega 128

Методические указания к выполнению лабораторной работы по курсу

«Микропроцессорные устройства систем управления»

Комсомольск-на-Амуре

2007


УДК 681.3.06

Шестнадцатибитные таймеры микроконтроллера ATmega 128: Методические указания к лабоpатоpной pаботе по куpсу  "Микропроцессорные устройства систем управления" /Сост. В.А.Егоpов, Е. И. Ефимов - Комсомольск-на-Амуpе: Комсомольский-на-Амуpе гос. техн. ун-т, 2007. - 8 с.

Описывается порядок программирования шестнадцатибитных таймеров Т1 и Т3 микроконтроллера ATmega128.

Пpедлагаемые методические указания пpедназначены для студентов специальности  210100 -  «Управление и информатика в технических системах» дневной фоpмы обучения.

Печатается по постановлению pедакционно-издательского совета Комсомольского-на-Амуpе госудаpственного технического унивеpситета.

Согласовано с отделом стандаpтизации.

Рецензент: С.М. Копытов

Цель работы: Изучить порядок работы с шестнадцатибитными таймерами микроконтроллера ATmega128.

1. Теоретические сведения

Шестнадцатибитные таймеры T1 и T3

Таймеры Т1 и Т3 могут использоваться для:

формирования временных интервалов;

подсчета числа внешних событий;

формирования сигналов;

генерации сигналов с ШИМ.

Кроме того, таймеры Т1 и Т3 могут по внешнему сигналу сохранят свое текущее состояние в отдельном регистре ввода/вывода.

В состав каждого таймера/счетчика входят следующие 16-разрядные регистры:

счетный регистр – TCNTn;

регистр захвата – ICRn;

три регистра сравнения – OCRnA, OCRnB, OCRnC;

три 8-разрядных регистра управления – TCCRnA, TCCRnB, TCCRnC.

Каждый 16-разрядный регистр физически размещается в двух восьмиразрядных регистрах ввода/вывода. Например: регистр TCNT1 – в регистрах TCNT1 H – (старший байт) и TCNT1 L – (младший байт).

Таймеры/счетчики Т1 и Т3 могут генерировать прерывания при наступлении следующих событий:

при переполнении счетного регистра;

при равенстве регистра сравнения и счетного регистра (по одному прерыванию на каждый из блоков сравнения А, В и С);

при сохранении счетного регистра в регистр захвата.

Флаги всех прерываний таймер/счетчиков Т1 и Т3 находятся в регистрах TIFR и ETIFR, а разрешения этих прерываний осуществляется установкой соответствующих флагов регистров TIMSK и ETIMSK.

Счетный регистр TCNT1 (TCNT3) является реверсивным счетчиком входных импульсов таймера. После включения питания регистр содержит 0000(Н). При некоторых значениях счетчика, зависящих от режима работы, устанавливается флаг прерывания TOVn, где n=1,3, регистра TIFR. Прерывание разрешается установкой в 1 бита TOIE1 (TOIE3) регистра TIMSK.

Регистры сравнения OCRnA, OCRnB, OCRnC, где n=1,3. Каждый счетчик имеет три блока сравнения А, В и С и три регистра сравнения. В случае равенства содержимого регистра сравнения OCRn* и регистра TCNTn устанавливается флаг OCFnA, OCFnB, OCFnC, где n=1,3, и генерируется прерывание (если оно разрешено). Вместе с этим, может изменяться состояние выводов OCnA, OCnB, OСnC, где n=1,3, микроконтроллера. Соответствующие линии должны быть сконфигурированы на вывод.

В режимах ШИМ, изменение содержимого регистра сравнения происходит только, при достижении счетчиком максимального значения.

Регистр захвата ICR1 (ICR3) – сохраняет в определенный момент времени содержимое счетного регистра таймера. Запись производится либо по фронту сигнала на входе ICР1 (ICР3) микроконтроллера, либо (для счетчика Т1) по сигналу от аналогового компаратора. Одновременно устанавливается флаг прерывания ICF1 регистра TIFR (ICF3 регистра ETIFR). Разрешение прерывания осуществляется установкой в 1 бита TICIE1 регистра TIMSK (бита TICIE3 регистра ETIMSK).

Для управления таймером/счетчиком используются три регистра управления: TCCRnA, TCCRnB, TCCRnC, где n=1,3,

COMnA1

COMnA0

COMnB1

COMnB0

COMnC1

COMnC0

WGMn1

WGMn0

TCCRnA

7                                                                                                     0

ICNCn

ICESn

--

WGMn3

WGMn2

CSn2

CSn1

CSn0

TCCRnB

7                                                                                                      0              

FOCnA

FOCnB

FOCnC

--

--

--

--

--

TCCRnC

Биты COMnXопределяют поведение вывода OСnX, где n=1,3; Х=А, В, С при наступлении события «Совпадение».

Биты WGMnY, где n=1,3; Y=0,1,2,3 – определяют режим работы таймера/счетчика Tn.

ICNCn – управление схемой подавления помех блока захвата. Если бит равен 0, схема подавления помех выключена. Захват производится по первому активному фронту. Если бит равен 1, схема включена, и захват осуществляется только в случае 4-х одинаковых выборок, соответствующих активному фронту сигнала.

ICFSn – выбор активного фронта сохраняющего значение счетного регистра в регистр захвата (0 – по спадающему фронту сигнала захвата, 1 – по нарастающему). Одновременно с сохранением счетного регистра, устанавливается флаг прерывания ICFn регистра TIFR (ETIFR).

Биты CS – управление коэффициентом предделителя.

Биты FOC – принудительное изменение состояния вывода OcnX, где Х – А, В, С. Функция недоступна в режимах с ШИМ.

Обращение к 16-разрядным регистрам таймера

Похожие материалы

Информация о работе