Память данных и спецрегистры. Специальные регистры, страница 4

Регистр INTCON служит для организации прерываний выполняемой программы при поступлении внешних сигналов, требующих срочной реакции микропроцессора. Все биты регистра можно отнести к группе флагов или к группе разрешений прерываний по разным причинам. Флаги являются индикаторами факта прерывания по соответствующему сигналу. Биты разрешений соответственно разрешают или запрещают прерывания по соответствующим сигналам. Назначение разрядов INTCON показано в табл.6.

Табл. 6

Разряд

Имя

Назначение

0

RBIF

Флаг прерываний по сигналам от RB7:RB4

1

INTF

Флаг прерываний по входу INT

2

TOIF

Флаг прерываний по переполнению TMR0

3

RBIE

Разрешение прерываний по входам RB7:RB4

4

INTE

Разрешение прерываний по входу INT

5

TOIE

Разрешение прерываний по переполнению TMR0

6

EEIE

Разрешение прерываний по окончанию записи в EEPROM

7

GIE

Общее (глобальное) разрешение прерываний

Регистры косвенной адресации

Косвенная адресация в процессорах семейства PIC16 реализуется с помощью двух регистров: INDF и FSR. Регистр INDF физически не существует. Его адрес используется только для активизации косвенной адресации. Любая инструкция микропроцессора может обращаться к нему как к обычному регистру памяти данных и выполнять чтение или запись, как и со всеми другими регистрами, однако результат будет записан или считан по адресу указанному в регистре FSR. Перед выполнением операций с косвенной адресацией содержимое регистра FSR должно быть предварительно подготовлено.

Слово конфигурации

Слово конфигурации задает состояние или способ подключения некоторых устройств микроконтроллера. В микроконтроллере PIC16F84A хранится оно в программной памяти по адресу 2007h. Заносится в память слово конфигурации в память при программировании микроконтроллера (при “прошивке”) вместе с двоичным кодом программы с помощью программатора из файла с расширением .hex, т.е. из файла программы в абсолютном формате. По умолчанию значение слова конфигурации равно 3FFF. Имена битов конфигурации PIC16F84A представлено в табл. 7.

Табл. 7

Адрес

13

12

11

10

9

8

7

6

5

4

3

2

1

0

2007h

Не используются, читаются как 1

CP

PWRTE

WDTE

FOSC1

FOSC0

Функции битов конфигурации представлены в табл. 8.

Табл. 8

В табл. 9 показана связь битов FOSC0 и FOSC1 с режимами работы тактового генератора.

Табл. 9

В ассемблере слово конфигурации в мнемоническом виде задается директивой __CONFIG, например:

__CONFIG _RC_OSC & _PWRTE_ON & _CP_OFF &_WDT_ON

Все возможные для конкретного процессора мнемонические обозначения режимов можно найти в ассемблерных текстах файлов-шаблонов с расширением .inc среды MPLAB.

В процессе отладки программы задавать слово конфигурации можно и в среде MPLAB с помощью пункта Configure/ConfigurationBits . В процессе трансляции программы (Build All) значение слова конфигурации, определенное в MPLAB или в тексте программы заносится в двоичный код программы.