Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛБ-ЕЛз-ч2 (в буклет).doc
Скачиваний:
8
Добавлен:
05.05.2019
Размер:
8.34 Mб
Скачать

2 Програма роботи

1. Ознайомитися із принципом роботи системи керування лабораторною установкою і будовою контролера «Електроніка МС2721».

2. Скласти схему керування електроприводом з використанням контролера «Електроніка МС2721».

3. Увести з пульта керування до ОЗП контролера керуючу програму відповідно до алгоритму керування (текст програми для контролера «Електроніка МС2721» наведений у додатку Б).

4. Налагодити керуючу програму і досягти правильної роботи системи керування.

5. Оформити звіт.

3. Опис мікроконтролера «Електроніка мс2721» і схеми його з’єднання з типовим еп

1. Будова і структура КПУ «Електроніка МС2721».

Функціональні частини КПУ - пристрій ЦП і пульт керування - конструктивно виконані у вигляді самостійних пристроїв, що зчленовуються за допомогою рознімного з'єднання з плоским кабелем.

Пристрій ЦП КПУ виконаний на основі однокристалічного восьмирозрядного мікропроцесора з фіксованою системою команд КР580ВМ80А. Він в основному визначає структуру інтерфейсу і систему команд.

Мікропроцесор містить шістнадцятирозрядний канал адреси, восьмирозрядний двонаправлений канал даних, чотири вихідних і шість вхідних ліній керування. Основними структурними особливостями мікропроцесора є:

  • наявність шести 8-розрядних реґістрів загального призначення, що можуть використовуватися і як три 16-розрядних реґістри;

  • наявність 16-розрядного реґістра покажчика стека, що дозволяє розміщати стекову пам'ять у будь-якому місці ОЗП і забезпечувати введення практично необмеженого числа підпрограм;

  • наявність одновекторної восьмирівневої схеми переривання, яка має можливість маскування і розмаскування та дозволяє застосовувати мікропроцесор у системах, що працюють у реальному масштабі часу;

  • можливість роботи з ЗП і УВВ різної швидкодії;

  • видача керуючих сигналів за каналом даних.

2. Опис структурної схеми КПУ, основні блоки.

Структурна схема КПУ показана на рис. 4.1. Схема містить у собі такі функціональні вузли:

  1. ґенератор тактової частоти;

  2. мікропроцесор;

  3. схему керування;

  4. системний контролер;

  5. буфер локальної адресної шини;

  6. селектор адреси пристроїв уведення-виведення;

  7. селектор адреси пристроїв пам'яті;

  8. матрицю ОЗП/РППЗП;

  9. матрицю РППЗП;

  10. буфер даних РППЗП;

  11. буфер адреси системної шини;

  12. буфер даних системної шини;

  13. програмований контролер переривань;

  14. програмований таймер;

  15. програмований синхронно-асинхронний послідовний прийомопередавач;

  16. програмований паралельний інтерфейс;

  17. програмований паралельний інтерфейс;

  18. знаковий дисплей;

  19. блок функціональної клавіатури.

Структурна організація забезпечує використання КПУ в найрізноманітніших однопроцесорних системах користувача.

1. Система команд мікропроцесора.

Система команд мікропроцесора складається з 78 базових команд одно- , дво- та трибайтових форматів. Система команд містить у собі арифметичні та логічні команди, команди умовних і безумовних переходів, команду десяткової корекції, команди стекових операцій, команди роботи з реґістрами загального призначення, команду складання слів подвійної довжини, команди керування та команди введення/виведення. Команди обробки даних забезпечують виконання арифметичних і логічних перетворень над двома операндами: вмістом акумулятора й вмістом комірки пам’яті або будь-якого регістра загального призначення. Будь-яка команда даного типу визначає вид операції й адресу зберігання другого операнда. Операції множення і ділення виконуються за підпрограмами.

Для організації циклічного виконання програм важливу роль відіграють команди інкремента – декремента. Ці команди можуть виконуватися як над вмістом акумулятора, так і над вмістом регістра або пари регістрів, а також комірки пам’яті. Команди керування (“Перехід”, “Виклик”, “Розгалуження”) можуть бути безумовні або виконуватися за певних умов. Як умови можуть використовуватись: знак числа, нульове значення й парність вмісту акумулятора, стан тригера переносу. Команда “Перехід” використовується для переходу на нову ділянку програми. Програмний лічильник при цьому заповнюється адресою першої команди ділянки програми.

