Бердак номидаги каракалпок давлат уневерситети
Расм. Узилиш функцияларига мисол келтириш блок – схемаси
Download 1.02 Mb.
|
микропроцессор
- Bu sahifa navigatsiya:
- JP NZ, 8000
Расм. Узилиш функцияларигамисол келтириш блок – схемаси.ДастурЮљоридаги блок схема дастури 8000 IN А, (С) AND FO CP (CO) JP NZ, 8000RST 08HALTDJNZ 800F Клавиатурада босилган клавиш белгисининг дисплейга чикиш йўли. Агар клавиатурадан босилган клавиш белгиси экрангача босиб ўтган йўли ва бу йўлдаги микросхемалар билан танишилса процессорнинг клавиатура ва дисплей билан уланиш масаласи анча ойдинлашади. Бу жараён расмда кўрсатилган. Клавиатура процессори
8255 ташљи курилма интерфейси Дастур коди
(А) клавиатура процессори ќар бир клавишнинг босилиш белгисини љабул љилади ва А портга скан – кодни узатади. Скан – код – бу 1 байтли сон бўлиб, кичик 7 бити ќар бир клавиш белгисига љўшилган идентификация номерини билдиради. Коднинг катта бити босилдими (бит =1 босилиш коди )ёки љўйворилдими (бит =0 босмаганлик коди) ќаљида хабар беради. Бирор клавиш босилганда А портига 10110000 коди узатилади, бўшатилганда эса 0011000 коди узатилади. Шундай љилиб ќар бир клавиш босилганда 8255 микросхемасида 2 марта љайд љилинади. Ќар бир холатда микросхема клавиатура микропроцессорга тасдиљ сигнали жўнатилади. 8255 микросхема интерфейси клавиатурадан маълумот олади ва бир љатор ташљи љурилмаларни бошљаради. Бу микросхема 3 та 8 битли портларга эга. (В) А портига скан - код берилганда клавиатура узилиши чаљирилади. Процессор тезлик билан ўз ишини тўхтатиб скан – код таќлили билан шуђуланади. Шу пайтда суриш клавишидан код келиб љолса хотирага ёзиб љўйилади. (С) Љабул љилинган код клавиатура буферига жойлаштирилади. Клавиатура буфери хотира области ќисобланиб дастур ишлов беришга улгуролмай турган пайтда 15 та гача белгини эслаб туриши мумкин. (Е) Дастур коди кодларни беради. Кодларнинг 2 тури мавжуд. ASCII ва кенгайтирилган кодлар. ASCII коди бу байтли код бўлиб танланган кодлардан иборат. Бундан ташљари ASCII коди 32 та бошљарувчи кодга эга бўлиб, улар ташљи курилмаларга маълумот жўнатиш учун ишлатилади. 2 чи кодлар тури кенгайтирилган кодлар клавиш ва клавишлар камбинациясини ўз ичига олади. Кенгайтирилган кодлар 2 байт узунликка эга, 1 чи байт ќар доим ASCII 0, 2 чи байт кенгайтирилган код номери бўлади. Масалан: 0:30 коди ALT-А клавишлар комбинациясини билдиради. Биринчи турган 0 дастурга берилган коднинг љайси љодлар тўпламида ASCII ёки кенгайтирилган кодларга тегишли эканлигини билдиради. Клавиатура узилишини дастурлаш. Клавиатура МП ри скан – кодни А портга жойлаганда, 8255 микросхемаси узилишини чиқиради.
Скан – кодни ўљиш ва клавиатурага тасдиљ сигналини жўнатиш зарур. Скан – кодни код номерига айлантириш керак. Клавиш кодини клавиатура буферига жойлаш керак. Узилиш чакирилган пайтда скан – код А портида жойлашган булади. Шунинг учун бу кодни ўљиш ва уни стекда саљлаш керак. Кейин В порти (адреси 61 Н) клавиатура МП ига тасдиљ сигнални жўнатиш учун ишлатилади. Киритилган белги идентификация љилингандан кейин, бу жараён клавиатурадан кириш жараёни ўзига муносиб кодни топиши зарур. ASCII кодими ёки кенгайтирилган код. Умуман олганда скан – код XLAT инструкцияси билан таќлил љилинувчи маълумотлар жадвали элементи билан таљљосланади. XLAT AL да 0 дан 255 гача сонларни љабул љилади ва AL га ДS : ВХ билан кўрсатувчи 256 байтли жадвалдан 1 байтли љиймат жўнатади. Жадвал маълумотлар сегментида жойлашган бўлиши мумкин. Агар AL да 30 скан – коди жойлашган булса, у холда у ерга жадвалдан 30 байти узатилади. ASCII коди «а» ни бергани учун бу байт жадвалда 97 билан тенг ўрнатилиши керак. Албатта «А» ни олиш учун бошља жадвал керак. Охир ољибат кодлар номери клавиатура буферида жойлашади. Иш жараёни буферда кейинги белгига жой бор йўљлигини текшириш билан бошланиши керак. Янги белгилар буфер ячейкасига каттарољ адрес билан жойлаштирилади. Баландги љаторлар тўлгандан кейин навбатдаги белги пастки љисмига жойлаштирилади. Љачонки охирини кўрсаткич бошини кўрсаткичдан 2 марта кам булса буфер тўлган бўлади яъни бошини кўрсаткич 30 га тенг булса (буфер областининг боши) охирини кўрсаткич 60 га тенг булиши керак. Клавиш узилиш дастури. Маълумотлар сигментида.
Дастур бошланишида узилишни ўрнатиб оламиз. DI Узилишни ман љилиш PUSH DS Регистрда саклаймиз LD AX,SEG-N.KEY Узилимга LD DS,AX Ишлов бериш тараёнини LD DX,OFSET N.KEY Кўрсатиш керак LD AL,9 Узилиш векторнинг номери LD AH,25H Тизим функция номери INT 21 Узилиш векторни ўзгартирамиз POP DS Регистрни тиклаш EI Узилишга рухсат Клавиатура узилишининг ўзи N-KEY PROG FAR Хамма ўзгарувчиларни саљлаш PUSH AX хамма регистрлар PUSH BX PUSH CX PUSH DX PUSH ES Скан кодни љабул љилиш ва тасдиљ сигналини жўнатиш
Download 1.02 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling