Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Stenin Lab / C8051F60-67-устройство МК.pdf
Скачиваний:
151
Добавлен:
10.02.2015
Размер:
5.19 Mб
Скачать

C8051F060/1/2/3/4/5/6/7

25.2. Модули захвата/сравнения

Каждый модуль можно независимо настроить для работы в одном из шести режимов: инициируемый по фронту сигнала захват, программный таймер, высокоскоростной выход, выход заданной частоты, 8- разрядный широтно-импульсный модулятор и 16-разрядный широтно-импульсный модулятор. Каждый модуль имеет связанные с ним регистры специального назначения, которые используются для обмена данными с модулем и для настройки режимов работы.

В табл.25.2 приведены комбинации бит в регистрах PCA0CPMn, используемые для перевода модулей захват/сравнение в различные режимы работы. Установка в 1 бит ECCFn в регистрах PCA0CPMn разрешает генерацию прерываний при установке в 1 флагов CCFn регистра PCA0CN. Следует иметь ввиду, что индивидуальные CCFn прерывания распознаются только в том случае, если прерывания от модуля ПМС разрешены глобально. Прерывания от ПМС разрешаются глобально установкой в 1 битов EA (IE.7) и EPCA0 (EIE1.3). Схема формирования прерываний от модуля ПМС приведена на рис.25.3.

Таблица 25.2. Настройка модулей захват/сравнение в регистре PCA0CPM

PWM16

ECOM

CAPP

CAPN

MAT

TOG

PWM

ECCF

Operation Mode

х

х

1

0

0

0

0

х

Захват инициируется положительным

фронтом сигнала на линии CEXn

х

х

0

1

0

0

0

х

Захват инициируется отрицательным

фронтом сигнала на линии CEXn

х

х

1

1

0

0

0

х

Захват инициируется изменением

сигнала на линии CEXn

х

1

0

0

1

0

0

х

Программный таймер

х

1

0

0

1

1

0

х

Высокоскоростной выход

х

1

0

0

0

1

1

х

Выход заданной частоты

0

1

0

0

0

0

1

0

8-разр. широтно-импульсный

модулятор

 

 

 

 

 

 

 

 

1

1

0

0

0

0

1

0

16-разр. широтно-импульсный

модулятор

 

 

 

 

 

 

 

 

х

= не имеет

значения

 

 

 

 

 

Рисунок 25.3. Схема формирования прерывания от ПМС

(для n = 0 … 5)

 

 

 

 

PCA0CPMn

 

PCA0CN

 

PCA0MD

P E C C M T P E C C C C C C C C C

C C C E

W C A A A O W C F R C C C C C C I

P P P C

M O P P T G M C

F F F F F F

D

S S S F

1 M P N n n n F

5 4 3 2 1 0

L

2 1 0

6 n n n

n

 

 

 

n

 

 

 

 

Переполнение

0

таймера/счетчика

1

ПМС

 

 

ECCF0

ПМС модуль 0

0

CCF0

1

 

ECCF1

ПМС модуль 1

0

 

CCF1

1

 

ECCF2

ПМС модуль 2

0

1

CCF2

 

ECCF3

ПМС модуль 3

0

 

CCF3

1

 

ECCF4

ПМС модуль 4

0

 

CCF4

1

 

ECCF5

ПМС модуль 5

0

 

CCF5

1

EPCA0

EA

 

(EIE.3)

(IE.7)

Декодер

0

0

1

1

приоритетов

прерываний

305

Ред. 1.2