- •Міністерство освіти і науки україни
- •Лабораторна робота №1 отримання навичок розробки програм мовою асемблера для мікропроцесора к1810вм86 у середовищі програмного пакету „turbo assembler” фірми borland
- •1.1 Теоретичні відомості
- •1.2 Порядок виконання роботи
- •1.3 Зміст звіту
- •1.4 Контрольні запитання
- •Лабораторна робота № 2 вивчення системи команд мп к1810вм86, команди передавання даних, математичних операцій
- •2.1 Теоретичні відомості
- •2.2 Порядок виконання роботи
- •2.3 Зміст звіту
- •2.4 Контрольні запитання
- •Лабораторна робота №3 вивчення системи команд мп к1810вм86, команди логічних операцій, команди організації переривань. Організація програмних циклів
- •3.1 Теоретичні відомості
- •3.2 Порядок виконання роботи
- •3.3 Зміст звіту
- •4.2 Порядок виконання роботи
- •4.3 Зміст звіту
- •4.4 Контрольні запитання
- •Лабораторна робота № 5 програмне опитування зовнішніх пристроїв. Програмування паралельного інтерфейсу
- •5.1 Теоретичні відомості
- •5.2 Порядок виконання роботи
- •5.3 Зміст звіту
- •5.4 Контрольні запитання
- •Лабораторна робота № 6 програмне опитування датчиків технологічної інформації. Програмне виведення інформації на зовнішній пристрій
- •6.1 Теоретичні відомості
- •6.2 Порядок виконання роботи
- •6.3 Зміст звіту
- •6.4 Контрольні запитання
- •Список літератури
- •Укладачі: старш. Викл. М.Ю. Юхименко
- •39600, М. Кременчук, вул. Першотравнева, 20
5.2 Порядок виконання роботи
Ознайомитися з особливостями паралельних інтерфейсів мікропроцесорних систем, вивчити їх атрибути.
Скласти програму мовою асемблера для МП К1810ВМ86, яка забезпечує виведення на принтер текстового рядка, що зберігається в сеґменті даних.
За допомогою текстового редактора ввести текст програми керування обміном інформацією через паралельний інтерфейс мовою асемблера для МП К1810ВМ86 та зберегти його в каталозі вашої групи в C:\CPU\TASM\WORK.
Домогтися правильної роботи розробленої програми.
Зберегти файл з вихідним текстом програми, а також ехе-файл.
Вийти з програми TASM.
Скласти звіт щодо виконаної роботи.
5.3 Зміст звіту
Титульний аркуш.
Найменування та мета лабораторної роботи.
Короткі теоретичні відомості.
Отримане у викладача завдання (текст програми з докладними коментарями).
Опис виконання кожного пункту завдання.
Письмові відповіді на контрольні питання.
5.4 Контрольні запитання
В чому полягає основна відмінність паралельних інтерфейсів від послідовних? Які переваги має кожний з типів інтерфейсів?
Який паралеьлний інтерфейсів використовуються у мікропроцесорних системах для підключення принтера?
З яких реґістрів складається адаптер паралельного інтерфейса для мікропроцесорних систем на базі МП К1810ВМ86?
Опишіть призначення бітів реґістра статусу. Дайте пояснення особливостям використання.
Опишіть призначення бітів реґістра керування. Дайте пояснення особливостям використання.
Які режими роботи паралельного інтерфеса ви знаєте?
Лабораторна робота № 6 програмне опитування датчиків технологічної інформації. Програмне виведення інформації на зовнішній пристрій
Мета роботи. |
Освоїти програмування додатків мовою асемблера для МП К1810ВМ86 для керування зовнішніми пристроями за допомогою портів введення/виведення |
6.1 Теоретичні відомості
В разі використання мікропроцесорної системи для керування технологічним механізмом опитування датчиків технологічної інформації та перетворення аналогового сиґналу в цифровий, запис інформації в ОЗП виконується під керуванням МП.
Так, номер опитуваного датчика технологічних величин формується в одному з реґістрів загального призначення (РЗП), наприклад, в реґістрі ВН. У 8-розрядному реґістрі в 5-ти старших розрядах записуються одиниці, а в трьох молодших розрядах - номер датчика.
Вся робота мікропроцесорної системи з пристроями на найнижчому рівні виконується з використанням портів введення-виведення. Розглянемо на прикладі, як на рівні апаратури забезпечити керування за допомогою МПС зовнішнім пристроєм, наприклад, формування звука сирени.
Загальна схема формування такого сиґналу показана на рис. 6.1.
Рис. 6.1 - Схема формування звука для вбудованого динаміка ПЕОМ
Приклад програми, що реалізовує звук сирени наведений в лістингу 6.1. Для зручності роботи в програмі була використана макрокоманда delay, що виконує затримку роботи програми на заданий час.
Приклад 6_1.
;Програма, що імітує звук сирени.
;3міна висоти звуку від 450 Гц до 2100 Гц.
;Використовується макрос delay(затримка),
masm
model small
stack 100h
delay macro time
;макрос затримки, його текст обмежуеться директивами macro i endm.
;на вході - значения затримки (у мкс)
local ext, iter
push сx
mov cx,time
ext:
push сx
mov сx, 5000
iter:
loop iter
pop сx
loop ext
pop сx
endm
.data ;сеґмент даних
tonelow dw 2651 ;нижня частота звучания = 450 Гц
cnt db 0 ;лічильник для виходу з програми
temp dw ? ;верхня частота звучания
.code ;сеґмент коду
main: ;точка входа в програму
mov ax,@data ;зв'язати реґістр ds з сеґментом
mov ds,ax ;даних через peґicтр ax
хоrах,ах ;очищуємо ах
go:
mov al,0B6h ;заносимо слово стану 10110110b (0B6h)
out 43h,al ;в командний реґістр (порт 43h)
in al,61h ;зчитати значення порта 61h в al
or al,3 ;ініціалізація динаміка i подача струму
out 61h,al ;на порт 61h
mov cx,2083 ;кількість кроків ступінчастої зміни тону
musicup:
;у ах значения нижньої частоти частоти звуку
mov ax,tonelow
out 42h,al ;порт 42hмолодше слово ах:al
xchg al,ah ;обмін між al i ah
out 42h,al ;y порт 42hстарше слово ax:ah
add tonelow, l ;підвищуємо тон
mov dx,tonelow ;y dx поточне значения висоти звуку
mov temp,dx ;temp - верхне значения висоти звуку
loop musicup ;повторити цикл шдвищення
mov cx,2083 ;відновити лічильник циклу
musicdown:
mov ax,temp ;y ax верхне значения висоти
out 42h,al ;у порт 42hмолодше слово ax:al
mov al,ah ;обмін між al i ah
out 42h,al ;y порт 42h старше слово ax:ah
sub temp,l ;знижуємо висоту звуку
delay 1 ;затримка на 1 мкс
loop musicdown ;повторити цикл зниження
nosound:
in al,61h ;набудемо значения порту 61h в AL
and al,0FCh ;вимкнути динамік
out 61h,al ;у порт 61h
mov dx,2651 ;для подальших циклів
mov tonelow,dx
inc cnt ;збільшуемо значення лічильника проходів,
;тобто кількість звучань сирени
сmpcnt,5 ;у 5 разів?
jnegо ;якщо ні, перейти на міткуgо
ехіt:
movах,4с00b ;стандартний вихід
іnt21h
end main ;кінець програми