[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
в data sheet на конкретный процессор. Так, например, 17С42 требует ожидания установки GIE при запрещении global прерывания, остальые члены 17-й серии не требуют. Про 16-е ничего не говорю - давно не пользовался. Кроме того при запрещенном global флаги индивидуальных прерываний все равно выставляются и автоматически не очищаются, поэтому при возврате из прерывания, команда retfie автоматически разрешает global и, если какое-то преывание не маскировано и флаг его взеден, происходит переход по соответсвующему вектору. Забычивость в сбросе флагов индивидуальных немаскированных прерываний приводит как бы к подвисанию процессора - он все время ветвится в эти прерывания. Кроме того, если процессор переводится в sleep mode, то даже при запрещенном глобальном, немаскированное индивидуальное прерывание, при его возникновении, непременно разбудит процессор.
E-mail: info@telesys.ru