Коммерциялық емес акционерлік қоғам 

АЛМАТЫ ЭНЕРГЕТИКА ЖӘНЕ БАЙЛАНЫС УНИВЕРСИТЕТІ

Электроника кафедрасы

 

 

 

 

ЦИФРЛЫҚ ҚҰРЫЛҒЫЛАР ЖӘНЕ МИКРОПРОЦЕССОРЛАР

 5В071900 – Радиотехника, электроника және телекоммуникация мамандығындағының барлық оқу түріндегі студенттер үшін зертханалық жұмыстарға арналған әдістемелік нұсқаулар

 

 

 

Алматы 2010 

ҚҰРАСТЫРУШЫЛАР: С.Н.Петрищенко, Г.Д., Мусапирова. Цифрлық құрылғылар және микропроцессорлар. 5В071900 – Радиотехника, электроника және телекоммуникация мамандығындағының барлық оқу түріндегі студенттер үшін зертханалық жұмыстарға арналған әдістемелік нұсқаулар.  - Алматы: АЭжБУ, 2010. – 20 б. 

Әдістемелік нұсқауда i8085 8-разрядты микропроцессорінің ассемблер тілінде бағдарламалаудың негіздері бойынша төрт зертханлық жұмысқа тапсырмалар келтірілген. Мәліметтерді өңдеу мен орындау әдісі, әдебиеттер тізімі мен бақылау сұрақтары берілген. Методикалық нұсқаулар 5В071900 – Радиотехника, электроника және телекоммуникация мамандығындағының барлық оқу түріндегі студенттерге арналған.

 

1 Зертханалық жұмыс

 

Intel 8085 микропроцессоры негізінде микрокомпьютерді оқып үйрену

 

Жұмыстың мақсаты:

- ЕВ-151 платасында орналасқан микрокомпьютер компоненттерінің жұмысымен танысу және оқып үйрену;

микрокомпьютермен жұмыс істеу тәжірибелерін алу.

 

1.1 Жұмыстың орындалу тәртібі

1.1.1 ЕВ-151 платасындағы негізгі компоненттерді бөле отырып 1.1 суретіндегі сұлбаны оқып үйреніңіз:  i8085микропроцессорі, адрестің (address – latch) триггер-ілмегі, өшірілетін бағдарламалық тұрақты есте сақтау құрылғысы – ӨБТЕСҚ (Erasable – Programmable Read – Only Memory - EPROM), оперативті есте сақтау құрылғысы – ОЕСҚ (Random Access Memory – RAM), дешифратор ( Port Decoder), Енгізу (Input Port) мен Шығару (Output Port) порттары және олардың триггер-ілмектері (Input Latch, Output Latch), сондай-ақ адрестік шина (ADDRESS BAS) мен екібағытты мәліметтер шинасы (DATA BUS).

Сұлбада intr (үзіліс), Reset (қайта бастау) және зуммер (Buzzer) кнопкалары бар. 

 

1.1 Сурет

 

1.1.2 ЕВ-151 платасын жұмыс қалпына келтіру үшін 1.1 суретінде көрсетілгендей байланыстарды қосу керек.

1.1.3 ЕВ-151 платасында керекті бағдарламаны іске қосу үшін келесіні орындау керек:

а) D6-D0 енгізу портындағы айырып-қосқыштарда керекті бағдарламаның нөмірін екілік кодта орнатыңыз;

б) D7 айырып-қосқышын «1» жағдайына қойыңыз;

в) RESET кнопкасын басыңыз;

г) D7 айырып-қосқышын қайта «0» жағдайына орнатыңыз.

1.1.4 1.1.3 пунктіне сәйкесті №1 бағдарламасын іске қосыңыз (коды 0000001). Бұндай қосу 0 Енгізу портының D7-D0 айырып-қосқыштарының жағдайын 0 Шығару портындағы светодиодтарда қайталап көрсетеді. Оны D7-D0 айырып-қосқыштарының бірнешеуін өзгертіп көріп тексеріңіз.

1.1.5 Кері кодты алу үшін 1.1.3 пунктіне сәйкесті 0 Енгізу портының D7-D0 айырып-қосқыштары арқылы 0 Шығару портының D7-D0 светодиодтарында №2 бағдарламасының кодын енгізу керек (коды 0000010) те алынған нәтижені бақылаңыз.

