Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Пользователю -> Евстифеев А.В. -> "Микроконтроллеры семейства" -> 83

Микроконтроллеры семейства - Евстифеев А.В.

Евстифеев А.В. Микроконтроллеры семейства — Infineon, 2007. — 318 c.
Скачать (прямая ссылка): microkontrolleri2007.pdf
Предыдущая << 1 .. 77 78 79 80 81 82 < 83 > 84 85 86 87 88 89 .. 100 >> Следующая


Режим сравнения 2

Режим сравнения 2 аналогичен режиму сравнения 0, главное отличие состоит в том, что имеется возможность создания только одного запроса прерывания за один период таймера. Режим сравнения 2 выбирается путем установки 110 в битовом поле CCMODx.

При первом обнаружении достижения таймером значения регистра CCx устанавливается флаг запроса на прерывание CCxIR. При этом результат сравнения не выводится на вывод порта. Однако после первого результативного сравнения, до тех пор пока не произойдет переполнение таймера, на все остальные результативные сравнения в этот период таймера не будет устанавливаться запрос на прерывание.

На рисунке приведенном ниже, после события #1 в регистр CCx записывается значение cv2. Однако даже в том случае если новое значение

14-15 МЭИ, Центр Промышленной Электроники Фирмы Infineon

САРСОМ/С167

регистра превышает старое, следующее результативное сравнение #2 будет иметь место только в следующем периоде таймера.

Input Clock

Compare Reg. CCx
\
Comparator
і k
CAPCOH Timer Ту

t

CCMODx

CCkIR

Interrupi Request

Set

(Mode 3)

Reset

Port Latch

TyIR

Рисунок 14-8

Блок-схема режима сравнения 2 и 3

Interrupt Request



CCxIO

MCBU20I9

X -31...0 У = О, 1.7, 8

Рисунок 14-9

Пример для режимов 2 и 3

14-16 МЭИ, Центр Промышленной Электроники Фирмы Infineon

САРСОМ/С167

Режим сравнения 3

Режим сравнения 3 выбирается путем установки 111 в битовом поле CCMODx. В режиме 3 за один период таймера может быть обработано только одно результативное сравнение.

После первого результативного сравнения устанавливается флаг запроса на прерывание и выставляется «1» на выходе CCxIO. При переполнении таймера на выходе устанавливается низкий уровень напряжения.

Необходимо в регистре направления порта установить порт на вывод данных. В этом режиме возможно изменять значение в триггере порта в любой момент.

Примечание: В случае совершения одновременной программной записи в вывод порта и установки значения в выводе порта по результативному сравнению, более высокий уровень приоритета имеет программная запись. При этом не будет совершено изменение выходного значения по сигналу сравнения.

Для каналов 24. 27 в режиме сравнения 3 имеется возможность для создания запроса на прерывание, но отсутствует возможность для вывода сигнала.

Double-register режим сравнения

В этом режиме два регистра сравнения работают вместе, управляя одним выходом. Этот режим вызывается специальной комбинацией режимов в двух регистрах.

Для работы в этом режиме 16 регистров каждого блока CAPCOM разделены на два банка по 8 регистров в каждом. Регистры CC0... CC7 и CC16. CC23 образуют банк 1. Регистры CC8... CC15 и CC24... CC31 образуют банк 2. В этом режиме один регистр из банка 1 и один регистр из банка 2 образуют регистровую пару. Оба регистра пары привязаны к выводу регистра банка 1.

Ниже приведены возможные па] ры регистров:
САРСОМ1 САРСОМ2
Пара регистров Выводы Пара регистров Выводы
Банк 1 Банк 2 порта Банк 1 Банк 2 порта
CC0 CC8 CC0I0 CC16 CC24 CC16I0
CC1 CC9 CC1I0 CC17 CC25 CC17I0
CC2 CC10 CC2I0 CC18 CC26 CC18I0
CC3 CC11 CC3I0 CC19 CC27 CC19I0
CC4 CC12 CC4I0 CC20 CC28 CC20I0
CC5 CC13 CC5I0 CC21 CC29 CC21I0
CC6 CC14 CC6I0 CC22 CC30 CC22I0
CC7 CC15 CC7I0 CC23 CC31 CC23I0

14-17 МЭИ, Центр Промышленной Электроники Фирмы Infineon

САРСОМ/С167

Для каждой пары регистров режим сравнения double-register может быть запрограммирован отдельно. Для включения этого режима необходимо регистр из первого банка запрограммировать в режим сравнения 1, а регистр из второго банка должен быть запрограммирован в режим сравнения 0.

Если регистр из банка 1 отключен или запрограммирован в другой режим, регистр из другого банка будет работать в режиме сравнения 0.

Ниже под обозначением CCz подразумевается регистр из второго банка, а под CCx - регистр из первого банка.

В том случае если значение таймера достигает значения регистра из пары (CCx или CCz), выставляется флаг запроса на прерывание (CCxIO или CCzIO), а также переключается напряжение на выходе CCx связанного с регистром банка 1.

Примечание: Если одновременно было выявлено результативное сравнение в регистрах CCx и CCz одной регистровой пары, то уровень напряжения на выходе будет изменен только один раз, однако будут выставлены два запроса на прерывание, один по вектору CCxINT, другой по CCzINT.

Для того чтобы использовать выводы портов в качестве выводов CCxIO в режиме double-register, необходимо установить «1» в бите регистра управления направлением порта. В этой конфигурации выход порта имеет точно такие же характеристики как и в режиме 1.

Input Clock"

Compare Reg. CCx
¦
Comparator

CAPCOM Timer Ty
і г
Comparator
і l
Compere Reg. CCz

CCMODx Mode 1

і

CCxIR

Interrupt Request



TyIR

Interrupt "Request

> Port
Toggle Lotcli *



CCxIO

t

Mode 0 CCMODz

CCzIR

Interrupt Request

MCG02Q22
Предыдущая << 1 .. 77 78 79 80 81 82 < 83 > 84 85 86 87 88 89 .. 100 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100