Управління пріоритетами запитів переривань
При роботі МК можлива ситуація, коли одночасно надходять запити на переривання від різних джерел. Для уникнення конфліктів в МК51 реалізована дворівнева апаратно-програмна шкала пріоритетів, відповідно до якої пристрій управління вибирає джерело переривання, що може бути обслужених раніше. У відповідності з апаратної шкалой пріоритетність обслуговування запитів наступна: INT0 - TF0 - INT1 - TF1 - TI /RI. rn Для будь-якого з п'яти джерел (TF1, TF0, INT1, INT0, TI або RI) може бути встановлений один з двох рівнів пріоритету - "високий" або "низький" - програмним способом. У разі збігу рівнів пріоритетів кількох джерел вибір вищого пріоритету пристрій управління проводить відповідно апаратної (незмінною) шкалою (див. також ріс.16.2 або ріс.29 в комплекті). rn Наприклад, якщо вищий пріоритет обраний програмістом для INT0 і TF1, то в разі одночасного запиту від цих джерел спочатку буде обслужених запит INT0, а потім TF1 і тільки після цього - інші запити в порядку TF0-INT1-(TI /RI) . rn Рівень пріоритету кожного джерела встановлюють через біти регістра пріоритетів переривань IP (ріс.16.4): rn rn Таблиця 9.2. rn Призначення бітів РПП - регістр IP rn rn rn rn rn Ім'я біти rn | rn rn Позиція rn | rn rn Призначення rn | rn rn rn rn - rn PS rn PT1 rn PX1 rn PT0 rn PX0 rn | rn rn IP.7-IP.5 rn IP.4 rn IP.3 rn IP.2 rn IP.1 rn IP.0 rn | rn rn не використовуються rn Біт пріоритету УАПП (запит TI-RI) rn Біт пріоритету таймера 1 (запит TF1) rn Біт пріоритету зовнішнього запиту INT1 rn Біт пріоритету таймера 0 (запит TF0) rn Біт пріоритету зовнішнього запиту INT0 rn | rn rn rn rn Примітки: 1. Установка біта в "1" - призначення високого пріоритету. rn Скидання біти в "0" - призначення низького пріоритету. rn 2. Регістр IP є осередком РПД з бітової адресацією. rn 3. Біти встановлюють і скидають тільки програмно.
|