Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

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






Описание регистров tcnt1, ocr1a, tccr1a, tccr1b, timsk, TIFR






 

  Таймер-счетчик 1 – TCNT1HиTCNT1L
Разряд                  
  TCNT1[15: 8] TCNT1H
  TCNT1[7: 0] TCNT1L
Чтение/запись Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт.  
Исх. значение                  

Две ячейки в области ввода-вывода (TCNT1H и TCNT1L, вместе TCNT1) дают полный доступ, как на чтение, так и на запись к 16-разрядному счетчику. В целях гарантирования одновременности чтения и записи старшего и младшего байтов этих регистров, доступ организован с использованием 8-разрядного временного регистра старшего байта (TEMP). Временный регистр является общим для всех 16-разрядных регистров таймера (см. также “Доступ к 16-разр. регистрам”).

Изменение содержимого счетчика TCNT1 во время его работы (счета) связано с риском возникновения совпадения между TCNT1 и одним из регистров OCR1x. Запись в регистр TCNT1 блокирует отработку совпадения, которое возникнет на следующем такте, для всех блоков сравнения.

Регистр сравнения 1 A – OCR1AH и OCR1AL
Разряд                  
  OCR1A [15: 8] OCR1AH
  OCR1A [7: 0] OCR1AL
Чтение/запись Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт. Зп./Чт.  
Исх. значение                  

 

Регистр А управления таймером-счетчиком 1 – TCCR1A
Bit                  
  COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.
Исх. значение                  

 

Биты 7: 6 – COM1A1: 0: Режим формирования выходного сигнала канала A

Биты 5: 4 – COM1B1: 0: Режим формирования выходного сигнала канала В

Биты COMnA1: 0 и COMnB1: 0 влияют на работу выводов OCnA и OCnB, соответственно. Если один или оба бита COMnA1: 0 равны 1, то вывод OCnA переходит к выполнению альтернативной функции, запрещая его работу как обычного порта ввода-вывода. Аналогичные изменения происходят с выводом OCnB во время записи лог. 1 в один из битов COMnB1: 0. Однако необходимо учитывать, что остается влияние на работу данных выводов со стороны регистра направления данных (DDR) и в соответствующих разрядах этого регистра должно быть задано выходное направление для выводов OCnA или OCnB.

 

COMnA1/COMnB1 COMnA0/COMnB0 Описание
    Нормальная работа порта, сигналы OCnA/OCnB отключены.
    Переключение (инвертирование) OCnA/OCnB при совпадении.
    Сброс OCnA/OCnB при совпадении (установка лог. 0).
    Установка OCnA/OCnB при совпадении (установка лог. 1).

 

Биты 3: 2 – FOC1A: FOC1B: Режим формирования силы выходного сигнала.

Разряд 1: 0 – WGMn1: 0: Режим работы таймера-счетчика

В сочетании с битами WGM1 3: 2 из регистра TCCRnB данные биты определяют алгоритм счета, источник для задания вершины счета (ВП) и тип генерируемой формы сигнала. Таймер-счетчик может работать в одном из следующих режимов: нормальный режим (счетчик), сброс таймера при совпадении (CTC) и три режима с широтно-импульсной модуляцией (ШИМ).

 

Таблица 14. Режимы работы таймера/счетчика

Номер режима WGMО1 WGMО0 Название режима Наименование режима работы таймера-счетчика 0 Верхний предел счета Условие обновления содержимого регистра OCR0 Условие установки флага TOV0
      Normal Нормальный 0xFF Сразу после записи в регистр Достижение максимального значения (0xFF)
      Phase correct PWM ШИМ с фазовой коррекцией 0xFF Достижение верхнего предела счета Достижение минимального значения (0x00)
      СТС (сброс при совпадении) Сброс при совпадении OCR0 Сразу после записи в регистр Достижение максимального значения (0xFF)
      Fast PWM Быстрый ШИМ 0xFF Достижение верхнего предела счета Достижение максимального значения (0xFF)

 

Регистр В управления таймером-счетчиком 1 – TCCR1B
Разряд                  
  ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10 TCCR1B
Чтение/запись Чт./Зп. Чт./Зп. Чт. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.  
Исх. значение                  

 

Разряд 7 – ICNC1: Подавитель шума на входе захвата

Установка данного бита (запись лог. 1) активизирует подавитель шума на входе захвата. После активизации подавителя шумов сигнал с вывода ICPn пропускается через фильтр. Логика работы фильтра состоит в определении четырех подряд равных по значению выборок и только в этом случае изменении своего выходного состояния. Следовательно, после разрешения подавления шумов сигнал с входа захвата будет задерживаться на 4 такта системной синхронизации.

Разряд 6 – ICES1: Выбор детектируемого фронта на входе захвата

Данный бит позволяет задать, какой фронт на входе захвата ICP1 приведет к захвату состояния таймера. Если ICES1 =0, то падающий (отрицательный) фронт приводит к захвату состояния таймера, а если же ICES1 = 1, то нарастающий (положительный) фронт приводит к возникновению захвата.

Если в соответствии с установкой ICES1 возникает условие захвата, то содержимое счетчика копируется в регистр захвата ICR1. При этом также устанавливается флаг захвата ICF1, который может использоваться для генерации прерывания по захвату (если данное прерывание разрешено).

