Мікропроцесорний комплект серії К580

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Федеральне агентство з освіти

Державна освітня установа

вищої професійної освіти

Далекосхідний державний технічний університет

(ДВПИ ім. В. В. Куйбишева)

Кафедра конструювання та виробництва радіоапаратури

Реферат

на тему:

«Мікропроцесорний комплект серії К580»

2010

Зміст

1. Організація центрального процесора

2. Підключення пам'яті

3. Підключення інтерфейсних програмованих ВІС

4. Програмна модель мікропроцесорної системи

5. Методи адресації та приклади команд

6. Програмування на мові асемблера

7. Програмування БІС паралельного інтерфейсу

8. Програмування таймера і контролера переривань

1. Організація центрального процесора

Мікропроцесор серії К580 має 8-розрядну шину даних і 16-розрядну шину адреси. Шина адреси забезпечує адресацію пам'яті об'ємом до 64 Кбайт і 256 портів вводу / виводу. Навантажувальна здатність виходів МП невелика (один ТТЛ - вхід), тому при побудові системної магістралі їх потрібно буферирован. МП має засоби обслуговування запитів переривання, засоби управління в режимах очікування і прямого доступу до пам'яті (режим захоплення).

Для побудови центрального процесора на основі ВІС К580ВМ80А (рисунок 1) додатково потрібні мікросхеми формування сигналів синхронізації (тактовий генератор К580ГФ24) і сполучення з системною магістраллю (системний контролер К580ВК28 і два шинних формувача К580ВА86).

Тактовий генератор виробляє не перекриваються позитивні імпульси F 1 і F 2 амплітудою 12 В (для роботи МП потрібно три джерела живлення: +12 В, +5 В, -5 В). При частоті тактових імпульсів 2 МГц вибирається кварцовий резонатор на 18 МГц. Час, необхідний для добування одного байта з пам'яті або пристроїв вводу / виводу, або для виконання найпростіших команд, називається машинним циклом. У загальному випадку час виконання команди складає 1-5 машинних циклів (М), кожен з яких включає 3-5 машинних тактів (Т). У другому такті Т2 кожного машинного циклу на шину даних МП видається байт стану (див. рисунок 2), який за сигналом SYNC фіксується в системному контролері SC і використовується для формування сигналів звернення до пам'яті (MEMR, MEMW) і пристроїв введення / виводу (IOR , IOW). Системний контролер виконує також роль буфера шини даних і формує сигнал підтвердження переривань INTA.


Машинний цикл 1

Машинний цикл 2


Такт 1

T акт 2

T акт 3

T акт 4

T акт 1

T акт 2

T акт 3

F1


























































F2













































SYNC






Рисунок 2 - Діаграми синхронізації процесора на базі К580ВМ80А.

Буфер шини адреси реалізований за допомогою 8-розрядних шинних формувачів К580ВА86. При логічної одиниці на вході ОЕ (режим захоплення системної магістралі контролером ПДП) шина адреси МП переходить в стан разомкнутого виходу.

Робота за програмою є основним режимом роботи МП. Після системного скидання (при включенні джерела харчування він відбувається автоматично за рахунок RC-ланцюга, підключеної до входу RESIN тактового генератора) у програмному лічильнику встановлюється адреса нульова комірки пам'яті. Процесор зчитує байт інформації з цього осередку і розшифровує його як код операцію першої команди. Якщо команда двох-або трехбайтовая, то в подальших циклах вибираються відсутні один або два байти з наступних елементів пам'яті. Процесор виконує першу команду, а програмний лічильник формує адреса наступної команди, збільшуючи свій вміст після кожного читання з пам'яті. Команди, розташовані в послідовних комірках пам'яті, виконуються до тих пір, поки не зустрінеться команда переходу, стрибком змінює вміст програмного лічильника.

У процесі виконання програми МП може перейти в режим очікування (WAIT = 1), якщо немає сигналу готовності зовнішніх пристроїв RDIN. При появі цього сигналу робота відновлюється

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