1.1.6 №3 бағдарламасын (коды 00000011) 1.1.3 пунктіне сәйкесті орындаңыз. Бұл бағдарлама 0 Енгізу портындағы айырып-қосқыштардан мәліметтерді оқып, оларды циклдық түрде солға қарай төрт разрядқа ығыстыру мүмкіндінін береді. Бұл экспериментті орындай отырып 1.1 кестесін шығыс мәліметтерімен толтырыңыз.

 

1.1 Кесте

Кіріс мәліметтері

Шығыс мәліметтері

11110000

 

00001111

 

 

1.1.7 4 бағдарламасын (коды 00000100) 1.1.3 пунктіне сәйкесті орындаңыз. Бұл бағдарламаны шешудің блок-схемасы 1.2 суретінде көрсетілгендей  логикалық есепті шешеді.

 

 

 


1.2 Сурет

 

D0 мен D1-дің әртүрлі комбинациялары үшін ақиқат кестесін толтырып берілген функцияны іске асыратын логикалық элементтің түрін анықтаңыз.  

1.1.8 №5 бағдарламасын (коды 00000101) 1.1.3 пунктіне сәйкесті орындаңыз. Бұл бағдарлама 1.3 суретінде көрсетілген блок-сұлбаға сәйкесті арифметикалық есептерді шығарады.

 

 

 

 

 

1.3 Сурет

 

Келесі сандарды арифметикалық қосып нәтижесін жазыңыз.

 

а) 1111 + 1001 = ;

б) 0101 + 1011 = ;

в) 1101 + 1101 = ;

г) 0011 + 1000 = .

 

1.1.9  №6 бағдарламасын (коды 00000110) 1.1.3 пунктіне сәйкесті орындаңыз. Бұл бағдарлама 1.4 суретіндегі блок-сұлбаға сәйкесті үзілісті өңдеуді іске асырады.  

 

 

 

 

 

 

 

 

 

  

 1.4 Сурет

 

1.4 суретінен екілік санағыш екілік импульстер сериясын 1 Шығару портына жіберетіні көрініп тұр. Сонымен қатар үзіліс жасау кнопкасы арқылы санағыштың жұмысын 2 секундқа тоқтатуға болады.

Мұғалімнің нұсқауы бойынша 0 Енгізу портының айырып-қосқыштарын 1.2 кестесіне сәйкесті жағдайлардың біреуіне орнатыңыз. Сіз үзіліс жасау кнопкасын басқаннан кейін мәліметтер 2 секундтан кейін 2 Шығару портына жіберілетініне көз жеткізіңіз.

 

1.2 Кесте

Эксперимент

Кірістегі мәліметтер

7654*3210

Шығыстағы мәліметтер

7654*3210

1

1010*1010

1010*1010

2

0101*0101

0101*0101

3

1100*1100

1100*1100

4

0011*0011

0011*0011

 

1.1.10 №7 бағдарламасын (коды 00000111) 1.1.3 пунктіне сәйкесті орындаңыз. Бұл бағдарлама 0 Енгізу портының айрып-қосқыштарының жағдайын оқып сол екілік сигналды 1.3 кестесіне сәйкесті тоналдық дыбыс сигналын жасауға қолданады.

 

1.3 Кесте

Эксперимент №

Кірістегі мәліметтер

Период,

мкс

Жиілік,

кГц

1

00000000

123

8,13

2

00000001

123

8,13

3

00000011

170

5,88

4

00000111

270

3,7

5

00001111

465

2,15

6

00011111

840

1,19

7

00111111

1600

0,6

8

01111111

3050

0,3

9

11111111

6300

0,2

 

Айырып-қосқыштарды 1.3 кестесінде көрсетілгендей қойып әртүрлі тоналды сигналдар болатынын байқаңыз.

1.1.11 №8 бағдарламасын (коды 00001000) 1.1.3 пунктіне сәйкесті орындаңыз. Бұл бағдарлама 0 Енгізу портының айырып-қосқыштарының жағдайын оқып 1.5 суретінде көрсетілгендей үш үзілісті алғаннан кейін дыбыс шығару құрылғысына (зуммерге) жібереді.

Айырып-қосқыштардың кез келген комбинациясын таңдаңыз. Үзіліс жасау кнопкасын басыңыз. Айырып-қосқыштардың екінші комбинациясын таңдаңыз. Үзіліс жасау кнопкасын басыңыз. Айырып-қосқыштардың үшінші комбинациясын таңдаңыз. Үзіліс жасау кнопкасын басыңыз. Енді сіздің үш тоннан жасалған милодияңыз естілу керек.

