Показать сообщение отдельно
Старый 17.09.2011, 18:41   #11
alx71
Junior Member
 
Регистрация: 19.06.2009
Сообщений: 28
Вес репутации: 100/40
alx71 will become famous soon enoughalx71 will become famous soon enough
По умолчанию Re: 16f877 подскажите по прерываниям

Цитата:
Сообщение от alx71 Посмотреть сообщение
Подскажите, после BSF INTCON, GIE выполнение прервется и обработчик прерываний начнет работать по-новой, или обработка продолжится до retfie?
Да, прерывается. При возникновении прерывание GIE просто сбрасывается.

Цитата:
When an interrupt is responded to, the GIE bit is
cleared to disable any further interrupt, the return
address is pushed onto the stack and the PC is loaded
with 0004h.
RETFIE его просто устанавливает.

Цитата:
RETFIE Return from Interrupt
Syntax: [ label ] RETFIE
Operands: None
Operation: TOS → PC,
1 → GIE
Status Affected: None
Если установить GIE в обработчике прерывания, то он может прерваться другим прерыванием, так что в принципе вложенность прерываний обеспечить можно (только счетчик стека придется вести).
alx71 вне форума   Ответить с цитированием