Предыдущая Следующая

Регистр прерываний состоит из четырех битов (флагов) прерываний совпадения и четырех битов (флагов) прерываний захвата. Если прерывание сгенерировано, то соответствующий бит в регистре IR установлен. В противном случае, бит будет сброшен. Запись логической 1 в бит регистра IR сбросит соответствующее ему прерывание. Запись логического 0 не будет иметь эффекта.

Битовая структура регистра IR приведена в Табл. 15.3.

Таблица 15.3. Биты регистра прерываний (IR: TIMERO — TOIR: 0хЕ0004000; TIMERl - T1IR: 0хЕ0008000)

Номер 6irraIR

Функция бита

Описание

Значение после сброса

0

Прерывание MR0

Флаг прерывания для канала совпадения 0

0

1

Прерывание MR]

Флаг прерывания для канала совпадения 1

0

2

Прерывание MR2

Флаг прерывания для канала совпадения 2

0

3

Прерывание MR3

Флаг прерывания для канала совпадения 3

0

4

Прерывание CR0

Флаг прерывания для канала захвата 0

0

5

Прерывание CR1

Флаг прерывания для канала захвата 1

0

6

Прерывание CR2

Флаг прерывания для канала захвата 2

0

7

Прерывание CR3

Флаг прерывания для канала захвата 3

0

Регистр управления таймером (TCR: TIMERO — TOTCR: 0хЕ0004004; TIMER1 - T1TCR: 0хЕ0008004)

Регистр управления таймером TCR используется для того, чтобы управлять операциями таймера-счетчика.

Битовая структура регистра TCR приведена в Табл. 15.4.

Таблица 15.4. Биты регистра управления таймером (TCR: TIMERO — TOTCR: 0хЕ0004004; TIMERl - T1TCR- 0хЕ0008004)

Номер бита TCR

Функция бита

Описание

Значение после сброса

0

Разрешение счетчика

Когда этот бит установлен, счетчику таймера и счетчику предделителя разрешен счет. Если бит сброшен, счетчики заблокированы

0

1

Сброс счетчика

Когда этот бит установлен, счетчик таймера и счетчик предделителя синхронно сбрасываются по следующему после установки фронту синхросигнала pclk. Счетчики остаются сброшенными до тех пор, пока бит TCR[1] не сбрасывается в НИЗКИЙ уровень

0

Счетчик таймера (ТС: TIMERO - ТОТС: 0хЕ0004008; TIMER 1 - Т1ТС: 0хЕ0008008)

32-битный счетчик таймера инкрементируется, когда счетчик предделителя достигает своего конечного значения. Если ТС не был сброшен при достижении его заданного верхнего предела, то он досчитает до значения OxFFFFFFFF, а затем сбросится в значение 0x00000000. Этот случай не вызовет прерывания. Однако если это необходимо, для обнаружения переполнения ТС может использоваться регистр совпадения.

Регистр предделителя (PR: TIMERO — ТОРЯ: 0хЕ000400С; TIMER1 - T1PR: 0хЕ000800С)

32-битный регистр предделителя определяет максимальное (конечное) значение для счетчика предделителя.

Регистр счетчика предделителя (PC: TIMERO — ТОРС: 0хЕ0004010; TIMER1 - Т1РС: 0хЕ0008010)

32-битный счетчик предделителя управляет делением синхросигнала pclk на небольшое постоянное значение прежде, чем сигнал счетной частоты поступит на счетчик таймера. Это позволяет управлять разрешающей способностью таймера и задавать время переполнения таймера. Счетчик предделителя инкрементируется в каждом цикле pclk. Когда он достигает значения, сохраненного в регистре предделителя (PR), счетчик таймера инкрементируется, а счетчик предделителя сбрасывается в следующем цикле pclk. Например, ТС будет инкрементироваться в каждом цикле pclk, если PR = 0, каждые 2 цикла pclk, если PR = 1 и т. д.


Предыдущая Следующая



НА ГЛАВНУЮ | ЧТО ТАКОЕ PIC ? | ПРОГРАММАТОР | ПРОЕКТЫ | СТАТЬИ | ССЫЛКИ | КАРТА САЙТА
Hosted by uCoz