Қателер болмау үшін үзіліс жасау кнопкасын басқанда бір секундтан артық ұстаңыз. Сондай-ақ әр кнопканы Шығару кезіде портының мәніне мұқият қараңыз.

Айырып-қосқыштардың басқа да жағдайлары үшін осыны қайталаңыз.

 

 

 

 

 

 

 

 

 

1.5 Сурет

 

 

1.2 Бақылау сұрақтары

1.2.1 Мәліметтер мен адрестер шинасында қанша біріктіру сымдары бар?

1.2.2 Адрестік шина қанша адрес таңдай алады?

1.2.3 Ішкі мен сыртқы жадылар арасында қандай айырмашылық бар?

1.2.4 Микропроцессор қандай негізгі қызметтерді орындайды?

1.2.5 Микрокомпьютер қандай негізгі бөліктерден тұрады?

1.2.6 Енгізу порты қандай құрылғылармен байланысқан: жадымен, орталық процессормен, шығару портымен?

1.2.7 Шығару порты қандай құрылғылармен байланысқан: жадымен, орталық процессормен, енгізу портымен, шығару құрылғыларымен (цифро-аналогты түрлендіргіш, светодиодтар және реле?

1.2.8 Енгізу порты 3 портындай жұмыс істеу үшін не істеу керек?

1.2.9 Үш жағдайлы ТТЛ логикалық сұлбасының шығыстарына қашан қосылуға болады?

 

2 Зертханалық жұмыс

 

ЕВ-152 платасымен танысу. Микрокомпьютерде қарапайым бағдарламаларды орындау

 

Жұмыстың мақсаты:

-  ЕВ-152 платасын ЕВ-151 платасына қосуды үйрену;

- i8085 микропроцессорінің регистрлері мен жады ұяшықтарын қарап, оның ішіндегіні өзгертуді үйрену;

- ЕВ-151 микрокомпьютерінде қарапайым бағдарламаларды орындау.

 

2.1 Жұмыстың орындалу тәртібі

2.1.1 Ұзын сымдарды қолданып ЕВ-152 платасын келесдей реттілікпен қосыңыз:

a)   +12 V. EB-152   -   +12 VPU-2000;

b)   + 5 V.  EB-152   -   + 5 V.   PU-2000;

c)   -12 V EB-152   -   -12 V.   PU-2000;

d)  GND    EB-152   -   Ground PU-2000;

e)  Sig.ANAL/KB+DISP (S1) айырып-қосқышын KB+DISP жағдайына орнатыңыз;

f) EB-152-нің TX клеммасын  EB-151-дің   RX клеммасымен қосыңыз;

g)  EB-152-нің RX клеммасын  EB-151-дің   TX клеммасымен қосыңыз.

2.1.2 ЕВ-152 платасының дисплейі EbHt-ні көрсету керек.

2.1.3 ЕВ-151 платасындағы Reset кнопкасын бір сәтке басып қайта жіберіңіз. Егер барлығы дұрыс жұмыс жасаса ЕВ-152 платасының дисплейі Eb-151 жазуын көрсету керек.

2.1.4 Көлемі 8 Кбайт ТЕСҚ-ға (тұрақты есте сақтау құрылғысы) кіретін басқару бағдарламасының бірнеше адресін қарап шығыңыз. Ол үшін МЕМ пернесін басып, мысалға 1000Н адресін енгізіңіз. ENTER пренесін басқаннан кейін адрестің сол жағында 0ЕН ұяшығының мазмұны көрінеді. ENTER пернесін қайталап басқанда келесі 1001Н адрес ұяшығының мазмұны пайда болады және солай жалғаса береді.  2.1 кестесінде келтірілген адрестері басқарушы жадысына рұқсат етілген диапазонда (0000Н-1FFFH) жатқан бірнеше ұяшықтарды қарап оларды жазыңыз.

 

2.1 Кесте

Жады ұяшықтарының адресі

0889H

088AH

088BH

088CH

088DH

1F27H

0988H

0B24H

018CH

009CH

 

