Перейти к содержанию
    

PCW как проверит разрешены ли прерывания?

Собственно вопрос в теме.

Командами

enable_interrupts(GLOBAL) и disable_interrupts(GLOBAL) прерывания можно включить/выключить, а как в процедуре узнать, в данный момент разрешены ли прерывания? В юзермануале от CCS этот вопрос как-то обошли.. а надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

За CCS не скажу, но думаю, что в нем сделано также, как и в более других компиляторах - все биты SFR'ов (special function registers) расписаны в хидерах контроллеров.

Соответственно: if(GIE), if(INTE), if(T0IE),...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

За CCS не скажу, но думаю, что в нем сделано также, как и в более других компиляторах - все биты SFR'ов (special function registers) расписаны в хидерах контроллеров.

Соответственно: if(GIE), if(INTE), if(T0IE),...

Совет оказался в точку. В хэдере подглядел упоминание о INTERRUPT_ACTIVE(). В мануале как-то скупо описали - только параметры, но без указания того, что оно делает. Всё заработало. Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...