За сигналом HLD (запит ПДП) центральний процесор відключається від шин адреси і даних: буфера цих шин переходять в високоімпедансное стан.

2. Підключення пам'яті

Розглянемо варіант підключення до системної магістралі пристроїв пам'яті з використанням мікросхем перепрограмованих ПЗУ з ультрафіолетовим стиранням типу К573РФ5 і ОЗУ статичного типу К537РУ9 (рис.3). Кожна з мікросхем утворює сторінку пам'яті об'ємом 2 Кбайта, вибір потрібного слова з якої виробляється за допомогою адресних сигналів А0-А10. Вибір потрібної сторінки здійснює дешифратор К555ІД7 станом старших розрядів адресної шини A 11 - A 15. У даному прикладі осередку ПЗУ і ОЗУ займають у адресному просторі МП відповідно області 0000 H -07 FFH і 0800 H -0 FFFH.

Підключення виходів мікросхем пам'яті до шини даних проводиться з подачі логічного нуля на входи дозволу виходу ОЕ (сигнал MEMR). Напрямок передачі інформації в ОЗУ змінюється в залежності від сигналу на лінії MEMW шини управління. При необхідності можна включити ще шість сторінок ОЗУ або ПЗУ. Для цього буде потрібно ще шість мікросхем вибраного типу.

3. Підключення інтерфейсних програмованих ВІС

Розглянемо підключення до системної магістралі БІС паралельного інтерфейсу K 580 BB 55, програмованого таймера К580ВІ53 і контролера переривань К580ВН59 (рис.4).

Паралельний інтерфейс (PPI) дозволяє перемикати шину даних МП на роботу з одним з трьох портів введення / виводу: PA, PB, PC. Після системного скидання всі три порти налаштовані на режим введення інформації. При необхідності можна змінити режим роботи кожного з портів. Для цього через шину даних МП в регістр керуючого слова PPI (РУС1) програмно заноситься інформація, що управляє. Адресація до конкретного порту проводиться за допомогою адресних сигналів АТ та А1. При цьому сполученням A 1, А0 виду 00,01,10, 11 відповідають порти РА, РВ, PC і РУС1. Дешифрация старших розрядів адреси портів введення / виводу здійснюється дешифратором К555ІД7. Неважко встановити (див. рис.4), що портів паралельного інтерфейсу присвоєні адреси 80Н, 81Н, 82Н і 83Н. У розглянутому прикладі порт РА використовується для введення інформації в МП з восьми датчиків (імітуються лінійкою тумблерів S 0 - S 7), порт РВ - для виведення інформації на лінійку світлодіодів HL 0 - HL 7.

Програмований таймер (РТ) містить три 16-розрядних лічильника, що працюють па віднімання. Лічильники можуть бути запрограмовані для роботи в одному з шести режимів при двійковому або двійково-десятковому рахунку. Кожен з лічильників має тактовий вхід CLK, вхід дозволу рахунку GATE і вихід OUT (на малюнку виходи лічильників не показані). Командами введення і виведення можна здійснити початкове завантаження лічильників і прочитування їх станів в МП.

Адресація трьох лічильників та керуючого регістру таймера проводиться за допомогою двох адресних входів АТ та А1 і входу CS. Можна встановити (див. рис.4), що портам таймера відповідають адреси 84Н (Ст0), 85Н (СТ1), 86Н (СТ2) і 87Н (РУС2).

Контролер переривань (PCI) реалізує до восьми рівнів запитів на переривання (векторна система) з можливістю програмного маскування і зміни пріоритету. Приймаючи запити на переривання від зовнішніх пристроїв IR 0 - IR 7 (це можуть бути, зокрема, сигнали, що формуються таймером або паралельним інтерфейсом), контролер формує сигнал INT для мікропроцесора від того каналу, який в даний момент має найвищий пріоритет. Від МП контролер отримує сигнал підтвердження переривання INTA. Керуючі регістри контролера переривань мають адреси 88Н і 89 H.

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

4. Програмна модель мікропроцесорної системи