2.1.5 5 кестесінде көрсетілген адрестер мен берілгендерді ОЕСҚ (диапазоны 2100Н-27FFH адрестерінде жатқан оперативті есте сақтау құрылғысы) жады ұяшықтарына жазыңыз. Ол үшін МЕМ пернесін басып керекті адресті енгізіңізгеннен кейін ENTER-ді басып мәліметтерді енгізіңіз.  ENTER-ді басып келесі адрес пен мәліметтерді енгізіңіз т.с.с.

 

2.2 Кесте

Адрес

2100Н

2101Н

2102Н

2103Н

2104Н

21005Н

Мәліметтер

AA

AB

AC

AD

AE

AF

 

ОЕСҚ-ға мәліметтерді енгізгеннен кейін ол ұяшықтарды жоғарыда көрсетілгендей алгоритммен қарап шығыңыз.

2.1.6  2.3 кестесінде келтірілген бағдарламаны жазыңыз, ол үшін келесіні орындаңыз:

a) ЕВ-151 платасындағы RESET  пернесін басыңыз;

b) ЕВ-152 платасындағы MEM пернесін басыңыз;

c) 2100Н адресін енгізіңіз;

d) ENTER перенсін басыңыз.

 

2.3 Кесте

Адрес

Машиналық код

Мнемокод

2100

3F

MVI A, FFH

2101

FF

 

2102

FF

RST 7

 

Бағдарлама орындалу үшін GO пернесін басып  бағдарлама басталған адресті енгізіңіз. ENTER-ді басыңыз.

2102Н адресіндегі FFH бұйрығы бақылау нүктесі болып табылады. Бұл нұсқау бағдарламаны тоқтатып bP 2103H-ді көрсетеді. Бұл адрес бағдарламалық санағыш деп аталатын регистр мазмұны болып табылады.

А регистріне жазылған FFH санын REG және 1 пернелерін басу арқылы көруге болады.

2.1.7 2.1.6 пункт алгоритмі бойынша 2.4 кестесінде келтірілген бағдарламаны жазыңыз. Бұл бағдарлама санның кері кодын есептеп есептеу нәтижесін есте сақтайды

 

2.4 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

3AH

LDA

2130H

2130Н адресінен мәліметтерді жүктеу

2101Н

30H

 

 

 

2102Н

21H

 

 

 

2103Н

2FH

CMA

 

Санның кері коды

2104Н

32H

STA

2131H

2131Н адресі бойынша сақтау

2105Н

31H

 

 

 

2106Н

21H

 

 

 

2107Н

FFH

RST7

 

Басқарушы бағдарламаға қайта оралу

Бастапқы мәліметтер 2.5 кестесіне сәйкес енгізіледі. Алынған нәтижелерді анықтап белгілеңіз.

 

2.5 Кесте

2130Н

00Н

3EH

C9H

FAH

1EH

2131Н

 

 

 

 

 

 

2.1.8 2.5 кестесіндегі бастапқы мәліметтерді қолданып 2.6 кестесінде келтірілген бағдарламаны енгізіп орындаңыз.

 

2.6 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

21AH

LXI H

2130

2130Н адресінен мәліметтерді жүктеу

2101Н

30H

 

 

 

2102Н

21H

 

 

 

2103Н

7FH

MOV A,M

 

Мәліметтерді оқу

2104Н

2FH

CMA

 

Санның кері коды

2105Н

23H

INX H

 

HL-дегі санды 1-ге өсіру

2106Н

77H

MOV M,A

 

Мәліметтерді сақтау

2107Н

FFH

RST7

 

Басқарушы бағдарламаға қайта оралу

 

2.1.9 2.8 кестесіндегі бастапқы мәліметтер мен 2.7 кестесіндегі бағдарлама бойынша екі санды қосуды орындаңыз.

 

2.7 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

  21AH

LXI H

2130H

 

2101Н

30H

 

 

 

2102Н

21H

 

 

 

2103Н

7EH

MOV A,M

 

Бірінші санды оқу

2104Н

23H

INX H

 

 

2105Н

86H

ADD M

 

Екінші санды қосу

2106Н

23H

INX H

 

 

2107Н

77H

MOV M,A

 

Нәтижені сақтау

2108H

 FFH

RST 7

 

 

 

2.8 Кесте

2130Н

32Н

58H

B8H

2131Н

15H

43H

7DH

2131H

 

 

 

 

2.1.10 ANA M логикалық операциясын орындауға арналған 2.9 кестесінде келтірілген бағдарламаны орындаңыз. Бастапқы мәліметтер 2.8 кестесінде берілген.

 

