Структура та основнi характеристики МIКРОЛАБа.

Мета роботи

 

Вивчення структури та функцiональних можливостей мiкропроцесорної системи 'МIКРОЛАБ КР58О', карти її пам'ятi, органiв керування та режимiв роботи, ознайомлення з принциповою електричною схемою та конструкцiєю.

 

Короткi теоретичнi вiдомостi.

 

Структура та основнi характеристики МIКРОЛАБа.

МIКРОЛАБ є мiкропроцесорною системою із шинною структурою, розробленою спецiально для вивчення апаратного та програмного забезпечення систем автоматики на базi мiкропроцесора КР58ОВМ8О.

Спрощена структурна схема МIКРОЛАБа наведена на рис.13.1, а принципова електрична - на рис.13.2.

Структурна схема складається з:

- процесорного блока;

- блока пам’ятi;

- пристрою вводу-виводу;

- блоку цифрових iндикаторiв;

- клавiатури.

ПРОЦЕСОРНИЙ БЛОК складається із трьох основних функцiональних вузлiв та ряду допомiжних схем.

Основнi функцiональнi вузли:

- мiкропроцесор,

- генератор тактових iмпульсiв,

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

У МIКРОЛАБi використовується 8-розрядний МIКРОПРОЦЕСОР КР580ВМ80 (мiкросхема D11 ).

