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

Серия РIС16ХХХ

ОБЩИЕ С ВЕДЕНИЯ О МИКРОКОНТРОЛЛЕРАХ | Работа системы прерываний | КРАТКОЕ ОПИСАНИЕ ОСОБЕННОСТЕЙ МИКРОКОНТРОЛЛЕРОВ | Работа ССР в режиме ШИМ | Режим пониженного энергопотребления SLЕЕР | Периферийные модули | Основные характеристики микроконтроллеров | КОНТРОЛЛЕРЫ PIC16F87X | КОНТРОЛЛЕРЫ 18 СЕРИИ | Аппаратный умножитель 8х8 |


Читайте также:
  1. З Серия английских фильмов в жанре пародийного фарса.
  2. Модемы как периферийные устройства. система управления ХЕЙЗ. Модемы серия MNP. особенности модемов классов MNP-5, 7,10. Команды модема
  3. Обычно оби бросают один раз на один вопрос, но допускается и серия вопросов.
  4. Правило 5. СЕРИЯ ДАУНОВ, ЛИНИЯ ЦЕЛИ
  5. сезон 1 серия (пилот)
  6. Серия взрывов в центре Лондона
  7. Серия обложек корейской студии Steam

Регистры SFR, связанные с прерываниями: INTCON, PIE1, PIR1, PIE2, PIR2.

Регистр управления прерываниями INTCON:

R/W - 0 R/W - 0 R/W - 0 R/W - 0 R/W - 0 R/W - 0 R/W - 0 R/W - x
GIE PEIE T0IE INTE(2) RBIE(1.2) T0IF INTF(2) RBIF(1.2)
Бит 7             Бит 0

GIE = 1/0 - глобальное разрешение/запрещение прерываний.

PEIE = 10 - разрешение/запрещение прерываний от периферии.

T0IE = 1/0 - разрешение/запрещение прерываний по переполнению от TMR0.

INTE = 1/0 - разрешение/запрещение внешнего прерывания.

RBIE = 1/0 - разрешение/запрещение прерываний по изменению уровня на выводах RВ7:RВ4 порта РОRТВ.

T0IF - флаг прерывания по переполнению от TMR0.

INTF - флаг внешнего прерывания.

RBIF - флаг прерывания по изменению уровня на выводах RВ7:RВ4 порта РОRТВ.

Примечания:

1) В некоторых МК вместо битов RBIE и RBIF могут быть GPIЕ и GРIF соответственно.

2) Отсутствует у некоторых МК.

3) В МК с одним периферийным модулем этот бит может быть ЕЕIЕ или АDIЕ.

 

Регистр РIЕ1:

PSPIE ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE
Бит 7             Бит 0

PSPIE: для микроконтроллера РIС16F873 всегда должен быть сброшен

ADIE: 1/0 -разрешение/запрет прерывания от модуля АЦП

RCIE: 10 - разрешение/запрет прерывания от асинхронного последовательного порта при приеме данных

TXIE: 1/0 - разрешение/запрет прерывания от асинхронного последовательного порта при передаче данных

SSPIE: 1/0 - разрешение/запрет прерывания от синхронного последовательного порта

CCP1IE: 1/0 - разрешение/запрет прерывания от модуля ССР

TMR2IE: 1/0 - разрешение/запрет прерывания при совпадении значения Т/С2 со значением регистра РR2

TMR1IE: 1/0 - разрешение запрет прерывания при переполнении Т/С1

 

Регистр РIЕ2:

-   - EEIE BCLIE - - CCP2IE
Бит 7             Бит 0

EEIE: 1/0 - разрешение/запрет прерывания при записи ЕЕРRОМ

BCLIE: 1/0 - разрешение/запрет прерывания при коллизии шины синхронного последовательного порта

CCP2IE: 1/0 - разрешение/запрет прерывания от модуля ССР2

 

Регистр РIR1:

PSPIF ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF
Бит 7             Бит 0

PSPIF: для микроконтроллера РIС16F873 всегда должен быть сброшен

ADIF: флаг прерывания от модуля АЦП (10 - преобразование выполнено/ не выполнено)

RCIF: флаг прерывания от асинхронного последовательного порта, 1/0 - буфер приема заполнен/пуст

TXIF: флаг прерывания от асинхронного последовательного порта, 1/0 - буфер передачи пуст/заполнен

SSPIF: флаг прерывания от синхронного последовательного порта

CCP1IF: флаг прерывания от модуля ССР1. Режим захвата: значение регистра Т/С1 запомнено. Режим сравнения: совпадение со значением регистра Т/С1 обнаружено. В режиме ШИМ: не используется.

TMR2IF: флаг прерывания при совпадении значения Т/С2 и регистра РR2

TMR1IF: флаг прерывания при переполнении Т/С1

 

Регистр РIR2:

-   - EEIF BCLIF - - CCP2IF
Бит 7             Бит 0

EEIF: флаг прерывания при успешном окончании операции записи в ЕЕРRОМ

BCLIF: флаг прерывания при коллизии шины SSР когда он работает в режиме ведущий I2С

CCP2IF: флаг прерывания от модуля ССР2. Режим захвата: значение регистра Т/С1 запомнено. Режим сравнения: совпадение со значением регистра Т/С1 обнаружено. В режиме ШИМ не используется.

Регистр РСОN содержит флаги для определения источника сброса:

• По включению питания (РОR).

• По сигналу на входе - МСLR

• По переполнению WDТ

• По обнаружению снижения напряжения питания (BOR).

- - - - - - POR BOR
Бит 7             Бит 0

POR: статус сброса при включении, 1/0 сброс при включении произведен/не произведен

BOR: 1/0 - сброс при падении напряжения питания произведен не произведен

Примечание:

Бит -ВОR может быть любым при включении питания и при отключенном детекторе снижения питания (ВОDЕN=0 в регистре конфигурации), поэтому не должен учитываться. Бит -ВОR нужен для обнаружения последующих сбросов МК при снижении питания.

Аппаратно в стеке сохраняется только адрес возврата из обработчика прерывания. Сохранение и восстановление контекста (содержимого регистров W и STATUS) должен осуществлять сам программист.

За прерываниями закреплено 2 вектора прерываний: 0000h (сброса) и 0004h (один для всех прерывания).

При запросе прерывания (устанавливается флаг соответствующего периферийного модуля) в счетчик команд загружается адрес вектора прерывания 0004h. По этому адресу должна быть расположена команда перехода на начальный адрес подпрограммы обработчика прерываний. При этом бит GIЕ = 0.

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

Время перехода на обработку прерывания - 3-4 машинных цикла.


Дата добавления: 2015-11-14; просмотров: 68 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Косвенная адресация, регистра INDF и FSR| Система прерывании РIС18FХХ2

mybiblioteka.su - 2015-2024 год. (0.008 сек.)