2.9 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

  21AH

LXI H

2130H

 

2101Н

30H

 

 

 

2102Н

21H

 

 

 

2103Н

7EH

MOV A,M

 

Бірінші санды оқу

2104Н

23H

INX H

 

 

2105Н

A6H

ANA M

 

Екінші санмен логикалық қосу

2106Н

23H

INX H

 

 

2107Н

77H

MOV M,A

 

Нәтижені сақтау

2108H

 FFH

RST 7

 

 

 

2.2 Бақылау сұрақтары

2.2.1 MEM пернесінің қызметі қандай?

2.2.2 REG пернесінің қызметі қандай?

2.2.3 RST 7 бұйрығының қызметі қандай?

2.2.4 Микропроцессордің тактілік жиілігі 2 МГц кезіндегі 2.4 кестесінде келтірілген бағдарламаны орындауға керек уақытты есептеңіз. Ол кезде LDA бұйрығы 13 циклдан, CMA бұйрығы 4 циклдан, STA бұйрығы 3 циклдан, RST 7 бұйрығы 12 циклдан тұратыны белгілі.

2.2.5 ANA r, ANA M, ANI data логикалық бұйрықтары әрекетіне түсініктеме беріңіз?

2.2.6 LDA adr, CMA и STA adr бұйрықтары қызметіне түсініктеме беріңіз?

 2.2.7 LXI rp, data 16; INX rp және MOV r,M бұйрықтары қызметі мен әрекетіне түсініктеме беріңіз?

2.2.8 ADD r; ADI,data; ADD M; ADC r; ADC M және ADI data арифметикалық қосу бұйрықтары әрекетіне түсініктеме беріңіз?

 

3 Зертханалық жұмыс

 

i8085 микропроцессорі арқылы деректер массивін өңдеу

 

Жұмыстың мақсаты:

- i8085 бұйрықтарын деректер массиві бар бағдарламаларын орындауға қолдану және оларды түсіну.

 

3.1 Жұмыстың орындалу тәртібі

3.1.1 Ұзын сымдарды қолданып ЕВ-152 платасын келесдей реттілікпен қосыңыз:

a) +12 V. EB-152   -   +12 V.  PU-2000;

b) + 5 V.  EB-152   -   + 5 V.   PU-2000;

c)  -12 V.  EB-152   -   -12 V.   PU-2000;

d) GND    EB-152   -   Ground PU-2000;

e) Sig.ANAL/KB+DISP (S1) айырып-қосқышын KB+DISP жағдайына орнатыңыз;

f) EB-152-нің TX клеммасын  EB-151-дің   RX клеммасымен қосыңыз;

g) EB-152-нің RX клеммасын  EB-151-дің   TX клеммасымен қосыңыз.

3.1.2 ЕВ-152 платасының дисплейі EbHt-ні көрсету керек.

3.1.3 ЕВ-151 платасындағы Reset кнопкасын бір сәтке басып қайта жіберіңіз. Егер барлығы дұрыс жұмыс жасаса, ЕВ-152 платасының дисплейі Eb-151 жазуын көрсету керек.

3.1.4 3.1 кестесінде көрсетілген санау бағдарламасын енгізіңіз. Бұл бағдарлама жетіге дейін санайды да сол санды есте сақтайды.

 

3.1 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

 3EH

MVI A

00H

Сумматорды 0-ге түсіру

2101Н

00H

 

 

 

2102Н

3CH

INR A

 

Сумматордың мәнін 1-ге өсіру

2103Н

FEH

CPI

07H

Санақ бітуін тексеру

2104Н

07H

 

 

 

2105Н

FFH

RST 7

 

Үзіліс нүктесі

2106Н

CAH

JZ

210CH

Егер сумматор =7 болса өту

2107Н

0CH

 

 

 

2108H

21H

 

 

 

2109H

C3H

JMP

2102H

Операцияны қайталау

210AH

02H

 

 

 

210BH

21H

 

 

 

210CH

32H

STA

2115H

Сумматорды сақтау (7)

210DH

15H

 

 

 

210EH

21H

 

 

 

210FH

FFH

RST 7

 

Бағдарлама соңы

 

3.1 кестесінде көрсетілгендей 2105Н адресінде бақылау нүктесі бар, онда бағдарлама тоқтаған кезде жады ұяшықтар мен регистрлер мазмұнын көруге болады.