Если регистр ICR1 используется для хранения значения верхнего предела счета (см. табл. 61), то вход ICP1 отключается от соответствующего вывода микроконтроллера и функция захвата блокируется.

Разряд 5 – Зарезервированный бит

Данный бит зарезервирован для дальнейшего использования. В целях совместимости с будущими разработками рекомендуется во время записи в регистр TCCR1B в данном разряде указывать лог. 0.

Разряд 4: 3 – WGM1 3: 2: Режим работы таймера-счетчика

См. описание регистр TCCR1A.

Разряд 2: 0 – CS12: 0: Выбор тактового источника

Данный три бита позволяют выбрать тактовый источник для таймера-счетчика.

 

Таблица 11. Описание бит выбора тактового источника

CS12 CS11 CS10 Описание
      Нет синхронизации. Таймер-счетчик остановлен.
      clkI/O/1 (без предделения)
      clkI/O /8 (с предделением)
      clkI/O/64 (с предделением)
      clkI/O/256 (с предделением)
      clkI/O/1024 (с предделением)
      Внешний тактовый источник с выв. T1. Синхронизация по падающему фронту.
      Внешний тактовый источник с выв. T1. Синхронизация по нарастающему фронту.

 

Если для тактирования таймера выбран внешний вывод T1, то данная функция за ним сохраняется, даже при его настройке на вывод. Данная функция позволяет программно управлять счетом.

Регистр маски прерываний таймера-счетчика – TIMSK
Разряд                  
  OCIE2 TOIE2 TICIE1 OCIE1A OCIE1B TOIE1 OCIE0 TOIE0 TIMSK
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.  
Исх. значение                  

 

Прим.: Данный регистр биты управления прерываниями для нескольких таймер-счетчиков, но в данном разделе детализированы только биты таймера 1. Описание остальных бит необходимо искать при описании соответствующих таймеров.

Разряд 5 – TICIE1: Разрешение прерывания по захвату состояния таймера-счетчика 1

Если в данный бит записана лог. 1, а также установлен флаг I в регистре статуса (активно общее разрешение прерываний), то разрешается прерывание по захвату состояния таймера-счетчика 1. Если устанавливается флаг в регистре TIFR, программа переходит на соответствующий вектор прерывания.

Разряд 4 – OCIE1A: Разрешение прерывания по результату сравнения канала А таймера-счетчика 1

Если в данный бит записана лог. 1 и установлен флаг I в регистре статуса, то разрешается работа прерывания по результату сравнения канала A. Если устанавливается флаг OCF1A в регистре TIFR, то программа переходит на соответствующий вектор прерываний.

Разряд 3 – OCIE1В: Разрешение прерывания по результату сравнения канала В таймера-счетчика 1

Действие аналогично предыдущему, но в отношении канала сравнения В.

Разряд 2 – TOIE1: Разрешение прерывания при переполнении таймера-счетчика 1

Если в данный бит записана лог. 1 и установлен флаг I в регистре статуса, то разрешается прерывание по переполнению таймера-счетчика 1. После этого, установка флага TOV1 в регистре TIFR приведет к переходу на соответствующий вектор прерывания.

Регистр флагов прерываний таймеров-счетчиков – TIFR
Разряд                  
  OCF2 TOV2 ICF1 OCF1A OCF1B TOV1 OCF0 TOV0 TIFR
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.  
Исх. значение                  

 

Прм.: Биты данного регистра относятся к нескольким таймерам, но в данном параграфе рассматриваются биты только одного таймера. Описание остальных бит необходимо смотреть в соответствующих разделах.

Разряд 5 – ICF1: Флаг захвата состояния таймера-счетчика 1

Флаг устанавливается, если на входе ICP1 определяется условие захвата. Если регистр захвата ICR1 выбран с помощью бит WGMn3: 0 в качестве источника верхнего предела счета, флаг ICF1 устанавливается по достижении верхнего предела счета.

ICF1 автоматически сбрасывается при переходе на вектор прерывания по захвату состояния таймера-счетчика. Альтернативно флаг ICF1 можно сбрасывать путем записи в него лог. 1.

Разряд 4 – OCF1A: Флаг результата сравнения канала А таймера-счетчика 1

Данный флаг устанавливается следующим тактом после совпадения значения TCNT1 с регистром А порога сравнения (OCR1A).

Обратите внимание, что строб принудительной установки результата сравнения (FOC1A) не устанавливает флаг OCF1A. Флаг OCF1A автоматически сбрасывается при переходе на соответствующий вектор прерывания.

Альтернативно, флаг OCF1A сбрасывается путем записи в него лог. 1.

Разряд 3 – OCF1B: Флаг результата сравнения канала B таймера-счетчика 1

Данный флаг действует аналогично предыдущему, но в отношении канала сравнения В.

Разряд 2 – TOV1: Флаг переполнения таймера-счетчика 1

Установка данного флага зависит от значений бит WGMn3: 0. В нормальном режиме и режиме СТС флаг TOV1 устанавливается при переполнении таймера-счетчика. См. табл. 61 для изучения поведения флага TOV1 при задании других значений WGMn3: 0. Флаг TOV1 автоматически сбрасывается при переходе на вектор прерывания по переполнению таймера-счетчика 1. Альтернативно флаг TOV1 сбрасывается путем записи в него лог. 1.

 


 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2026 год. (0.216 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал