Чтобы цикл начался нужно поднять глобал интеррапт, он может подняться (кроме софтово) только завершением текущего инструкцией reti или какая она там в меге8..., Тогда следующий командный цикл будет снова вход в интеррапт
Все это верно в случае если мы уже обрабатываем первый запрос. В случае с одновременным приходом обоих запросов обычно есть аппаратный схемотехнический приоритет, вызывается более приоритетное, затем после обработки, то что в очереди
У пиков также, почти. Только там поллинг делают софтварный , чтобы нтче не пропустить. А так да, если обработал там один, а перифериал висит, то он и останется висеть...
у пиков один вектор на все прерывания (в младших версиях) и если обработчик первого прерывания стоит в начале функции, еще не завершился и тут пришло прерывание INT0, то следующее if(INT0_IF) может обработать второе прерывание в том же цикле.
Вы меня не поняли. Второй обрабатывается за первым в той же функции поскольку вектор один и соответственно после обработки сбрасывает флаг второго прерывания.