REG және «1» пернелерін басып аккумулятор мазмұнын көруге болады.

REG және «8» пернелерін басып F белгілер регистрінің мазмұнын көруге болады.

Нөл флагы (алтыншы бит) нөлге тең екеніне көз жеткізіңіз, ол кезде аккумулятор 7-ге тең болмайды.

GO және ENTER пернелерін басыңыз. 2106Н адресі бойынша бағдарламаны қайталау үшін 2109Н адресіне жіберетін JZ (егер нөл болса өту) бұйрығы орналасқан.

Аккумулятор мазмұны 7 болғанға дейін бағдарламаның орындалуын қайталаңыз. Сәйкесті бақылау нүктесінің адресі – 2109Н, ал нәтиже (07) 2115Н ұяшығында сақталады.

3.1.5 3.2 кестесінде 2160Н және 2161Н жады ұяшықтарының мазмұнын кему ретінде орналастыратын бағдарлама көрсетілген, яғни үлкен элементтер алдында жүреді.

 

3.2 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

 3AH

LDA

2160H

Бірінші элементті оқу

2101Н

60H

 

 

 

2102Н

21H

 

 

 

2103Н

47H

MOV B,A

07H

Бірінші элементті сақтау

2104Н

3AH

LDA

2161H

Екінші элементті сақтау

2105Н

61H

 

 

 

2106Н

21H

 

 

 

2107Н

B8H

CMP B

 

Элементтерді салыстыру

2108H

00H

NOP

 

Бос операция

2109H

DAH

JC

2113H

Бағдарламадан шығу

210AH

13H

 

 

 

210BH

21H

 

 

 

210CH

32H

STA

2160H

Массив элементтерін сақтау

210DH

60H

 

 

 

210EH

21H

 

 

 

210FН

 78H

MOV A,B

00H

Элементтерді тасымалдау

2110Н

32H

STA

2161H

Екінші элементті сақтау

2111Н

61H

 

 

 

2112Н

21H

 

 

 

2113Н

FFH

RST 7

 

ББ-ға оралу

 

3.2 кестесінде бағдарлама JC бұйрығын қолдана отырып тасымалдау флагын тестілейтіні көрсетілген. Еске ала кететін жағдай, егер тасымалдау флагы 1 жағдайна орнатылған болса, бағдарлама JC бұйрығымен анықталған адресте бағдарлама қайтадан басталады. Егер тасымалдау флагы 0-ге түсірілген болса, бағдарлама орындалуы кезекті келесі бұйрығынан жалғаса береді. Бұд бұйрықты регистрлерді көру мақсатында RST 7-мен алмастыруға болады.

3.1.6 Массивтің барлық элементтерінің қосындысын есептеу алгоритмін көрсететін 3.1 суретіндегі блок-сұлбаны оқып үйреніңіз.

 

 

 

 

 

3.1 Сурет

 

3.1 суретінде көрсетілген алгоритмді іске асыратын бағдарлама 3.3 кестесінде келтірілген.

 

3.3 Кесте

Адрес

Машкод

Мнемокод

Операнд

Түсініктеме

2100Н

 06H

MVI B

05H

Санағыш = 5

2101Н

05H

 

 

 

2102Н

21H

LXI H

2160H

Базалық адресті анықтау

2103Н

60H

 

 

 

2104Н

21H

 

 

 

2105Н

97H

SUB A

 

Қосындысын 0-ге түсіру

2106Н

86H

ADD M

 

Сумма = Сумма + Берілген

2107Н

32H

STA

2165H

Берілгенді сақтау

2108H

65H

 

 

 

2109H

21H

 

 

 

210AH

05H

DCR B

 

Уменьшение       У

210BH

97H

SUB A

 

Сумматорды түсіру

3.3 кестесінің аяқталуы

210CH

B8H

CMP B

2160H

Санақ аяқталуын тексеру

210DH

CAH

JZ

2117H

Егер «иә» болса, бағдарламаны аяқтау

210EH

17H

 

 

 

210FН

 21H

 

 

 

2110Н

3AH

LDA

2165H

Егер «жоқ» болса, қосындыны есептеу

2111Н

65H

 

 

 

2112Н

21H

 

 

 

2113Н

23H

INX H

 

Сілтемені 1-ге өсіру

2114Н

C3H

JMP

2106H

 

