Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Управление тактовым сигнал ом




Формирование тактового сигнала таймера/счетчика clkT0 (clkT2) осу­ществляется блоком предделителя, который был рассмотрен выше.

В качестве тактового сигнала clkTO (clkT2) таймеров/счетчиков, не име­ющих асинхронного режима, может использоваться:

· системный тактовый сигнал (clkTO(T2) =clkI/O );

· масштабированный системный тактовый сигнал (clkTO(T2) =clkI/O /n);

· внешний сигнал, поступающий на вход ТО (Т2) микроконтроллера (clkTO(T2) =clkI/O /ext);

Тактовый сигнал таймеров/счетчиков с асинхронным режимом может формироваться либо из системного тактового сигнала clkI/O (clkTO(T2) =clkI/O /n), либо — в асинхронном режиме — из сигнала от допол­нительного кварцевого резонатора ((clkTO(T2) =clkTOSC! /n)). Переключение между синхронным и асинхронным режимами работы осуществляется с помощью бита ASO (AS2) регистра ASSR.

Выбор источника тактового сигнала, а также запуск и остановка тай­меров/счетчиков осуществляются с помощью битов CS02...CSOO (CS21..CS20) регистров управления таймером TCCRn (TCCRnA/TCCRnB) согласно Табл.8. [ 1, с.352 ]

Табица 8. Выбор источника тактового сигнала таймеров/счетчиков ТО и Т2.

CSn2 CSn1 CSn0 Источник тактового сигнала(n=0,2)
Обычный таймер/счётчик Асинхронный таймер/счётчик
ASn=0 ASn=1
Таймер/счётчик остановлен Таймер/счётчик остановлен
clkI/O clkI/O ClkTOSC1
clkI/O/8 clkI/O/8 clk TOSC1/8
clkI/O/64 clkI/O/32 clk TOSC1/32
clkI/O/256 clkI/O/64 clk TOSC1/64
clkI/O/1024 clkI/O/128 clk TOSC1/128
Вывод Tn, счёт осуществляется по спадающему фронту импульсов clkI/O/256 clk TOSC1/256
Вывод Tn, счёт осуществляется по нарастающему фронту импульсов clkI/O/1024 clk TOSC1/1024

Режимы работы

Режим работы таймера/счетчика ТО (Т2) Определяется состоянием би­тов WGMn2:WGMn0 регистра ТССRn (TCCRnA/TCCRnB). Зависимость режима работы таймеров/счетчиков от состояния этих битов показана в Табл.9. [ 1, с.353 ]

Таблица 9.Режимs работы таймеров/счётчиков( n=0,2)

Номер режима WGMn1 WGMn0 Режим работы таймера/счетчика Tn Модуль счёта(TOP) Обновление регистров OCRnx Момент установки флага TOVn
Normal $FF Немедленно $FF
Phase correct PWM $FF При TOP $00
СТС(сброс или совпадении) OCRn(OCRnA) Немедленно $FF
Fast PWM $FF При TOP $FF

16-битные таймеры счётчики

Количество 16-битных таймеров зависит от модели.Контроллер Atmega 16 имеет один таймер/счётчик T1,в модели Atmega 162 уже два 16-битных таймера/счётчика-T1,T3.Они используются для формирования временных интервалов,для подсчёта числа внешних событий,формирования сигналов и генерации сигналов с ШИМ.В дополнение к этому 16-битные таймеры/счётчики могут по внешнему сигналу сохранять своё текущее состояние в отдельном регистре ввода/вывода.

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

Регистры 8-битных таймеров/счётчиков

Регистр TCCR1A TCCR1B TCNT1 OCR1A OCR1B ICR1
Atmega 16x U U U U U U
Atmega 162x U U U U U U

 

 

Регистр TCCR3A TCCR3B OCR3A OCR3AB ICR3
Atmega 16x          
Atmega 162x U U U U U

 

Таймеры T1 и T3 могут генерировать прерывание при наступлении следующих событий:

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

· равенство счётного регистра и регистра сравнения(по одному

прерыванию на каждый блок сравнения);

· сохранение счётного регистра в регистре захвата

Флаги всех прерываний 16-битных таймеров/счетчиков находятся в регистрах флагов TIFR/ETlFR/TIFRn, а разрешение/запрещение этих прерываний осуществляется установкой/сбросом соответствующих фла­гов регистров TIMSK/ETIMSK/TIMSKit (см. раздел 7.3).

