- •Лабораторна робота № 1 Тема: структура учбової мікропроцесорної лабораторії, клавіатура керування, індикація
- •Коротка інформація
- •Порядок виконання лабораторної роботи
- •Лабораторна робота № 2 Тема: пам’ять учбової мікропроцесорної лабораторії, дослідження виконання програм в покроковому I автоматичному режимах
- •Коротка інформація
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 3 Тема: дослідження програмно-доступних регістрів мікропроцесора кр580ик80
- •Коротка інформація
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 4 Тема: вивчення команд пересилання даних.
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 5 Тема: вивчення арифметичних команд
- •Коротка інформація
- •Індивідуальні завдання
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 6 Тема: вивчення логічних команд
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 7 Тема: вивчення команд переходів
- •Коротка інформація
- •Індивідуальні завдання
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 8 Тема: вивчення команд введення / виведення, керування і рестарту
- •Коротка інформація
- •Індивідуальне завдання
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 9 Тема: вивчення зв’язків мікролабораторії із зовнішнім середовищем
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 10 Тема: керування клавіатурою і індикаторами мікро лабораторії
- •Коротка інформація
- •Індивідуальні завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 11 Тема: програмування тимчасових затримок
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 12 Тема: програмне керування пристроями введення / виведення
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 13 Тема: динамічне керування об’єктами введення / виведення
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 14 Тема: імітаційне моделювання передньої панелі вимірювального приладу з вбудованим мп
- •Коротка інформація
- •Індивідуальне завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 15 Тема: тестування пам’яті мікропроцесорної системи
- •Коротка інформація
- •Індивідуальні завдання на лабораторну роботу
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота № 16 5 Тема: макет мікропроцесорної системи охоронної сигналізації на автомобілі
- •Коротка інформація Постановка задачі
- •Інженерна інтерпретація
- •Оцінка системи
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Додаток. Система команд 8–розрядного однокристального мікропроцесора к580ик80а.
- •Література
Порядок виконання лабораторної роботи
1. Включити живлення мікролабораторії (кнопка включення знаходиться з лівої сторони блоку в ніші корпусу).
2. Натиснути кнопку «Сброс». Впевнитись в тому, що на всіх індикаторах висвітлюється символ 0. Виконати дії що вказані на рис. 1.4–1.8.
3. Довільно набираючи різні дані, вивчити роботу керуючих кнопок «Вст. ад», «Запись», «Ад +», «Ад –».
4. Здійснити запис в ОЗП, починаючи з адреси 8000, десятьох довільних чисел. Натискаючи кнопку «Ад +», «Ад –», прочитати вміст цих вічок. Результати занести в стовпці 1 ÷ 3 табл. 1.1.
Таблиця 1.1. Дослідження ОЗП.
Адреса |
Вихідні дані |
Модифікація |
||
Запис |
Читання |
Запис |
Читання |
|
1 |
2 |
3 |
4 |
5 |
8000
8001
…
5. Провести модифікацію даних за тими ж адресами ОЗП. Результати занести в стовпці 4, 5 табл. 1.1.
6. Здійснити запис довільних даних в ОЗП за адресами, починаючи з адреси 9000. Прочитати вміст вічок пам’яті. Результати роботи зареєструвати як продовження табл. 1.1 в стовпцях 2, 3. Пояснити отриманий результат.
7. Здійснити читання десяти вічок ПЗП. Початкову адресу визначити за формулою Адр = 10×n, де n – порядковий номер в журналі групи. Результати занести в графи 1, 2 табл. 1.2.
Таблиця 1.2. Дослідження ПЗП.
Адреса |
Читання |
Запис |
Читання |
1 |
2 |
3 |
4 |
8. Здійснити запис довільної інформації в ті ж вічка пам’яті (стовпчик 3). Натискаючи кнопки «Ад +» і «Ад –», прочитати вміст модифікованих вічок пам’яті і занести в стовпчик 4 табл. 1.2. Пояснити отримані результати.
9. Самостійно визначити межі розміщення ПЗП і ОЗП. Початкові і кінцеві адреси зафіксувати в звіті про лабораторну роботу.
10. Зробити короткі висновки по роботі.
КОНТРОЛЬНІ ПИТАННЯ
1. Пояснити взаємодію МП та інших вузлів системи.
2. Пояснити призначення керуючих клавіш.
3. Пояснити призначення перемикача «ШАГ – АВТ».
4. Що висвітлюється на двох лівих і правих розрядах ІРД при зміні адреси на одиницю ?
5. Пояснити поняття «адреса» і «дані».
6. Як змінити невірно встановлену адресу ?
7. Обсяг безпосередньо адресованої пам’яті для МП КР580ИК80?
8. Обсяг пам’яті мікролабораторії. Яку область адресного простору займає ОЗП і ПЗП ?
Лабораторна робота № 2 Тема: пам’ять учбової мікропроцесорної лабораторії, дослідження виконання програм в покроковому I автоматичному режимах
Мета: навчитися здійснювати введення програми і її виконання в автоматичному i покроковому режимах.
Коротка інформація
В мікропроцесорних ЕОМ використовуються нуль- i одноадреснi команди, в яких разом з кодом операції (КОП) передається або адреса операнда або операнд відсутній. В останньому випадку операнд вже є розміщений в одному з регістрів i його місцезнаходження закодоване в КОП. Крім адреси, разом з КОП може передаватись безпосередньо операнд (безпосереднє дане), необхідний для виконання цієї команди. Формати команд i КОП для різних мікропроцесорів різні. Розглянемо різновиди команд МП КР580ик80.
Передачі КОП, адрес i безпосередніх даних з пам’яті здійснюється по 8-бітній шині. Адреса має 16 двійкових розрядів (бітів), тому передача адреси здійснюється двома однобайтними словами. Безпосереднє дане i КОП має по 8 біт i передається кожне одним словом (байтом). З урахуванням сказаного МП мікролабораторії оперує з командами трьох форматів (рис. 2.1).
-
КОП
Б1
КОП
Безпосередньо дане або адреса ПВВ
Б1
Б2
КОП
Безпосередньо адреса або 2-байтне дане
Б1
Б2
Б3
Рис. 2.1. Формати команд МП КР580ВМ80А
(КОП — код операції; Б1, Б2, Б3 — 1-ий, 2-ий та 3-ій байти команди відповідно; ПВВ — пристрій введення / виведення).
Програма послідовно команда за командою розмащується у вічках пам’яті. У зв’язку з різними форматами команд вони можуть займати від одного до трьох сусідніх адрес. Мiкропрограмний пристрій керування МП за зчитаним КОП, визначає, скільки ще байтів необхідно для повного зчитування команди, i здійснює цю процедуру, автоматично збільшуючи адресу на шині на одиницю при кожному звертанню до ЗП. Після закінчення виконання поточної команди збільшується вміст програмного лічильника (РС) на одиницю, тобто вміст РС показує адресу КОП наступної команди. Команди безумовного переходу i переходу до підпрограм закінчуються занесенням в РС адреси переходу. При виконанні умовних переходів адреса переходу в РС завантажується при виконанні умови, що перевіряється.
Якщо в трибайтній команді міститься адреса або двобайтне дане, наприклад 1284, то молодші дві цифри складають В2, а старші дві цифри – В3 коду команди. Про це необхідно пам’ятати при складанні програми в кодах i при аналізі виконання програми в покроковому режимі.
Так як КОП, адреса i дані кодуються однаково, важливим елементом роботи мiкро-ЕОМ є пуск програми з правильної початкової адреси, яка повинна вказувати на байт В1 (КОП) першої команди програми, інакше зчитаний байт (це може бути один з байтів адреси або безпосередньо операнд) буде інтерпретований МП як код деякої команди i вона буде виконана. Ймовірність правильного виконання програми користувачем при цьому дорівнює нулю.
Для розміщення програм в пам’яті необхідно знати фактичні області адрес, доступні для читання (ПЗП) i двонапрямленої передачі (ОЗП). Пам’ять мікролабораторії розміщена в областях адресного простору (рис. 2.2).
Адреса |
Ємність пам’яті |
ПЗП / ОЗП |
Призначення |
FFFF8400 |
31 K |
|
Невикористовувана область |
83FF83C7 |
57 |
ОЗП |
Робоча область монітору |
83C68000 |
967 |
ОЗП |
Область користувача |
7FFF0600 |
30,5 K |
|
Невикористовувана область |
05FF0400 |
512 |
ПЗП |
Область користувача |
03FF0300 |
256 |
ПЗП |
Додаткова область монітору |
02FF0000 |
768 |
ПЗП |
Область монітору |
Рис. 2.2. Карта пам’яті мікро лабораторії
Очевидно, що програма користувача, яка знаходиться на етапі вiдлагодження, може бути розміщена тільки в ОЗП в області адрес з 8000 до 83С6. Наступні 57 вічок ОЗП також програмно доступні, але вони використовуються монітором мікролабораторії для спеціальних цілей. Якщо не передбачується робота з монітором, то ці вічка можуть бути відведені під команди програми користувача. Підготовлена до виконання програма може бути перезаписана в ПЗП. При цьому необхідно пам’ятати, що перенос програми із однієї області пам’яті в іншу супроводжується зміною адрес команд переходів i iдентифiкаторiв, тому переміщення програми при ручному програмуванні пов’язане з можливістю виникнення непередбачених помилок. Запис в ПЗП (ППЗП в цьому випадку) може бути здійснений тільки на зовнішньому устаткуванні.
Для правильного кодування i декодування команд необхідна таблиця кодів операції, за допомогою якої легко прослідкувати за виконанням програми.
Завантаження програми здійснюється за вже знайомою послідовністю дій в ОЗП мікролабораторії (лаб. роб. № 1). Якщо програма буде виконуватись в автоматичному режимі, то перемикач «ШАГ–АВТ» треба встановити в положення «АВТ». Після занесення програми в пам’ять, необхідно на ІАР встановити пускову адресу. Для виконання програми треба натиснути кнопку «Пуск».
Для ознайомлення з можливостями мікролабораторії доцільно скористатись демонстраційною програмою, що записана в ПЗП, починаючи з адреси 0300.
В иконання програми в покроковому режимі здійснюється під керуванням монітору при встановленні перемикача «ШАГ–АВТ» в положення «ШАГ». Кожне натискання на кнопку «Пуск» буде спричиняти виконання чергової команди i зупинці. Цей режим є зручним при відлагоджуванні програм, керування периферійним устаткуванням, оскільки дозволяє проводити модифікацію i нове виконання програми, а також переглядати вміст регістрів МП.
Програма, алгоритм якої показаний на рис. 2.3, містить дві команди: перша (NOP) — не вносить ніяких змін в стан МП i системи; друга (JMP <адреса>) — безумовний перехід на адресу першої команди. Команда NOP - однобайтна, її код — 16-кове число 00. Друга команда - трьохбайтна, її код - C3. Другий i третiй байт цiєї команди є адреса переходу. На символьній мові Асемблера програма має вигляд:
BEG : NOP
JMP BEG
Мітка BEG є позначення на мові Асемблера адреси переходу, тобто адреса команди NOP. Пускову адресу програми встановимо 8000 (адреса першого вічка ОЗП користувача). Програма в кодах МП – на рис. 2.4.
Адреса |
Вміст |
Команда |
8000 |
00 |
BEG: NOP |
8001 |
С3 |
JMP BEG |
8002 |
00 |
|
8003 |
80 |
|
Рис. 2.4. Розміщення учбової програми за рис. 2.3. в пам’яті МП.
Послідовність чотирьохзначних адрес — це адреси вічок ОЗП, а вміст — складові кодів команд i адрес переходу, що записані за цими адресами. Розташування байтів даних для команд довжиною в 2 i 3 байта в такій формі утруднює читання великих програм, тому їх записують в іншій формі:
-
8000
00
BEG:
NOP
8001
C3 00 80
JMP BEG
8004
Якщо б у програмі була ще одна команда, то в стовпці адрес їй би відповідала адреса 8004.
Виконання цієї програми в покроковому режимі при спостеріганні за ІАР та ІРД ілюструє механізм взаємодії МП, пам’яті i системи.