При виконанні команди “Виклик” вміст програмного лічильника запам’ятовується і може бути відновлений спеціальною командою “Повернення”. Така послідовність дозволяє продовжувати виконання програми, що була перервана командою “Виклик”. 16-розрядний покажчик стека мікропроцесора автоматично інкрементується і декрементується при командах

“Виклик” і “Повернення”. Поточне значення програмного лічильника записується до ОЗП за командою “Виклик” або зчитується з нього за командою “Повернення”. Область ОЗП визначається вмістом покажчика стека. Це дозволяє виконувати практично необмежену кількість викликів. При цьому до стеку, крім вмісту програмного лічильника, може заноситися вміст акумулятора, реґістра станів і загальних реґістрів.

Рисунок 4.1-Структурна схема контролера «Електроніка МС2721»

Як і в режимі з перериванням, це дозволяє зберегти всю інформацію про перервану програму.

У мікропроцесорі використовується декілька видів адресації: пряма, безпосередня, реґістрова, регістрова непряма, за покажчиком стека. Можливості адресації значно розширюються завдяки використанню команд інкремента та декремента вмісту пари регістрів H, L, команд підсумовування вмісту реґістрів H, L з будь-якою парою регістрів B, C або D, Е, або з покажчиком стека, а також завдяки використанню вмісту регістрів B, C і D, Е для непрямої адресації при командах завантаження та засилання акумулятора.

Час виконання команди – від одного до п’яти машинних циклів залежно від типу команди. У кожному циклі відбувається звертання до ЗП або ПВВ. Машинний цикл виконується за машинними тактами. Тривалість такта дорівнює періоду тактової частоти. Число циклів команди і число тактів у кожному циклі визначається кодом команди.

2. Функції монітора КПУ.

МОНІТОР КПУ «Електроніка МС2721» призначений для керування виконанням програм КПУ та їх налагодження. Програма МОНІТОР КПУ являє собою модуль діалогової взаємодії користувача з КПУ. Діалог між КПУ та користувачем відбувається за допомогою пульта КПУ. При надходженні з пульта КПУ чергової команди програми МОНІТОР відбувається переривання роботи програми користувача й здійснюється перехід до обробки заданої команди.

МОНІТОР виконує такі функції:

  1. керування виконанням програм;

  2. керування обміном інформацією із зовнішніми пристроями;

  3. налагодження програм.

Робота програми МОНІТОР полягає в обробці її команд. Після закінчення виконання команди програми МОНІТОР керування передається програмі, що була перед цим перервана.

Процес введення команди, а також результат її виконання відбивається на восьми цифрових індикаторах, розташованих на передній панелі пульта КПУ. Символ “__” у крайній лівій позиції індикатора свідчить про готовність програми МОНІТОР до сприйняття команд.

При введенні команди символ “__” у позиції 1 дисплея замінюється на символи “” в позиціях 1-4 або 2-3 залежно від формату команди, що вводиться. Символи свідчать про необхідність введення параметрів команди, якщо це необхідно для користувача. Параметри команд вводяться через роздільник “└─┘”.

Команда починає виконуватись при натисканні кнопки “CR”. Деякі команди (X, S, I) починають виконуватись при натисканні кнопки └─┘“, а завершуються при натисканні кнопки “CR”. При введенні недостатньої або надлишкової кількості параметрів на індикаторі відображається “Err3”.

