
2.6. Робота мп в режимi переривання
Зовнiшнi пристрої можуть запросити переривання подачею сигналу INT=1 на вiдповiдний вхiд МП. Цей сигнал може з'явитись в будь-який момент, але фiксується у внутрiшньому тригерi запиту переривання МП :
- при переходi до наступної команди;
- якщо переривання не заборонене програмним шляхом
(INTE=1), тобто внутрiшнiй тригер дозволу переривання встановлюється в стан 1 командою ЕI основної програми.
При виконаннi цих умов МП переходить в цикл М8, який вiдрiзняється вiд циклу вибiрки М1 тим, що вмiст програмного лiчильника РС не змiнюється.
АДРЕСА ПРОГРАМИ ПЕРЕРИВАННЯ готується:
- зовнiшнiм пристроєм, котрий дав запит на переривання;
- спецiальним периферiйним блоком прiоритетного переривання
(контролером переривання).
В тактi Т3 по ШД зовнiшнiй пристрiй передае в МП команду RST, що мiстить АДРЕСУ програми переривання та заносить адресу перерваної програми в стек. Одночасно, на адресну шину подається вмiст вказiвника стеку SP.
В наступному циклi починається обробка програми переривання, пiд час якої внутрiшнiй тригер дозволу переривання встановлений в "0".
Нехай iнтерфейс вводу-виводу мiстить 8 бiт паралельних даних, готових для передачi в МП. У цому випадку порядок роботи МП такий (мал.6):
1. Iнтерфейс видає сигнал вимоги переривання до МП (INT).
2. МП завершує виконання поточної команди (адреса пам'ятi 2006).
3. Вмiст лiчильника команд (адреса 2007), А також вмiст
регiстрiв МП, завантажується в стек за адресою SP, звiдки iх вмiст пiзнiше може бути вибраний I розмiщений в регiстрах та лiчильнику команд МП. Вмiст SP при цьому зменшується на число команд, розмiщених у стеку.
4. В лiчильник команд завантажується адреса програми
обробки переривання, яка виставляється побайтно на ШД пристроєм вводу-виводу.
5. МП звертається за адресою, що з'являється в лiчильнику команд, до пам'ятi (адреса 20DE) і починає виконувати пiдпрограму обслуговування переривання, яка в даному випадку забезпечує виконання команди вводу. За адресою 20DE знаходиться кiнець пiдпрограми обслуговування переривання, пiсля чого команда RET повертає МП до основної програми.
6. Перед поверненням в основну програму данi регiстрiв та лiчильника команд, якi розмiщувались в стеку, програмно повертаються в МП.
7. Лiчильник команд РС відсилає МП в пам'ять за адресою 2007 і виконання основної програми продовжується.
3. Опис лабораторноi установки
Мiкропроцесорна лабораторiя “Мiкролаб КР580ИК80” є одноплатною мiкропроцесорною системою з шинною структурою. Всi органи керування мiкролабораторiї, крiм клавiшi СЕТЬ, розташованi на платi. Мiкролабораторiя має на переднiй панелi 25 клавiш, чотири iндикатори адресного рeeстру , чотири iндикатори рeгiстра даних , перемикач режиму роботи АВТ/ШАГ , три тумблери для вводу iнформацiї i вiсiм свiтлодiодiв, зв’язаних з МП через порт вводу – виводу, регулятор гучностi звукiв , котрi генеруються процесором. Позначення та призначення клавiш:
СБРО – скидання системи та звертання до монiтора в будь–який момент часу;
АД – прирiст адреси, що висвiчується на iндикаторi адресного рeгiстра (IАР), на 1 та iндикацiя даних з пам’яті, вiдповiдаючих новiй адресi, на двох правих iндикаторах рeгiстра даних (IРД);
УСТ.АД – встановлення адреси, iндикованої на IРД в IАР. Данi з комiрки пам’ятi за адресою, вiдповiдною до IАР, висвiчуються в двох крайнiх позицiях IРД, попереднi їм двi цифри зсуваються на двi позицiї влiво;
ВОЗВР. – при виконаннi програми в кроковому режимi забезпечується повернення до виконання програми пiсля перегляду вмiсту комiрок пам’ятi;
ПУСК – виконання програми, починаючи з адреси, iндикованої на IАР;
ЗП – запис даних, що висвiчуються на двох правих iндикаторах рeгiстра даних, за адресою, вказаною на IАР, i прирiст адреси на 1;
АД– – зменшення адреси на IАР на 1 i зчитування даних з пам’ятi за но–вою адресою на два правих iндикатори IРД;
ВЫВОД – виведення даних з пам’ятi на зовнiшнiй магнiтофон (не використовується);
ВВОД – введення даних з зовнiшнього магнiтофона в пам’ять системи (не використовується);
0–9, А–F – ввiд даних в шiстнадцятковому кодi.
Iндикатори рeгiстра адреси забезпечують iндикацiю адреси комiрки пам’ятi, вмiст якоi висвiчується на двох правих iндикаторах IРД.
При виконаннi команди в кроковому режимi на IАР висвiчується адреса наступної виконуваної команди, на двох лiвих iндикаторах IРД висвiчується вмiст рeгiстра А, а на двох правих – вмiст рeгiстра флагiв. При виконаннi програми в автоматичному режимi вмiст IАР та IРД не визначений. Перемикання режимiв виконання програми здiйснюється тумблером .
Тумблери забезпечують введення даних в 2–4 розряди рeгiстра А при виконаннi команди введення IN, свiтлодiоди – iндикацiю вмiсту рeгiстра А при виконаннi команди вводу.