ГЕНЕРАТОР ТАКТОВИХ IМПУЛЬСIВ зiбраний на трьох iнверторах (D1.1, D1.4, D1.5-мiкросхема КР531ЛН1). Частотнозадаючим елементом є кварцевий резонатор із власною частотою 18 МГц. З виходу генератора сигнал подається на вхiд C регiстра зсуву D3 (мiкросхема К155ИР13), що виконує функцiю подiльника вхiдної частоти на 9 (за рахунок введення зворотного зв'язку з виходiв регiстра через мiкросхему I-НЕ D7 (КР531ЛА2) на його вхiд DSR). На кожному з виходiв регiстра формуються вiд'ємнi iмпульси, зсунутi вiдносно iмпульсiв на сусiдньому розрядi на 1/18 мкс, із частотою 18МГц/9=2 МГц. Вихiднi iмпульси із першого та нульового розрядiв регiстра поступають на засувку D6.1 (КР531ЛА3) i формують синхроiмпульс F1. Синхроiмпульс F2 формується на виходi RS-тригера, утвореного елементами I-НЕ D6.2, D6.3, на входи якого поступають iмпульси із третього та сьомого вихiдних розрядiв регiстра. Синхроiмпульси F1, F2 пiдсилюються мiкросхемою D10 (К170АП3).

 

Рис. 13.1 Блок-схема системи „МІКРОЛАБ КР 580”.

 

СИСТЕМНИИ КОНТРОЛЕР складається з двонаправленого шинного формувача D12 - D13 (мiкросхеми К589АП16), пiд'єднаного до системної шини даних, та регiстра D14 (мiкросхема К589ИР12) фiксацiї байта стану мiкропроцесора, а також логiчних елементiв D9, D21, D22, формуючих разом із мiкропроцесором D11 стандартнi керуючi сигнали мiкропроцесорної системи: MEMR , MEMW, I/OR, I/OW.

СХЕМА ФОРМУВАННЯ СИГНАЛУ RESET (скидання системи), що також входить до складу процесорного блоку, побудована на D-тригерi D4.1 (мiкросхема КМ155ТМ2).

Сигнал RESET формується при:

- включеннi живлення автоматично,

- натиску клавiшi СБРОС на переднiй панелi МIКРОЛАБа.

СХЕМА ФОРМУВАННЯ ЗАПИТУ НА ПЕРЕРИВАННЯ (вхiдного сигналу INT мiкропроцесора) також знаходиться у процесорному блоцi i забезпечує покроковий режим роботи МIКРОЛАБа. Основою схеми є D-тригери D5.1, D5.2 (КМ555ТМ2).

Встановленням тумблера Т0 в положення ШАГ запит на переривання формується пiсля виконання кожної команди програми. У положеннi тумблера АВТ запит на переривання не формується.

 

 

Рис. 13.2 Схема електрична принципова “МІКРОЛАБ КР 580”.

 

ПАМ'ЯТЬ МIКРОЛАБа складається iз ОЗП ємнiстю 1 кбайт (8 мiкросхем К565РУ2 - D33...D36,D38...D41 - з органiзацiєю 1К*1) та ПЗП ємнiстю 1,5 кбайт (мiкросхеми D45,D46,D47 - ППЗП КР565РТ5 з органiзацiєю 512*8). Мiкросхема D45 встановлена у спецiальному адаптерi, що дозволяє швидко її замiнити. Для узгодження ОЗП із двонаправленою шиною даних використаний двонаправлений шинний формувач на БIС D48, D49 ( К589АП16 ).

Керування звертанням до ПЗП або ОЗП забезпечується ДЕШИФРАТОРОМ АДРЕСИ (елементи D23 - D31), органiзованим так, що вибiр пристрою (ОЗП або ПЗП), з яким буде працювати мiкропроцесор (а у випадку ПЗП - вибiр однiєї із трьох IС D45, D46, D47), визначається значеннями сигналiв старших розрядiв шини адреси згiдно табл.13.1.

 

Таблиця 13.1.

Сигнали на шинi адреси ПЗП ПЗП ОЗП
А15 А14 А13 А12 А11 А10 А9 D45 D46 D47  
+ - - -
- + - -
- - + -
- - - -
* - - - +
* - - - -

 

ОЗП МIКРОЛАБа є енергозалежним - при виключеннi живлення його вмiст губиться.

МОНIТОРОМ МIКРОЛАБа служать вiсiм семисегментних iндикаторiв - табло VD1-VD8 (АЛС324Б). На них можна бачити (у ш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 комiрки записує програма-монiтор, що зберiгається в ПЗП.

ГЕНЕРАТОР IМПУЛЬСIВ, зiбраний на транзисторах VT2, VT3, (частота визначається елементами R56, R57, C6) формує IМПУЛЬСИ ЗАХОПЛЕННЯ ШИН тривалiстю 1-2 мс. Цi iмпульси з виходу мiкросхеми D54.4 (К155ЛН2) подаються на вхiд HOLD мiкропроцесора D11, а також на вхiд лiчильника D51 (К155ИЕ5), що використовується для сканування восьми комiрок ОЗП та для синхронного пiд'єднання живлення до вiдповiдних iндикаторiв. Поки мiкропроцесор знаходиться в режимi захоплення шин, данi з вибраної комiрки ОЗП поступають в регiстр D50 (мiкросхема К589ИР12) та висвiчуються на iндикаторi, що вiдповiдає цiй комiрцi. Аналогiчно, з iнтервалом 1-2 мс висв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) -КР580ВВ55 ((D37). В МIКРОЛАБi цей ППI використовується тiльки в одному із трьох можливих режимiв - в базовому режимi вводу-виводу (режим 0). В цьому режимi данi, що виводяться з МП, фiксуються у внутрiшнiх регiстрах його портiв, а данi, що вводяться - не запам'ятовуються: в акумулятор МП передаються поточнi стани вхiдних лiнiй (вхiднi данi).

ППI КР580ВВ55 має т р и восьмирозряднi порти: А, В, С. Порт С може використовуватись як два чотирирозряднi пiвпорти:

- Сн (розряди 7-4),

- С (розряди 3-0).

Кожен із портiв А, В, та пiвпортiв С, Сн можна програмувати

або на ввiд, або на вивiд. Програмування здiйснюється шляхом запису в керуючий регiстр ППI керуючого слова (командою OUT).

Адреси портiв та керуючого регiстра ППI поданi в табл.13.2.

 

Таблиця 13.2

Порт А В С Порт - керуючий регiстр
Адреса F8 F9 FA FB

 

Порт А використовується в МIКРОЛАБi для вводу iнформацiї з клавiатури, а пiвпорт Сн - для виводу сигналiв сканування клавiатури. До виходiв порту В пiд'єднанi вiсiм свiтлодiодiв VD3-VD10. До нульового розряду порту В пiд'єднаний, крiм свiтлодiоду VD3, ще й гучномовець (регулятор гучностi його звучання розташований злiва вiд свiтлодiодiв).

До пiвпорту СL пiд'єднанi тумблери, розташованi нижче свiтлодiодiв. З їх допомогою можна задавати логiчнi сигнали на входах 3, 2, 1 порта С.

Описаний режим роботи ППI (порт А та пiвпорт СL - ввiд, порт В та пiвпорт СH - вивiд ) програмується керуючим словом 91Н, яке перед початком роботи необхiдно записати в керуючийрегiстр ППI за допомогою команди OUT.

КЛАВIАТУРА МIКРОЛАБа складається з 25 клавiш, 24 з яких (крiм клавiшi СБРОС) органiзованi в матрицю 3*8. Кожен ряд із восьми клавiш опитується програмою монiтора, послiдовно формуючої iмпульси на виходах 4, 5, 6 порта С. Зчитуванi данi перетворюються в код, що вiдповiдає натисненiй клавiшi. Клавiшi ВВОД та ВИВОД призначенi для обмiну даними з зовнiшнiм магнiтофоном.

КАРТА ПАМ'ЯТI МIКРОЛАБа наведена в табл. 13.3.

 

Таблиця 13.3

Адреса Ємнiсть пам'ятi ПЗП/ОЗП Використання
FFFF 31 Кбайт   Не використовувана область
83FF 83С7 57 байт ОЗП Робоча область монiтора
83С6 967 байт ОЗП Область споживача
7FFF 30,5 Кбайт   Невикористовувана
05FF 512 байт ПЗП Додаткова область ПЗП
03FF 1 Кбайт ПЗП Область монiтора

 

У блоцi пам'ятi монiторовi вiдводяться адреси з 0000 до 03FF. Споживач може розширити цю область до 05FF, запрограмовуючи мiкросхему ППЗУ та ставлячи її в адаптер на платi.

Основному ОЗП ємнiстю 1 Кбайт вiдведенi адреси з 8000 по 83FF, в яких старшi 57 байтiв належать робочiй областi монiтора, а решту можуть використовуватись для запису програм та даних споживача. Програма споживача зберiгається в ОЗП на протязi роботи МIКРОЛАБа. Пiсля виключення живлення програма в ОЗП стирається.

 

3. Опис лабораторної установки.

 

Принципова схема наведена на рис.13.3.

Мiкропроцесорна лабораторiя Мiкролаб КР580ИК80 є одноплатною мiкропроцесорною системою із шинною структурою. Усi органи керування мiкролабораторiї, крiм клавiшi СЕТЬ, розташованi на платi. Розташування органiв керування та iндiкацiї наведене на рис.13.2 Мiкролабораторiя має на переднiй панелi 25 (поз.1-10) клавiш, чотири iндикатори адресного регiстру (поз.11), чотири iндикатори регiстра даних (12), перемикач режиму роботи АВТ/ШАГ (13), три тумблери для вводу iнформацiї (14) i вiсiм свiтлодiодiв (15), зв'язаних з МП через порт вводу - виводу, регулятор гучностi звуку (16), який генерується процесором.

 

Позначення та призначення клавiш:

СБРОС - скидання системи та звертання до монiтора в будь-який момент часу;

АД + - прирiст на 1 адреси, що висв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 їм двi цифри зсуваються на двi позицiї влiво;

ВОЗВР. - при виконаннi програми у кроковому режимi забезпечується повернення до виконання програми пiсля перегляду вмiсту комiрок пам'ятi;

ПУСК - виконання програми, починаючи з адреси, iндикованої на IАР;

ЗП - запис даних, що висвiчуються на двох правих iндикаторах регiстра даних, за адресою, вказаною на IАР, i прирiст адреси на 1;

АД - - зменшення адреси на IАР на 1 i зчитування даних з пам'ятi за новою адресою на два правих iндикатори IРД;

ВЫВОД - виведення даних із пам'ятi на зовнiшнiй магнiтофон ( не використовується );


Рис.13.3. Принципова схема Мікролаба.


 

ВВОД - введення даних із зовнiшнього магнiтофона в пам'ять системи ( не використовується );

0-9,А-F - ввiд даних у шiстнадцятковому кодi.

Iндикатори регiстра адреси ( 11 ) забезпечують iндикацiю адреси комiрки пам'ятi, вмiст якої висвiчується на двох правих iндикаторах IРД ( 12 ).

При виконаннi команди у кроковому режимi на IАР висвiчується адреса наступної виконуваної команди, на двох лiвих iндикаторах IРД висвiчується вмiст регiстра А, а на двох правих вмiст регiстра флагiв. При виконаннi програми в автоматичному режимi вмiст IАР та IРД невизначений. Перемикання режимiв виконання програми здiйснюється тумблером 13.

Тумблери 14 забезпечують введення даних в 2-4 розряди регiстра А при виконаннi команди введення IN, свiтлодiоди 15 - iндикацiю вмiсту регiстра А при виконаннi команди введення.

 

 

Завдання.

 

4.1.Виконується на самостiйнiй пiдготовцi перед виконанням роботи.

4.1.1. Привести схему i призначення виводiв мiкропроцесора К58ОВМ8О у виглядi таблицi №13.4.

 

Таблиця 13.4.

№ виводу Позначення Яку функцiю виконує
     

 

4.1.2. У вiдповiдностi до варiанту накреслити фрагменти електричної схеми МIКРОЛАБа, що виконують заданi функцi:

 

Варiант Функцiя
формувача тактових iмпульсiв F1, F2
формувача iмпульсiв HOLD
формувача сигналу RESET
схеми формування запиту на переривання INT
схеми дешифратора адреси ПЗП та ОЗП

 

4.2. Виконується в лабораторiї.

4.2.1.Ввiмкнiть Мiкролаб в мережу 220В.

4.2.2.Натиснiть кнопку СЕТЬ, яка розмiщена лiворуч на боковiй панелi Мiкролаба.

4.2.3.Зачекайте двi хвилини, якi необхiднi для встановлення робочого режиму системи. При цьому система автоматично скидається (встановлюється у вихiдний стан). Натиск клавiшi СТОП викликає тi ж дiї (поки вона натиснута, свiтяться усi сiм сегментiв iндикатора i символ коми).

4.2.4.Вв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 4*4.

Натискання будь-якої із цих клавiш приводить до появи зображеного на нiй символа в молодшому (правому) розрядi IРД, попереднiй вмiст усiх чотирьох розрядiв одночасно змiщується на одну позицiю лiворуч, при цьому вмiст найстаршого (лiвого) розряду зникає.

Натиснiть послiдовно кнопки F,0,0,0,0. Цифра F з'явиться в молодшому розрядi IРД, потiм буде змiщуватись лiворуч i зникне пiсля четвертого натиску кнопки 0. Введiть в РД декiлька будь-яких чотирирозрядних шiстнадцяткових кодiв. Якщо при вводi потрiбного коду допущено помилку, виправити її можна тiльки повторним правильним вводом: нi зсунути вмiст IРД вправо, нi ввести цифру вiдразу в який-небудь розряд, крiм правого, не можна.

4.2.5. Встановлення адреси в рег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, яка має адресу, встановлену в РА.

 

ПРИКЛАД.

Для введення в РА адреси 0370 натиснiть послiдовно клавiшi 0,3,7,0 та УСТ.АД.

Для встановлення будь-якої iншої адреси необхiдно також ввести нове число в РД та натиснути клавiшу УСТ.АД. Натиском клавiшi СБРОС можна знову встановити нулi на всiх iндикаторах.

 

4.2.6.Запис iнформацiї в ОЗП. Необхiдно занести в ОЗП, починаючи з комiрки за адресою 80АА, команду MVI L, 05 (її шiстнадцятковий код - 2Е0. Команда є двобайтовою, тобто вона займає двi комiрки пам'ятi).

Для цього:

1. Встановити в РА адресу 80АА.

2. Ввести перший байт команди (код 2Е) у два правих розряди IРД (потрiбно послiдовно натиснути клавiшi 2,Е).

3. Натиснути клавiшу ЗАПИСЬ. При цьому код 2Е буде записаний в комiрку за адресою 80АА i змiститься в два лiвих розряди IРД, а адреса на IРА автоматично збiльшиться на одиницю (тобто буде висвiчуватись адреса 80АВ). У двох правих розрядах IРД з'явиться вмiст комiрки ОЗП за цiєю адресою.

4. Ввести у правi два розряди РД другий байт 05 команди; попереднiй вмiст цих розрядiв перемiститься у два лiвих розряди IРД, а на двох правих розрядах з'явиться код О5.

5. Натиснiть клавiшу ЗАПИСЬ. У результатi виконаних дiй команда 2ЕО5 запишеться у двi комiрки за адресами 8ОАА, 8ОАВ, а МIКРОЛАБ буде готовий прийняти другий байт даних у комiрку за адресою 8ОАС - достатньо набрати два шiстнадцяткових символи та натиснути клавiшу ЗАПИСЬ.

Автоматичне збiльшення на одиницю адреси в РА пiсля кожної операцiї запису ( пiсля натискання клавiшi ЗАПИСЬ ) дозволяє швидко ввести програму в комiрки пам'ятi в напрямку збiльшення їх адреси - достатньо пiсля вводу в РД кожних двох шiстнадцяткових цифр ( кожного байта ) натискати клавiшу ЗАПИСЬ. Звернути увагу на те, що шiстнадцятковi символи В i D висвiчуються як b i d вiдповiдно.Це зумовлено обмеженими можливостями семисегментних iндикаторiв.

4.2.7. Корекцiя вмiсту ОЗП та регiстрiв МП.

Ввести в ОЗП програму, подану в табл.13.5.

 

Таблиця 13.5.

Адреса Машинний код
3E
D3
FB
DB
FA
D3
F9
С3
800А
800В

 

Програма складається з 12 команд та займає 22 байти. У процесi вводу програми неважко помилитись. Перевiрити правильнiсть вводу можна, переглянувши всю програму чи її частину. Продивiться з цiєю метою всю введену програму.

Для цього:

1. Встановiть в РА початкову адресу програми 8000.

2. Натиснiть клавiшу АД+. Вмiст iндикаторiв змiниться так само, як i при натиску клавiшi ЗАПИСЬ: адреса на IРА збiльшиться на одиницю, вмiст двох правих розрядiв IРД змiститься у два лiвих, в правих з'явиться вмiст 05 комiрки, адреса якоi 8001 висвiчується тепер на IРА.

3. Натискайте клавiшу АД+ до тих пiр, доки не переглянете всю введену програму.

Натискуючи клавiшу АД-, можна переглянути програму у зворотному порядку (зробiть це).

Нехай при переглядi програми знайдена помилка, наприклад, за адресою 8ОО1 записаний код О6, а не О5. Виправлення помилки полягає в тому, щоб за цiєю адресою записати правильний код замiсть помилкового.

Нехай помилка знайдена вiдразу, тобто на IРА висвiчується адреса 8ОО1, а код ( О6 ) на двох правих розрядах IРД, необхiдно ввести у два правих розряди правильний код (натиснути клавiшi О,5), а потiм натиснути клавiшу ЗАПИСЬ. Тепер можна натиснути клавiшу АД- i переконатися, що за адресою 8ОО1 записаний правильний код. Якщо необхiдно змiнити вмiст не тiєї комiрки, адреса якої висвiчується на IРА, необхiдно встановити в РА потрiбну адресу i записати по нiй новий код замiсть попереднього, так само, як i в попередньому випадку.

 

ПРИКЛАД.

Необхiдно замiнити число 25, записане за адресою 8ОО1, на 33.

1. Встановiть на IРА адресу 8ОО1.

2. Введiть у два правих розряди РД число 33.

3. Натиснiть клавiшу ЗАПИСЬ.

4. Використовуючи клавiшу АД+ та АД-, переконайтесь, що фрагмент програми записаний вiрно, необхiдну змiну внесено.

4.2.8.Виконання програми в автоматичному режимi.

Повторний запуск програми.

Для того, щоб МП почав виконувати програму, яка знаходиться в пам'ятi системи, необхiдно:

1. Встановити перемикач АВТ/ШАГ в положення АВТ.

2. Встановити в РА початкову адресу програми (адреса першого байта її першої команди).

3. Натиснути клавiшу ПУСК.

ПРИКЛАД 1.

У ПЗП МIКРОЛАБа є програма генерацiї одного звукового сигналу, записана з адреси О37О. Виконайте цю програму в автоматичному режимi.

 

ПРИКЛАД 2.

Починаючи з адреси О35О в ПЗП МIКРОЛАБА записана програма, яка формує чотири звукових сигнали з паузами мiж ними (вона використовує пiдпрограму формування одного звукового сигналу, записану за адресою О37О). Виконайте програму в автоматичному режимi.

При натисканнi клавiшi ПУСК вмiст РА запам'ятовується. Через що пiсля закiнчення роботи програми (якщо в нiй попередньо зроблена передача керування монiтору) або пiсля натиску клавiшi СБРОС можна ще раз запустити програму на виконання простим методом натисканням клавiшi ВОЗВР. Натиснiть її i ви знову одержите чотири звуки.

В ПЗП МIКРОЛАБа є програма виконання вiдомої вам мелодiї. Програма записана, починаючи з адреси 0300.

Запустiть її на виконання в автоматичному режимi. Ця програма не є пiдпрограмою, тому пiсля закiнчення мелодiї необхiдно натиснути клавiшу СБРОС.

Натиск клавiшi СБРОС зупиняє виконання кожної програми. Перевiрте це у процесi виконання мелодiї.

4.2.9. Виконання програми у кроковому режимi.

При налагодженнi програми корисно буває виконувати програму по однiй командi. Таку можливiсть має використання крокового режиму. Виконання програми у цьому режимi вiдбувається наступним чином:

1. Встановiть перемикач АВТ/ШАГ в положення ШАГ.

2. Натиснiть клавiшу СБРОС.

3. Встановiть початкову адресу програми (наприклад, 0370) в РА.

4. Натисн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рок ОЗП.