2115Н

06H

 

 

 

2116Н

21H

 

 

 

2117Н

FFH

RST 7

 

ББ-ға оралу

 

Бастапқы мәліметтер ретінде 3.4 кестесінде келтірілген мәндерді бастапқы мәліметтер ретінде қолданып, бағдарламаны іске қосыңыз. Есептеулерді орындап, жетпеген мәндерді 3.4 кестесіне енгізіңіз

 

3.4 Кесте

Адрес

2160Н

2161Н

2162Н

2163Н

2164Н

2165Н

Берілгендер

A3H

11H

27H

5BH

32H

 

 

 

3.2 Бақылау сұрақтары

3.2.1 F регистрінің флагтық биттерін келтіріңіз, олардың қызметін түсіндіріңіз.

3.2.2 JMP adr,  JC adr және JZ adr басқару бұйрықтарының әрекетіне түсініктеме беріңіз.

3.2.3  CMP B, NOP, MVI B және SUB A бұйрықтарының әрекеті мен қызметіне түсініктеме беріңіз.

3.2.4 3.2 кестесінде келтірілген бағдарламаның есептеу алгоритмін құрыңыз.

3.2.5 Мәліметтер массивін өңдеу үшін қандай параметрлер керек?

3.2.6 H және L жалпы қолдануға арналған регистрлерінің қызметін көрсетіңіз.

3.2.7 B, C, D және E жалпы қолдануға арналған регистрлері мен аккумулятор қызметі.

 

 

4 Зертханалық жұмыс  

 

Бағдарлама жұмыстарын микропроцессор эмуляторы көмегімен оқып үйрену

 

Жұмыстың мақсаты:  

- i8085 микропроцессорының эмулятор көмегімен қарапайым бағдарламалар жұмысын талдауға дағдылану.

 

4.1 Жұмыстың орындалу тәртібі

4.1.1 к580 папкасынан d580.exe эмулятор файлын тауып іске қосыңыз. Монитор экранында меню пайда болады.

4.1.2 F10 пернесі және «Енгізу»-ді екі рет басу арқылы керекті бағдарлама атын таңдаңыз да эмуляторға жүктеңіз. Ол бағдарлама мазмұны  4.1 суретінде көрсетілген.

 

LXI H,10H;

HLT;

INX H;

ADD M;

DAA;

 

INX H;

MOV M,A;

MOV A,M;

бағдарламаны тоқтату бұйрығы

Байтты жадыдан А-ға жіберу

Н мазмұнын 1-ге өсіру

A           А + M(HL)

Егер АС=1 болса,онда А+06,

егер С=1 болса, үл.тетрада+06

НL регистрлер жұбын инкременттеу

байтты А-дан жадыға жіберу

Жады сілтемесін жүктеу

 

4.1 Сурет

 

4.1.3 Алдын ала 10h және 11h адресті жады ұяшықтарына сәйкесінше 37h және 48h жазып алып, (Alt-M) 1-ші бағдарламаның жұмысын зерттеңіз. F7 пернесі арқылы бағдарламаны орындауға қадамдық режімде жіберіңіз. Бағдарлама жұмысын зерттей отырып, келесі сұрақтарға жауап беріңіз:

1)  Бағдарлама орындалуына қанша машиналық такт жұмсалады?

2)  Сандарды қосу нәтижесі қай жады ұяшығында орналасады?

3)  DAA  ондық коррекциясының бұйрығы орындалғанға дейін аккумуляторда қандай сан болады?

4)  Қандай бұйрықтарда белгілер регистрінің мазмұны болады?

Бастапқы берілгендерді өзгертіп бағдарламаны автоматты түрде орындаңыз (F9 пернесі).

Зерттеу аяқталғаннан кейін F10 пернесі арқылы бағдарламадан шығып зерттеуге арналған келесі бағдарламаны жүктеңіз. 

4.1.4 Алдыңғы мысалда жадымен байланысқанда кет жанама адрестеу қолданылған. 4.2 суретіндегі тура адрестеу бұйрығын қолданатын бағдарламаны зерттеңіз.

LXI H,10H;

LDA 11H;

ADD M;

DAA;

STA 12H;

HLT

HL              0010H    

A               M(0011H)

A               A + M(HL)

Аккумулятордың ондық коррекциясы

М(0012Н)           А

Тоқтау

4.2 Сурет

 