При введенні цифр параметрів кожна нова цифра вводиться до молодшого розряду поля, відведеного під індикацію параметра, а попередня інформація зсувається на одну позицію вліво. Цифри, що виходять зліва за формат параметра, зникають. Тобто, якщо в процесі введення параметра сталася помилка, можна не скидати команду (за допомогою клавіші “#”), а продовжувати введення параметра до того часу, доки на індикаторі не з’явиться потрібний параметр. Параметри, що вводяться з пульта, надходять до пам’яті після натискання кнопки └─┘, а останній параметр вводиться натисканням кнопки “CR”.

Звернення до програми МОНІТОР КПУ передбачає й початковий запуск. Для запуску програми необхідно:

  1. пульт керування підключити до пристрою центрального процесора;

  2. увімкнути живлення КПУ;

  3. натиснути кнопку “R”. При цьому на індикаторі відображується:

- 8 0 1, 0;

  1. натиснути кнопку “#”.

При натисканні цієї кнопки відбувається встановлення відповідних комірок ОЗП, тобто здійснюються підготовчі операції для виконання команд програми МОНІТОРА. При цьому в крайній лівій позиції дисплея відображається символ “__“ , що свідчить про готовність системи до роботи. Якщо у пам’яті є програма, то їй автоматично передається керування. Про роботу програми свідчить відображення символа “__“ у крайній правій позиції індикатора.

Систему команд МОНІТОРА складає 8 команд:

S, X, G, ST, I, O, M, C.

Команди за типом виконуваних ними функцій поділяються на групи:

  1. команда керування виконанням програми (G);

  2. команди забезпечення налагодження (S, X, ST);

  3. сервісні команди (C, I, O, M);

  4. команди запуску тестів (Т1, Т2, Т3).

Команда С

За командою С (мнемоніка COMPARE – порівняти) здійснюється порівняння вмісту області пам’яті, обмеженої першими двома параметрами, із вмістом пам’яті, що починається з третього параметра команди.

При непорівнянності вмісту двох областей пам’яті на індикатор виводиться адрес комірки пам’яті з першої області. Порівняння продовжується після натискання кнопки “CR”.

Команда Х

За допомогою команди Х (EXAMINE – досліджувати) виконується дослідження і модифікація вмісту реґістрів програми користувача: A, B, C, D, L, E, H – регістри загального призначення мікропроцесора;

F – реґістр ознак мікропроцесора;

Р – організований у оперативній пам’яті 16 – бітовий реґістр адреси передачі управління програмі користувача. При зупинках у точках розриву реґістр Р має значення регістра адреси переривання програми користувача;

S – покажчик стека.

Виконання команди здійснюється у такій послідовності:

  1. уводиться символ Х;

  2. у позиції 2 індикатора виводиться ім’я регістра А, а в позиціях 5-6 – вміст досліджуваного регістра;

  3. при введенні роздільника └─┘ на індикатор виводиться ім’я наступного регістра та його вміст (у позиціях 5 – 6 або 4 – 7);

  4. модифікація вмісту поточного регістра провадиться шляхом введення з пульта нової інформації (у шістнадцятковому коді), а після неї – роздільника └─┘“;

  5. після натискання кнопки “CR” дослідження вмісту регістрів завершується.

Команда S

За командою S (мнемоника SUBSTITUTE – замінити) виконується дослідження й модифікація вмісту пам’яті.

Виконання команди ведеться у діалоговому режимі. Послідовність виконання команд наступна:

  1. вводиться символ S і шістнадцяткова адреса першої досліджуваної комірки пам’яті, а потім роздільник └─┘“. При цьому адреса комірки виводиться в позиціях 1 – 4, вміст досліджуваної комірки пам’яті в позиціях 6 – 7 індикатора;

  2. виконується модифікація поточної комірки шляхом введення з пульта нового вмісту (у шістнадцятковому коді), а потім роздільника └─┘“;

  3. після натискання кнопки “CR” дослідження вмісту пам’яті припиняється.

Команда М

Команда М переміщує вміст однієї області пам’яті до іншої. Дані вихідної області залишаються незмінними.

Виконання команди відбувається у наступній послідовності:

  1. уводиться символ “М” та шістнадцяткова адреса початку вихідної області пам’яті, тобто адреса першого байта, що переміщується. Введена адреса відображається на індикаторі в позиціях 1 – 4;

  2. вводиться роздільник └─┘, а потім шістнадцяткова адреса останнього байта, що переміщується, тобто адреса кінця вихідної області пам’яті;

  3. вводиться роздільник └─┘ та шістнадцяткова адреса початку області призначення;

  4. при натисканні на кнопку “CR” відбувається виконання команди, по її закінченні відображається символ “__“ у першій позиції індикатора.

Команда I

За командою І (мнемоніка INPUT – введення) відбувається індикація вмісту регістра зовнішнього пристрою за адресою, що вводиться з пульта керування.

Команда О

За командою О (мнемоніка OUTPUT – виведення) відбувається виведення байта даних на регістр зовнішнього пристрою за адресою, що задається в параметрі команди.

Команда G

Команда G (мнемоніка GO – перейти) є командою запуску програми. Запуск програми полягає в здійсненні передачі керування від програми МОНІТОР до програми, що виконується, та навпаки.

Команда G має декілька режимів.

Якщо заданий лише перший параметр, то він інтерпретується, як точка входу в програму користувача й відбувається передача керування за цією адресою.

Якщо задані додаткові параметри, то вони розглядаються як точка розриву, тобто як адреса програми, після досягнення яких керування передається програмі МОНІТОР. При цьому стан перерваної програми запам’ятовується й на індикатор виводиться адреса точки розриву. При натисканні кнопки “#“ відображається символ “__“, що свідчить про готовність програми МОНІТОР до сприйняття команд.