З точки зору програміста мікропроцесор К580ВМ80А має такі доступні ресурси (мал. 5):

1) 8-бітовий акумулятор А і шість 8-розрядних регістрів загального призначення (РОН) В, С, D, E, H, L;

2) 8-бітовий регістр ознак F, в якому зберігаються п'ять ознак результату виконання арифметичних і логічних операцій в МП (біт знаку S, біт нуля Z, біт парності Р, біт перенесення С. біт додаткового перенесення АС);

3) 16-розрядний програмний лічильник (лічильник команд) "program counter "PC, в якому зберігається адреса наступної команди;

4) 16-розрядний покажчик стека "stek point "SP, який зберігає адресу комірки пам'яті, куди був записаний останній введений в стек байт.

Ряд команд МП маніпулює регістровими парами B, D, H, PSW (слово стану програми). Пара регістрів зазвичай містить або адреса комірки пам'яті, або два байти безпосередніх даних.

У початковій області пам'яті (зазвичай в ПЗУ) розташовується програма користувача. Потім (обов'язково в ОЗУ) йде пам'ять даних і стек. Стек - спеціально організована область ОЗУ, призначена для тимчасового зберігання даних або адрес. Число, записане в стек останнім, витягується з нього першим. Покажчик стека SP зберігає адресу останньої клітинки стека, в якій записана інформація. При виклику підпрограми в стеку автоматично зберігається адреса повернення в основну програму. Як правило, на початку кожної підпрограми зберігають в стеку вміст всіх задіяних при її виконанні регістрів, а в кінці підпрограми відновлюють їх із стека.

5. Методи адресації та приклади команд

Система команд мікропроцесора містить 78 базових команд (загальна кількість команд з урахуванням можливих модифікацій - 244): пересилання даних, обробки даних і управління ходом виконання програми.

Програма може безпосередньо складатися у вигляді послідовності машинних двійкових кодів команд, для більш компактної форми яких використовується їх шестнадцатірічное подання. Зручніше користуватися мнемонічними позначеннями команд, тобто писати її на мові асемблера. Спеціальна програма Асемблер може перевести за допомогою ЕОМ робочу програму МП в машинні коди. Але й при ручному трансляції (вона може знадобитися при виконанні лабораторних робіт на налагоджувальних пристроях) попередній запис програми на мнемонічною мові більш наочна.

Система команд мікропроцесора i 8080 використовує різні методи адресації даних:

пряма адресація (адреса порту вказується в другому байті команди введення даних у регістр акумулятор IN)

IN PA; (A) ¬ (PA) DBH КОП - код операції IN

80 H 2-байт - адреса порту PA

реєстрова пряма адресація (в команді задається код пари РОН, де знаходиться операнд даних)

INX H; (HL) ¬ (HL) +1 23 H КОП - код операції INX