4.1.5 4.3 суретінде көрсетілегндей 100Н  адресінен басталатын қолданушы ОЕСҚ-сының 20 датчигінен алынған байттық ақпарат мәнін  аккумуляторға жазу бағдарламасының жұмысын тексеріңіз. 

 

LXI H,100H;         

Массивтің бастапқы адресі

MVI B,20

Элементтер саны

XRA A;               

Аккумуляторды тазалау

M1:  CMP   M;     

Егер А=М болса, Z=1; егер А<М болса, С=1

JNC M2;  

Егер А үлкен болса өту

MOV A,M;          

Егер А кіші немесе тең болса, ауысу

M2:  INX H;

Адресті өсіру

DCR B;                    

Элементтер саны санағышын декременттеу

JNZ M1;               

Массивтерді өңдеу циклы

HLT;

 

4.3 Сурет

 

100h – 113h адресті үлкен емес массивтер түріндегі жады ұяшықтарын 3 бағдарламасында көрсетілгендей еркін ақпаратпен (99h санынан жоғары емес)  толтыру керек.  Бағдарлама автоматты түрде орындалғаннан кейін максималды сан аккумуляторға түсетініне көз жеткізіңіз.

4.1.6 Аккумуляторда екілік-ондық санағышты іске асыратын  4.4 суретінде келтірілген бағдарлама жұмысын тексеріңіз, ол кезде инкременттеу жылдамдығы DELAY уақыттық кідіріс бағдарламасының орындалу уақытынан тәуелді.

LXI SP,20H;              

Стек сілтеуін жүктеу

M2:         ADI 1;                        

Аккумуляторды инкременттеу

DAA;                         

Ондық коррекция

CALL DELAY;          

Қосалқы бағдарламаны шақыру

JMP M2;                   

Бағдарламаның циклденуі

DELAY:  MVI B,2;                    

Санағышты орнату

M1:          DCR B;                      

Санағышты декременттеу

JNZ M1;                   

Егер нөл болмаса, қайталау 

RET 

Қосалқы бағдарламадан қайта оралу  

                                                                        

                                        4.4 Сурет

Бағдарламаны қадамдық режімде орындай отырып, аккумулятор, В регистрі, SP стек сілтемесі, стек, нөл және жұптық белгілерінің мазмұны қалай өзгеретінін аңғарыңыз.

 

4.2 Бақылау сұрақтары

4.2.1 DAA ондық коррекция бұйрығының жұмыс істеу алгоритмін түсіндіріңіз.

4.2.2 Стек сілтемесі деген не және ол қалай жұмыс істейді?

4.2.3 Қосалқы бағдарламадан оралғанда стекте не сақталады?

4.2.4 Қосалқы бағдарламаны шақырғанда стек сілтемесі қаншалықты өзгереді?

4.2.5 RET бұйрығы орындалғанда не болады?

4.2.6 Қосалқы бағдарлама деген не және оны қалай ұйымдастыруға болады?

  

Әдебиеттер тізімі

 

1. Цифровая и вычислительная техника: Учебник под ред. Э.В.Евреинова.- М.: Радио и связь, 1991. -  464 с.

Пухальский Г.И. Проектирование микропроцессорных систем. Учебное пособие для вузов.- СПб.: Политехника, 2001.–544 с.

3. Калабеков Б.А. Цифровые устройства и микропроцессорные системы. Учебник для техникумов связи.- М.: Горячая линия –Телеком, 2000. – 336 с.

4. Гольденберг Л.М. и др. Цифровые устройства и микропроцессорные системы. Задачи и упражнения: Учебное пособие. - М.: Радио и связь,1992 . - 256 с.

5. Бойко В.И., Гуржий А.Н., Жуйков В.Я. и др. Схемотехника электронных устройств. Микропроцессоры и микроконтроллеры.- СПб.: БХВ – Петербург, 2004. – 464 с.

6. Петрищенко С.Н. Цифровые устройства и микропроцессоры. Конспект лекций для студентов специальности 050719 – Радиотехника, электроника и телекоммуникации дистанционной формы обучения. – Алматы: АИЭС, 2006. – 36 с. 

 

Мазмұны 

1 Зертханалық жұмыс

2 Зертханалық жұмыс 

3 Зертханалық жұмыс     

4 Зертханалық жұмыс     

Әдебиеттер тізімі                                                                                                                                         

3

9

13

17

20