- •1. Основи теорії автоматичного регулювання
- •Основні поняття і визначення
- •1.2. Показники якості процесів регулювання
- •1.3. Об'єкти регулювання і їх властивості
- •1.3.1. Математичний опис нагрівальної печі як простішого об'єкту регулювання
- •1.3.2. Визначення параметрів об'єкту регулювання по кривій розгону
- •1.4. Закони автоматичного регулювання і основні типи регуляторів
- •1.4.1. Двопозиційний (релейний) регулятор
- •1.4.3. Пропорційно-інтегральний (пі) регулятор
- •1.4.2. Пропорційний (п) регулятор
- •1.4.4. Пропорційно-інтегрально-диференційний (під) регулятор
- •1.5. Математичні основи теорії автоматичного регулювання
- •1.5.1. Перетворення Лапласа
- •1.5.2. Застосування перетворення Лапласа. Передавальна функція
- •1.5.3. Типові ланки сар
- •1.5.4. З'єднання ланок. Передавальна функція замкнутої сар
- •1.5.5. Стійкість сар і методи її дослідження
- •1.6. Оптимізація перехідного процесу в сар з об'єктом регулювання типу «аперіодична ланка із запізнюванням»
- •1.7. Датчики сигналів зворотного зв'язку
- •1.7.1. Датчики температури
- •1.7.2. Нормуючі підсилювачі-перетворювачі
- •1.7.3. Датчики-вимірники тиску і витрати
- •2. Основи мікропроцесорної техніки
- •2.1. Подання чисел в цифрових пристроях
- •Відповідність двійкових, десяткових і шістнадцяткових чисел
- •2.1.1. Основні дії над двійковими числами
- •2.2. Типова структура мікропроцесорної системи
- •2.3. Мікроконтролери
- •2.3.1. Види архітектури мпс
- •2.3.2. Структура мікроконтролерів типу ріс16f87x
- •2.4. Основні типи команд і їхнє застосування
- •2.4.1. Основні типи команд та особливості програмування мікроконтролерів
- •2.5. Організація та функціонування стекової пам’яті та переривань
- •2.6. Основні внутрішні периферійні пристрої мікроконтролера
- •1. Універсальні порти вводу-виводу.
- •2. Набір таймерів.
- •2.7. Організація і функціонування інтерфейсу
- •Скорочена система команд мп кр580вм80
- •Команди мікроконтролерів pic16f87х
- •Перелік посилань
- •1. Основи теорії автоматичного регулювання..........................3
- •1.1. Основні поняття і визначення....................................................................3
- •Навчальний посібник до вивчення курсу «автоматизація технологічних процесів і мікропроцесорна техніка»
2.5. Організація та функціонування стекової пам’яті та переривань
Вихід з основної програми для виконання підпрограм, що здійснюється згідно програми або апаратно за певною подією (перериванням), передбачає запам'ятання адреси наступної після виконання підпрограми команди.
Більшість МП дозволяють організувати в ОЗП для цього спеціальну область пам'яті - стек (stack). На відзнаку від іншої області ОЗП з довільним доступом, в стек дані записуються лише послідовно, причому байт, що записаний останнім, витягається першим. Для організації стека звичайно використовується спеціальний регістр – указник стека SP. Звичайно спочатку
програми встановлюють адресу (ADR) початку стека командою LXI SP, ADR (як правило, в області старших адрес). При запису чергового байта в стек (запис здійснюється в комірку, адреса якої вказана в SP) зміст SP автоматично зменшується на 1 (стек «зростає» уверх). У разі звертання до стека на читання зміст SP автоматично збільшується на 1, після чого здійснюється читання байта з відповідної комірки. Слід відзначити, що розглянутий МП (КР580) здійснює зі стеком тільки двобайтні операції. При цьому звернення до стека здійснюються в наступних випадках:
а) запис/витяг вмісту регістрових пар командами PUSH R16 і POP R16 відповідно;
б) при переході до підпрограми (рис.2.4) і поверненні з неї – автоматичне
збереження і відновлення адреси команди основної програми, наступної за командою виклику підпрограми;
в) при обробці переривань – також збереження адреси повертання.
Організація переривань. Практично будь-яка МПС включає в себе ряд зовнішніх пристроїв, що періодично вимагають обміну інформацією з МП або іншими вузлами (клавіатура, давачі, виконавчі органи керування технологічним об'єктом і т.п.). Процес обміну можна організувати наступним чином:
- періодичним опитуванням всіх приладів з аналізом їхнього стану і при виявленні необхідності обміну – здійснити перехід до відповідної підпрограми обміну;
- при необхідності обміну зовнішній пристрій видає сигнал запиту МП: отримавши запит, МП переходить до виконання підпрограми обміну.
Очевидно, що реалізація першого способу призводить до непродуктивних витрат часу на опитування зовнішніх приладів (серед яких можуть бути прилади, що працюють поволі, або такі, що рідко вимагають обміну) і істотно обмежує завдяки цьому продуктивність МПС в цілому. При реалізації другого способу МП «відволікається» для обміну з зовнішнім пристроєм тільки в той момент, коли це справді необхідно. Такий режим обміну і називається перериванням. Для його здійснення МП (КР580) має, як вказувалося вище, вхід INT – запит на переривання, і вихід INTE – підтвердження переривання. Обмін з використанням переривань організується наступним чином:
1. При необхідності обміну (наприклад, в момент натискання клавіші на клавіатурі) зовнішній прилад видає імпульс (запит) на вхід INT.
2. Отримавши запит, мікропроцесор виконує наступні операції:
а) завершує виконання поточної команди;
б) автоматично записує адресу наступної команди у стек;
в) видає імпульс на вихід INTE про підтвердження переривання, тобто про готовність до процесу обміну.
3. Отримавши сигнал INTE від МП, зовнішній пристрій повинен видати на ШД код команди переходу до підпрограми обміну – так названий, вектор переривань.
4. МП зчитує цю команду і переходить до виконання підпрограми обміну.
Зі сказаного витікає, що реакція МП на переривання еквівалентна подачі команди CALL в довільному місці програми. Підпрограма обміну, як і будь-яка інша, повинна завершуватися командою RET, і у відповідності з п. 2,б здійсниться повернення в основну програму в те місце, звідки її виконання було перерване.
Як видно з опису п. 3, зовнішній пристрій повинен виконувати достатньо складні функції для реалізації обміну за перериванням. Тобто це спеціальна електронна схема (звичайно спеціальна ВІС – програмований контролер переривань). Цей контролер при ініціалізації МПС програмується - йому повідомляються адреси відповідних підпрограм обміну, пріоритет (черга) обслуговування різноманітних приладів і ін.
У МК є деякі особливості в організації переривань.
Переривання в МК типу PIC16F87x можуть бути реалізовані від 14 джерел, включаючи:
- зовнішнє переривання з виводу RB0/INT;
- переривання при переповненні лічильника/таймера TMR;
- переривання по закінченні запису даних в EEPROM;
- переривання при зміні сигналів на певних виводах паралельних портів.
Усі переривання мають один і той же вектор/адресу – 0004Н. Однак у керуючому регістрі переривань INTCON фіксується джерело запиту переривання встановленням відповідних бітів в 1. При цьому підпрограма обробки переривань повинна перевірити ці біти і сформувати перехід до обробки кожного переривання (виклик відповідної підпрограми). Будь-яке переривання може бути замасковане індивідуально або загальним бітом.
Біт загального дозволу/заборони переривання GIE (біт 7 у регістрі INTCON) дозволяє (GIE =1) всі індивідуально незамасковані переривання або забороняє їх (якщо GIE =0). Кожне переривання окремо може бути додатково дозволено/заборонено встановленням відповідного біта в регістрі INTCON в 0 або 1. Біт GIE обнулюється при скиданні МП. При виникненні переривання, біт GIE обнулюється, щоб заборонити подальші переривання, адреса повернення заноситься у стек, а у програмний лічильник завантажується адреса 0004h.
Підпрограма обробки переривань обов’язково повинна завершуватися командою повернення з переривання RETFIE, що здійснює повернення до основної програми і встановлює біт GIE=1, щоб знову дозволити переривання.
