Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
max.docx
Скачиваний:
1
Добавлен:
14.09.2019
Размер:
113.48 Кб
Скачать

3. Програмне забезпечення виводу інформації на цифровий індикатор

Програмне забезпечення складається з програм різноманітного призначення: керуючих програм, які керують роботою всієї мікропроцесорної системи і розміщуються в ПЗП системи, та програм користувача, які призначені для розв’язку конкретних прикладних задач і вводяться в ОЗП системи. Написання керуючих програм в дане завдання не входять.

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

Перед написанням будь-яких програм необхідно вияснити, як програмне забезпечення системи буде розміщене, тобто з якої адреси починається область пам’яті для розміщення керуючих програм (звичайно це один з модулів ПЗП), початкову адресу області пам’яті для розміщення програми користувача (звичайно це модуль ОЗП) і т.д. Початкова інформація для цього розміщення приведена в розділі 2.4 (табл.2.11). Необхідно також визначити адреси пристроїв вводу-виводу. В нашому випадку ці пристрої під’єднані до мікропроцесора через ППІ, тому адресою пристроїв вводу-виводу буде адреса тих каналів ППІ (табл..2.4), до яких ці пристрої під’єднані.

При складанні програми слід врахувати, що вивід інформації починається після натискування кнопки “пуск”, а також через які канали ППІ під’єднані вказана кнопка та індикатори до мікропроцесора.

Вивід інформації полягає у виводі двох кодових комбінацій, одна з яких задає символ (цифру), а друга – індикатор, на якому цей символ повинен висвітитися. Приймемо деякі позначення:

K1 - код першого символу (табл2.2); I1 - код першого індикатора (табл..2.3);

K2 - код другого символу (табл2.2); I2 - код другого індикатора (табл..2.3) .

Перед записом частини програми, що забезпечує виконання вказаних вище функцій, необхідно передбачити фрагмент, з допомогою якого інформація про стан кнопки “пуск”: натиснута (S2=0), чи не натиснута (S1=1) – вводиться з відповідного каналу ППІ.

Крім того, в програмі необхідно передбачити програмування ППІ – настройку його каналів на заданий режим роботи та заданий напрям передачі інформації через кожний канал шляхом запису керуючого слова в РКС ППІ.

На рисунку 3.1 зображена блок-схема алгоритму програми,а в таблиці 3.2-код програми на Асемблері

В полі команди записується мнемонічна назва однієї з команд мікропроцесора або одна з приведених вище псевдокоманд. Команда бувають без операндів або з одним чи двома операндами.

Операндами можуть бути назви регістрів або регістрових пар мікропроцесора, мітки, а також ідентифікатори, числа або вирази. Числа можуть бути представлені в двійковій, вісімковій, десятковій та шістнадцятковій системах числення. Система числення позначається відповідною буквою в кінці числа: B, Q, D, H. Число без букви в кінці інтерпритується як десяткове або шістнадцяткове, якщо в його складі є одна з латинських букв А – F. Шістнадцяткове число, яке починається з букви, необхідно доповнити зліва нулем.

Ідентифікатори мають відповідати тим же умовам, що й мітки. Ідентифікатори – це назви констант та змінних. Для надання константам та змінним початкових значень використовується псевдокоманда EQU.

Текст програми на мові Асемблера повинен починатися псевдокомандою ORG з операндом, який задає початкову адресу області трансляції (початкову адресу нашої програми). Останньою стрічкою команди є псевдокоманда END.

Таблиця 3.1 Опис портів вводу-виводу

P ort А EQU A4 H ; адреса каналу ВА

Port В EQU A5 H ; адреса каналу ВВ

P ort С EQU A6 H ; адреса каналу ВС

Port RG EQU A7 H ; адреса каналу РКС

W ord EQU 82 H ; керуюче слово ППІ

K 1 EQU E0 H ; код першого символу

K 2 EQU 80 H; код другого символу

I 1 EQU 40 H; код першого індикатора

I 2 EQU 80 H; код другого індикатора

S 2 EQU 7F H; код, який вводимо натисканням кнопки

Таблиця 3.2-код програми на Асемблері

Мітка

Команда

Операнд

Коментар

ORG

0400 H;

Програма починається з комірки 0400 ОЗП

MVI

OUT

A, Word;

port RG;

Запис в акумулятор керуючого слова

Передача КС з акумулятора в РКС

M 1:

IN

port C;

Ввід S2' через канал ВС

CPI

S2

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

JNZ

M1

Якщо вміст (Tz = 0), то перехід

на команду з міткою R1, якщо ні,

то на наступну команду

M 2:

MVI

OUT

MVI

OUT

MVI

OUT

MVI

OUT

JMP

END

A, K1

port А

A,I1

PORT B

A, K1

port А

A,I1

PORT B

M2

Вивід коду першого

Символу

Вивід коду першого індикатора

Вивід коду другого символу

Вивід коду другого індикатора

Безумовний перехід на мітку M2

Кінець програми

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]