Міністерство освіти України
національний університет Львівська політехніка’
Кафедра електроприводу
Лабораторна робота №7
на тему:
«Програмування роботи цифрової А-ланки»
з дисципліни « Мікропроцесорні засоби та ситеми »
Львів 2001
Мета роботи: скласти програми функціонування аперіодичної ланки в реальному масштабі часу.
Завдання y0=0; x1=5; t1=24; x2=10; t2=18; x3=15; t3=30; T=10; k=2 h=3
x1=000101,00B=14H, x2=001010,00=28H, x3=001111,00=3CH; h/T=0,3D=0,01B
прийнято під дробову частину ( два біти.
Ф-ла обчисл.: yi+1=yi+(kxi- yi)h/T
Дані
8300
07
8301
83
8302
04
8303
83
8304
08
8305
06
8306
0A
8307
14
8308
28
8309
3C
830A
03
830B
00
830C
84
8200
16
MVI D.00
8221
22
SHLD 830B
16
8201
00
8222
0B
8202
2A
mx1
LHLD.8302
16
8223
83
8203
02
8224
1D
DCR E
5
8204
83
8225
C2
JNZ 8206 (mx1)
10
8205
5E
MOV E.M
5
8226
06
8206
2A
mx
LHLD 8300
16
8227
82
8207
00
8228
2A
LHLD 8300
16
8208
83
8229
00
8209
7E
MOV A.M
5
822A
83
820A
2E
MVI L.02
7
822B
23
INX H
5
820B
02
822C
22
SHLD 8300
16
820C
17
RAL
4
822C
00
820D
DA
JC 8216
10
822E
83
820E
16
(m)
822F
2A
LHLD 8302
16
820F
82
8230
02
8210
CD
CALL 8241
17
8231
83
8211
41
(ПП1)
8232
23
INX H
5
8212
82
8233
22
SHLD 8302
16
8213
C3
JMP 8219
10
8234
02
8214
19
(m1)
8235
83
8215
82
8236
3A
LDA 830A
13
8216
CD
m
CALL 8280
8237
0A
8217
41
(ПП2)
8238
83
8218
82
8239
3D
DCR A
5
8219
CD
m1
CALL 82A0
17
823A
32
STA 830A
13
821A
A0
(ППз)
823B
0A
821B
82
823C
83
821C
2A
LHLD 830B
16
823D
C2
JNZ 8202 (mx)
10
821D
0B
823E
02
821E
83
823F
82
821F
72
MOV M.D
5
8240
E7
RST
8220
23
INX H
5
8241
ПП1
8241
1F
RAR
4
824C
60
(ППм)
8242
67
MOV H.A
5
824D
82
8243
CD
CALL 8260
17
824E
79
MOV A.C
5
8244
60
(ППм)
824D
0F
RRC
4
8245
82
824F
0F
RRC
4
8246
79
MOV A.C
5
8250
E6
ANI 3F
7
8247
92
SUB D
4
8251
3F
8248
67
MOV H.A
5
8252
82
ADD D
7
8249
2E
MVI L.01
7
8253
57
MOV D..A
5
824A
01
8254
C9
RET
10
824B
CD
CALL 8260
17
8255
242
Підпрограма множення (ППм).
8260
01
LXI B.0000
10
826C
84
ADD H
4
8261
00
826D
1F
M1
RAR
4
8262
00
826E
47
MOV B.A
5
8263
3E
MVI A.01
7
826F
79
MOV A.C
5
8264
01
8270
1F
RAR
4
8265
A7
ANA A
4
8271
4F
MOV C.A
5
8266
F5
M2
PUSH PSW
11
8272
F1
POP PSW
10
8267
A5
ANA L
4
8273
17
RAL
4
8268
78
MOV A.B
5
8274
D2
JNC 8266
10
8269
CA
JZ 8260
10
8275
66
(M2)
826A
6D
(M1)
8276
82
826B
82
8277
C9
RET
10
99+21
Розрахунок часової затримки:
Час затримки: 3с=6*10^6 тактів.
Кількість тактів програми часової затримки: 6*10^6-(99*8+21+242)=5998945 тактів.
8280
01
LXI B.C347
10
8281
47
8282
C3
8283
2A
M
LHLD
16
8284
82
82B0
8285
B0
8286
2A
LHLD
16
8287
82
82B0
8288
B0
8289
2A
LHLD
16
828A
82
82B0
828B
B0
828C
2A
LHLD
16
828D
82
82B0
828E
B0
828F
2A
LHLD
16
8290
82
82B0
8291
B0
8292
2A
LHLD
16
8293
82
82B0
8294
B0
8295
0B
BCX B
5
8296
B1
MOVA.B
5
8297
78
ORA C
4
8298
C2
JNZ
10
8299
83
8283
829A
82
(M)
829B
C9
RET
10
Цикл підпрограми затримки: 120 татів
Кількість циклів: (5998945-20)/120=49996 D=C347 H.
Результати.
8400
0A
000010,10
2,5
8408
2D
001011,01
11,25
8410
63
011000,11
24,75
8401
11
000100,01
4,25
8409
35
001101,01
13,25
8411
68
011010,00
26
8402
16
000101,10
5,5
840A
3B
001110,11
14,75
8412
6C
011011,00
27
8403
1A
000110,10
6,5
840B
40
010000,00
16
8413
6F
011011,11
27,75
8404
1D
000111,01
7,25
840C
44
010001,00
17
8414
71
011100,01
28,25
8405
1F
000111,11
7,75
840D
47
010001,11
17,75
8415
72
011100,10
28,5
8406
21
001000,01
8,25
840E
53
010100,11
20,75
8416
73
011100,11
28,75
8407
22
001000,10
8,5
840F
5C
010111,00
23
8417
74
011101,00
29