Счетный регистр таймера/счетчика TCNTrt входит в состав основного блока модуля — блока реверсивного счетчика. В зависимости от режима работы модуля содержимое счетного регистра сбрасывается, инкрементируется или декрементируется по каждому импульсу тактового сигнала тай­мера/счетчика clkTn. Независимо от того, присутствует тактовый сигнал или нет, регистр доступен в любой момент времени как для чтения, так и для записи. При этом любая операция записи в счетный регистр блокирует работу всех блоков сравнения на время одного периода тактового сигнала таймера/счетчика. После подачи напряжения питания в регистре TCNT/i находится нулевое значение. При некоторых изменениях состояния тай­мера/счетчика, определяемых режимом его работы, устанавливается бит TOVn в соответствующем регистре флагов. Разрешение прерывания осу­ществляется установкой в I бита ТО1Е« соответствующего регистра маски.

Регистры сравнения OCRnA/OCInB входят в состав блоков сравнения. Во время работы таймера/счетчика производится непрерывное (в каждом такте) сравнение этих регистров с регистром TCNTn. В случае равенства содержимого регистра сравнения и счетного регистра в следую­щем такте устанавливается флаг OCFnA/OCFnB в соответствую­щем регистре флагов и генерируется прерывание (если оно разрешено). Также при наступлении этого события может изменяться состояние выво­да ОСnА/ОСnВ/ОСnС микроконтроллера. Чтобы таймер/счетчик мог уп­равлять состоянием какого-либо из этих выводов, он должен быть скон­фигурирован как выходной (соответствующий бит регистра DDRx должен быть установлен в 1).

Особенностью работы блока сравнения в режимах, предназначенных для формирования ШИМ-сигналов, является двойная буферизация запи­си в регистры сравнения. Она заключается в том, что записываемое число на самом деле сохраняется в специальном буферном регистре. А измене­ние содержимого регистра сравнения происходит только при достижении счетчиком максимального значения.

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

 

TCCR1A

 

   
  COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 Atmega 16x, 162x
Чтение(R)/Запись(W) R/W R/W R/W W W R/W R/W R/W  
Начальное значение  
  TCCR3A                    
   
  COM3A1 COM3A0 COM3B1 COM1B0 FOC3A FOC3B WGM31 WGM30 Atmega162x
Чтение(R)/Запись(W) R/W R/W R/W R/W W W R/W R/W  
Начальное значение  

 

Рис. 6. Формат регистров TCCR1A и TCCR3A.

N=1,3 Биты регистров TCCRnA

Название бита Описание
FOCnA Принудительное изменение состояния вывода OCnx. При записи в бит FOCnx лог.1 состояние вывода OCnx изменяется в соответствиис установками битов COMn1x:COMn0x регистра TCCRnA.Прерывание при этом не генерируется и сброс таймера (в режиме СТС) не производится.” Эта функция доступна только только в тех режимах,которые не используются для генерации сигнала с ШИМ.При чтении бита всегда возвращается 0.
FOCnB
WGMn1: WGMn0 Режим работы таймера/счётчика.Эти биты определяют режим работы таймера/счётчика Tn совместно с WGMn3:WGMn2 ..
COMnA1: COMnA0 Режим работы блока сравнения.Эти биты определяют поведение вывода OCnx при наступлении события”Совпадение”.Влияние содержимого этих битов на состояние вывода зависит отрежима работы/таймера счётчика.
COMnB1: COMnB0

 

 

TCCR1B

 

   
  ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10 Atmega 16x, 162x
Чтение(R)/Запись(W) R/W R/W R R/W R/W R/W R/W R/W  
Начальное значение  
  TCCR3B                    
   
  ICNC3 ICES3 - WGM33 WGM32 CS32 CS31 CS30 Atmega162x
Чтение(R)/Запись(W) R/W R/W R R/W R/W R/W R/W R/W  
Начальное значение  

 

 

Рис. 7. Формат регистров TCCR1B и TCCR3B.

 

Таблица 10.N=1,3 Биты регистров TCCRnB

Название бита Описание
ICNCn Управление схемой подавления помех блока захвата. Если бит сброшен в 0, схема подавления помех выключена(захват производится по первому активному фронту).Если бит установлен в 1, схема подавления помех включена и захват осуществляется только в случае четырёх одинаковых выборок, соответствующих активному фронту сигнала.
ICESn Выбор активного фронта сигнала захвата.Если бит ICESn сброшен в ноль, сохранение счётного регистра в регистре захвата осуществляется по нарастающему фронту сигнала.Одновременно с сохранением счётного регистра устанавливается также флаг прерывания ICFn регистра флагов.
WGMn3: WGMn2 Режим работы таймера/счётчика.Эти биты определяют режим работы таймера/счётчика Tn совместно с WGMn1:WGMn0 .
CSn2…CSn0 Управление тактовым сигналом.Эти биты определяют источник тактового сигнала таймера/счётчика.

 


Поделиться:

Дата добавления: 2014-12-30; просмотров: 132; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты