что имеется в виду под "комплексная система прерываний".
если нада несколько источников использовать - сделайте програмно доступный регистр запросов, выходы его сложите по ИЛИ и на interrupt.
в прерывании маску поочередно накладывайте в соответствии с необходимым приоритетом и выделяйте каждый источник в отдельности, после обработки - сбрасывайте запрос в регистре.
другой подход - векторные прерывания.. тоже кадата пробовали для пикоблаза, но столкнулись с тем,что контроллер сравним по емкости с процем, да и геморрой в определении адресов перехода - самому в бинарии искать нада.
короче остановились тада на первом варианте, чего и вам советую
--------------------
однако..
|