реєстрова непряма адресація (адреса комірки пам'яті, де знаходиться операнд, визначається вмістом пари РОН)

ADD M; (A) ¬ (A) + ((HL)) 86 H КОП - код операції ADD

безпосередня адресація (операнд міститься у команді: молодший байт - у другому, старший байт - в третьому байтах команди)

LXI H, 850 H; (HL) ¬ 850 H 21 H КОП - код операції LXI

50 H 2-й байт

80 H 3-й байт

стекова адресація (адреса комірки пам'яті, яка містить операнд, знаходиться в покажчику стека SP)

PUSH PSW; ((SP) -1) ¬ (A), ((SP-2) ¬ (F), (SP) ¬ (SP) -2

F 5 H КОП - код операції запису в стек службового слова.

6. Програмування на мові асемблера

Мова асемблера допускає представлення всіх елементів програми в символічній (буквено-цифровій) формі, що відбиває їх змістовний сенс. В якості алфавіту допустимих символів прийнятий код ASCII (американський стандартний код для обміну інформацією). Кожен рядок асемблера відповідає одній команді або псевдокоманди (директиві) і може містити поля мітки, мнемоніки команди, операнда та коментарю. При наявності у програмі синтаксичних помилок асемблер в процесі трансляції видає повідомлення про помилки.

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

Мнемокод команди може включати до чотирьох символів і разом з позначеннями операндів утворює групу ключових слів асемблера.

Поле операнда містить числові і символьні безпосередні дані, позначення регістрів і реєстрових пар МП, адреси пам'яті. Можливе використання виразів, що містять найпростіші арифметичні і логічні операції, обробку яких асемблер при трансляції виробляє у форматі 16-розрядних двійкових чисел. Операнд у вигляді рядка символів, укладеної в апострофи, транслюється в послідовність кодів ASCII цих символів.

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

Окрім команд програма може містити директиви асемблера:

ORG - Початковий адресу масиву, END - припинення трансляції, EQU - еквівалентність (привласнення), DB - визначити байт і тд.

Команди мікропроцесора серії К580 (i 8080)

Команда

N б

N т

Опис команди

Прапори

Група команд пересилки даних

MOV r1, r2

1

5

Пересилання даних з r 2 в r 1


MOV М, r

1

7

Пересилання даних з r в пам'ять


MOV r, М

1

7

Пересилання даних з пам'яті в r


XCHG

1

4

Обмін даними між парами регістрів HL і DL


MVI r, d8

2

7

Занесення байта даних у регістр


MVI M, d 8

2

10

Занесення байта даних в пам'ять


LXI rp, d16

3

10

Занесення двох байтів даних в пару регістрів (B, D, H, SP)


LDAX rp

1

7

Занесення в А вмісту клітинки, побічно адресується парою регістрів (B або D)


LDA adr 16

3

13

Завантаження в А вмісту комірки з вказаною адресою


STAX rp

1

7

Занесення вмісту А в клітинку, побічно адресованих парою регістрів (B або D)


STA adr 16

3

13

Занесення вмісту А в клітинку з вказаною адресою


LHLD adr 16

3

16

Завантаження в регістри H, L вмісту осередків з вказаною адресою та адресою, на одиницю більшим


SHLD adr 16

3

16

Занесення вмісту регістрів H, L в два відділення пам'яті


Група команд обробки даних

ADD r

1

4

Додавання вмісту r і А

Z, S, P, C, AC

ADD M

1

7

Додавання вмісту комірки пам'яті і А

Z, S, P, C, AC

AD З r

1

4

Додавання вмісту r і А з урахуванням переносу З

Z, S, P, C, AC

AD З M

1

7

Додавання вмісту комірки пам'яті і А з урахуванням переносу З

Z, S, P, C, AC

DAA

1

4

Десяткова корекція А

Z, S, P, C, AC

Команда

N б

N т

Опис команди

Прапори

SUB r

1

4

Віднімання вмісту r з A

Z, S, P, C, AC

SUB M

1

7

Віднімання вмісту комірки пам'яті з A

Z, S, P, C, AC

SBB r

1

4

Віднімання вмісту r з A з заемом

Z, S, P, C, AC

SUBB M

1

7

Віднімання вмісту комірки пам'яті з A з заемом

Z, S, P, C, AC

ANA r

1

4

Поразрядное «І» над вмістом r і A

Z, S, P, C = 0,

AC = 0

ANA M

1

7

Поразрядное «І» над вмістом комірки пам'яті і A

Z, S, P, C = 0,

AC = 0

XRA r

1

4

Поразрядное «виключає АБО» над вмістом r і A

Z, S, P, C = 0,

AC = 0

XRA M

1

7

Поразрядное «виключає АБО» над вмістом комірки пам'яті і A

Z, S, P, C = 0,

AC = 0

ORA r

1

4

Поразрядное «АБО» над вмістом r і A

Z, S, P, C = 0,

AC = 0

ORA M

1

7

Поразрядное «АБО» над вмістом комірки пам'яті і A

Z, S, P, C = 0,

AC = 0

CMP r

1

4

Порівняння вмісту r і A

Z, S, P, C, AC

CMP M

1

7

Порівняння вмісту комірки пам'яті і A

Z, S, P, C, AC

ADI d 8

2

7

Додавання байта і A

Z, S, P, C, AC

ACI d 8

2

7

Додавання байта і A з урахуванням перенесення

Z, S, P, C, AC

SUI d 8

2

7

Віднімання байта з A

Z, S, P, C, AC

SBI d 8

2

7

Віднімання байта з A з урахуванням перенесення

Z, S, P, C, AC

ANI d 8

2

7

Поразрядное «І» байта і A

Z, S, P, C = 0,

AC = 0

XRI d8

2

7

Поразрядное «виключає АБО» байта і A

Z, S, P, C = 0,

AC = 0

Команда

N б

N т

Опис команди

Прапори

ORI d 8

2

7

Поразрядное «АБО» байта і A

Z, S, P, C = 0,

AC = 0

CPI d8

2

7

Порівняння вмісту A і байта

Z, S, P, C, AC

DAD rp

1

10

Додавання вмісту пари HL і реєстрових пар (B, D, H, SP)

Z, S, P, C, AC

INR r

1

5

Збільшення вмісту r на 1

Z, S, P, AC

INR M

1

10

Збільшення вмісту комірки пам'яті на 1

Z, S, P, AC

DCR r

1

5

Зменшення вмісту r на 1

Z, S, P, AC

DCR M

1

10

Зменшення вмісту комірки пам'яті на 1

Z, S, P, AC

INX rp

1

5

Збільшення вмісту пари регістрів на 1


DCX rp

1

5

Зменшення вмісту пари регістрів на 1


RLC

1

4

Циклічний зсув A вліво

C

RRC

1

4

Циклічний зсув A вправо

C

RAL

1

4

Циклічний зсув A ліворуч через перенесення

C

RAR

1

4

Циклічний зсув A вправо через перенесення

C

CMA

1

4

Поразрядное інвертування A


STC

1

4

Установка ознаки перенесення

C = 1

CMC

1

4

Інвертування прапора перенесення

C = C

Група команд управління ходом виконання програми

JMP adr 16

3

10

Безумовний перехід за адресою


JC adr 16

3

10

Перехід за адресою при наявності переносу


JNC adr 16

3

10

Перехід за адресою при відсутності переносу


JZ adr 16

3

10

Перехід за адресою при нулі


JNZ adr 16

3

10

Перехід за адресою при відсутності нуля


JP adr 16

3

10

Перехід за адресою при плюсі


Команда

N б

N т

Опис команди

Прапори

JM adr 16

3

10

Перехід за адресою при мінусі


JPE adr 16

3

10

Перехід за адресою при парності


JPO adr 16

3

10

Перехід за адресою при непарності


CALL adr 16

3

17

Виклик підпрограми


CC adr 16

3

11/17

Виклик підпрограми при перенесенні


CNC adr 16

3

11/17

Виклик підпрограми при відсутності переносу


CZ adr 16

3

11/17

Виклик підпрограми при нулі


CNZ adr 16

3

11/17

Виклик підпрограми при відсутності нуля


CP adr 16

3

11/17

Виклик підпрограми при плюсі


CM adr 16

3

11/17

Виклик підпрограми при мінусі


CPE adr 16

3

11/17

Виклик підпрограми при парності


CPO adr 16

3

11/17

Виклик підпрограми при непарності


RET

1

10

Повернення


RC

1

5 / 11

Повернення при перенесенні


RNC

1

5 / 11

Повернення при відсутності переносу


RZ

1

5 / 11

Повернення при нулі


RNZ

1

5 / 11

Повернення за відсутності нуля


RP

1

5 / 11

Повернення при плюсі


RM

1

5 / 11

Повернення при мінусі


RPE

1

5 / 11

Повернення при парності


RPO

1

5 / 11

Повернення при непарності


RST N

1

11

Повторний запуск з адреси 8 N


IN adr 8

2

10

Введення даних з порту в A


OUT adr 8

2

10

Висновок даних в порт з A


PUSH rp

1

11

Занесення вмісту пари регістрів (B, D, H, PSW) в стек


POP rp

1

10

Видача даних з стека в пару регістрів (B, D, H, PSW)

Z, S, P, C, AC






Команда

N б

N т

Опис команди

Прапори

XTHL

1

18

Обмін даними між вершиною стека і парою HL


SPHL

1

5

Занести в покажчик стека вміст реєстрової пари HL


DI

1

4

Заборонити переривання


EI

1

4

Дозволити переривання


NOP

1

4

Холоста операція


HLT

1

7

Зупинка


Примітка:

N б - число байт; N т - число тактів;

У знаменнику дробу вказано число тактів на виконання операції при виконанні умови, в чисельнику - при невиконанні.

Розглянемо приклади запису програм мовою асемблера ASM 80 (розробленого відповідно до системи команд процесора i 8080).

7. Програмування БІС паралельного інтерфейсу

При програмуванні БІС в регістр РУС1 командою OUT 83 H записується керуюче слово, яке визначає один з трьох режимів роботи портів паралельного інтерфейсу:

режим 0 - програмно керований введення / виведення даних у синхронному режимі за трьома 8-розрядним каналах РА, РВ і PC. Кожен канал може бути використаний лише для введення чи виведення інформації, а канал PC додатково може бути розділений на два 4-розрядних каналу;

режим 1 - обмін даними з ВУ по каналах РА і РВ в асинхронному режимі і режимі переривання програми. Керуючі сигнали при цьому передаються по каналу PC;

режим 2 - двонаправлений обмін даними з ВУ по каналу РА в режимі переривання програми. Каналу Р C надається п'ять ліній каналу PC для передачі і прийому управляючих сигналів. Канал РВ може бути при цьому запрограмований на роботу в режимах 0 або 1.

При програмуванні БІС використовуються два формати керуючого слова: перший призначений для завдання режимів роботи та напрями включення каналів, другий - для встановлення або скидання довільного розряду каналу PC. Ознака формату міститься в старшому біті керуючого слова: 1 відповідає формату 1, а 0-формату 2. У схемі, зображеній на рис.4, порти РА і РВ працюють в режимі 0 і для програмування паралельного інтерфейсу нам знадобляться керуючі слова обох форматів для режиму 0.

Керуюче слово першого формату:

D 7

D 6

D 5

D 4

D 3

D 2

D1

D0

1

0

0

PA

PC4-PC7

0

PB

PC 0 - PC 3

Логічна «1» у відповідному розряді налаштовує позначений канал на введення, логічний «0» - на виведення інформації. Порт С дозволяє зробити незалежну настройку полупортов на введення-виведення в режимі 0.

Керуюче слово другого формату:

D 7

D 6

D 5

D 4

D 3

D 2

D 1

D 0

0

Х

Х

Х

D 3

D 2

D 1

D 0

У бітах D 6 - D 4 керуючого слова може бути довільна інформація.

8. Програмування таймера і контролера переривань

Контролер переривань (КП) містить регістри: запитів RGI, пріоритетів RGB, обслуговування ISR і масок переривання RGM. Запити надходять на входи IR 0 - IR 7 і встановлюють відповідні розряди регістра запитів RGI. КП оцінює їх пріоритет і формує запит INT. Мікропроцесор приймає INT, і якщо переривання дозволені, то підтверджує прийом видачею прапора INTA. КП встановлює розряд ISR з найвищим пріоритетом, скидає запит в RGI і видає на шину даних код команди CALL (0 CDH). МП видає ще два сигнали INTA, за якими КП видає на ШД послідовно спочатку молодший, а потім старший байт адреси підпрограми обслуговування переривань.

Установка КП у вихідний стан і настройка його на певний режим роботи з обслуговування переривань програмуються двома типами команд:

командами ініціалізації ICW 1, ICW 2;

командами управління режимом OCW 1, OCW 2, OCW 3.

Команди ICW завантажуються по команді OUT з урахуванням розряду АТ. ICW 1 використовується при формуванні молодшого байта адреси підпрограми, ICW 2 задає старший байт адреси:

КП готовий працювати в режимі з фіксованими пріоритетами запитів: IR 0 - найвищий, IR 7 - нижчий. Для завдання інших режимів у будь-який момент завантажуються команди-накази OCW (Operate Control Word):

Mi = 1 - заборона переривання по i-му каналу.

Скидання розряду регістра обслуговування ISR і циклічний зсув пріоритету. Записується в підпрограмі обслуговування переривання перед RET. Варіанти наказу OCW 2:

00100000 - скидання біта регістра обслуговування ISR з максимальним пріоритетом;

10100000 - скидання біта ISR з максимальним пріоритетом і призначення відповідного входу нижчого пріоритету;

01100 L 2 L 1 L 0 - скидання біта ISR, що визначається полем L 2 L 1 L 0;

11000 L 2 L 1 L 0 - призначення входу L 2 L 1 L 0 нижчого пріоритету.

Режим опитування, зчитування стану КП

У режимі опитування КП приймає запити на переривання від зовнішніх пристроїв і формує слово стану опитування (D 2 - D 0), що містить номер запиту з найвищим пріоритетом. Обслуговування запиту відбувається на вимогу програми. Програмно слово-стан зчитується (командою IN при А0 = 0), декодується і здійснюється перехід до відповідної підпрограмі обслуговування переривань.

Читання регістра масок RGM здійснюється (командою IN при А0 = 1) без OCW 3, регістра запиту RGI - після OCW 3 з RIS = 0. регістра обслуговування ISR - після OCW 3 c RIS = 1.

Формат F в ICW 1 задає адресний інтервал між початковими адресами підпрограм обслуговування переривань. Наприклад, після виконання команд

Код операції

Коментар

EI


Дозволити переривання

MVI

A, 36H

ICW1 - один КП, формат 4, A7A6A5 = 001

OUT

88 H

Адреса регістра керування КП при A 0 = 0

MVI

A, 0

ICW2 (A15-A8 = 00000000)

OUT

89 H

Адреса регістра керування КП при A 0 = 1

Початкові адреси підпрограм обслуговування переривань будуть мати наступні значення:

Програмований інтервальний таймер. Режими роботи програмованого таймера пояснюють часові діаграми (рис.6), на яких показані сигнали на виході OUT лічильника (це може бути СТО, СТ1 або СТ2) у кожному режимі, якщо при програмуванні в нього додано число N = 4.

CLK

















Тактові імпульси

N = 4

WR



Кінець програмування



GATE



Апаратне дозвіл



N · T


Режим 0




Програмна затримка





Режим 1




Режим мультивібратор





N · T


Режим 2









Генератор такт. імпульсів




N · T


Режим 3









Генератор меандру



N · T


Режим 4




Програмно-управл. строб


N · T


Режим 5



Апаратно-управл. строб

Малюнок 6 - Діаграми режимів роботи програмованого таймера

Режим роботи кожного лічильника задається відповідним записом в регістр управління таймера керуючого слова наступного формату (рис. 7):

Потім здійснюється завантаження кожного лічильника одним або двома інформаційними байтами. Таймери працюють на віднімання. Мікропроцесор може прочитати поточне значення числа Ni в будь-якому лічильнику таймера або безпосередньо за допомогою команди IN, або попередньо защіпніть його в буферному регістрі лічильника шляхом введення в регістр управління слова з D 5 = ​​D 4 = 0.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
138.9кб. | скачати


Схожі роботи:
Мікропроцесорний комплект серії КР580
Команда переміщення даних мікропроцесора К580
Програмування арифметичних завдань на Асемблері для мікропроцесора К580
Індикатор технологічний мікропроцесорний ІТМ 20
Індикатор технологічний мікропроцесорний ІТМ-20
Мікропроцесорний пристрій управління електронними вагами
Комплектність і комплект товару Договір контрактації Рентні догів
Комплект жіночий для відпочинку складається з плечового виробу
Комплект лабораторного обладнання для поглибленого вивчення фізичних
© Усі права захищені
написати до нас