Professional Documents
Culture Documents
÷ V
RD V
WR V
CS
:4!9 :4!9
" Đӏnh dҥng tӯ điӅu khiӇn cӫa 8255 (chӃ đӝ vào/ ra).
"
45$%78!9)6
Hãng Intel gӑi chӃ đӝ 0 là chӃ đӝ vào/ ra cơ sӣ. Mӝt thuұt ngӳ đưӧc dùng
chung hơn là vào/ ra đơn giҧn. Trong chӃ đӝ này thì mӝt cәng bҩt kǤ trong A, B,
C đưӧc lұp trình như là cәng đҫu vào hoһc cәng đҫu ra. Cҫn lưu ý rҵng trong chӃ
đӝ này mӝt cәng đã cho không thӇ vӯa làm đҫu vào lҥi vӯa làm đҫu ra cùng mӝt
lúc.
:&;
Hãy tìm tӯ điӅu khiӇn cӫa 8255 cho các cҩu hình sau:
Tҩt cҧ các cәng A, B và C đӅu là các cәng đҫu ra (chӃ đӝ 0).
PA là đҫu vào, PB là đҫu ra, PCL bҵng đҫu vào và PCH bҵng đҫu ra.
<))6)
Tӯ hình 15.3 ta tìm đưӧc:
+ ,-. /+,-
#=>)?"8$@)
Chíp 8255 đưӧc lұp trình mӝt trong bӕn chӃ đӝ vӯa trình bày ӣ trên bҵng
cách gӱi mӝt byte (hãng Intel gӑi là mӝt tӯ điӅu khiӇn) tӟi thanh ghi điӅu khiӇn
cӫa 8255. Trưӟc hӃt chúng ta phҧi tìm ra các đӏa chӍ cәng đưӧc gán cho mӛi cәng
A, B, C và thanh ghi điӅu khiӇn. Đây đưӧc gӑi là ánh xҥ cәng vào/ ra (mapping).
Như có thӇ nhìn thҩy tӯ hình 15.4 thì 8255 đưӧc nӕi tӟi mӝt 8031/51 như
thӃ nó là bӝ nhӟ AM. ĐӇ viӋc sӱ dөng các tín hiӋu D và W . Phương pháp
nӕi mӝt chíp vào/ ra bӝ nhӟ vì nó đưӧc ánh xҥ vào không gian bӝ nhӟ. Hay nói
cách khác, ta sӱ dөng không gian bӝ nhӟ đӇ truy cұp các thiӃt bӏ vào/ ra. Vì ly???
do này mà ta dùng lӋnh MOVX đӇ truy cұp AM và OM. Đӕi vӟi mӝt 8255
đưӧc nӕi tӟi 8031/51 thì ta cũng phҧi dùng lӋnh MOVX đӇ truyӅn thông vӟi nó.
ĐiӅu này đưӧc thӇ hiӋn trên ví dө 15.2.
:&;
p
a) Hãy tìm các đӏa chӍ vào/ ra đưӧc gán cho cәng A, B, C và thanh ghi điӅu
khiӇn.
b) Hãy lұp trình 8255 cho các cәng A, B và C thành các cәng đҫu ra.
c) ViӃt mӝt chương trình đӇ gӱi 55H và AAH đӃn cәng liên tөc.
<))6)
a) Đӏa chӍ cơ sӣ dành cho 8255 như sau:
$ $ $ $ $ $ $ $ $ $ $ $ % ,-V
$ $ $ $ $ $ $ $ $ $ $ $ % ,-V
$ $ $ $ $ $ $ $ $ $ $ $ % ,-V
$ $ $ $ $ $ $ $ $ $ $ $ % ,-
b) Byte (tӯ) điӅu khiӇn cho tҩt cҧ các cәng như đҫu ra là 80H như đưӧc tính ӣ ví
dө 15.1.
c)
32 @A- .B#"#
32 V@A- .
C9 D )E ) )F
8 !"#
32% GV@ .%!H88B#"#
32 @A- . I,
0
J 32 V@A- .KD)E)V
32% GV@ .>HL)I)/8)V
0
V .KD)E)V
32% GV@ .>HL)I)/M8)V
0
V .KD)E)V
32% GV@ .>HL)I)/M8)V
V> .>HL)I)/M88
>> >N .O
P3V 0
.Q98R)
÷
RD
V
V
WR
V CS WR RD
> V
V
V DQ
V
V 74LS373
OC
# Nӕi ghép 8051 vӟi 8255 cho ví dө 15.2.
:&;"
p
a) Tìm các đӏa chӍ cәng vào ra đưӧc gán cho các cәng A, B, C và thanhg ghi điӅu
khiӇn.
b) Tìm byte điӅu khiӇn đӕi vӟi PA bҵng đҫu vào, PB bҵn g đҫu ra, PC bҵng đҫu ra
c) ViӃt mӝt chương trình đӇ nhұn dӳ liӋu tӯ PA gӱi nó đӃn cҧ cәng B và cәng C.
<))6)
a) Giҧ sӱ tҩt các các bit không dùng đӃn là 0 thì đӏa chӍ cәng cơ sӣ cho 8255 là
1000H. o vұy ta có:
-7SV.-7SV .-7SVTS -7S8 !"#
b) Tӯ điӅu khiӇn cho trưӡng hӧp này là 10010000 hay 90H.
c)
32 @A- .V7SU!TS4@V 7SU!:@V7SU!:
32 V@A- .
C9 D )E ) )F 8 !
"#
32% GV@ .%!H88B !"#
32 V@A- .KD)EV
32% @GV .
W5X7Y!8BV
0
V .KD)EV
32% GV@ . Z5X7Y!:V
0
V .KD)EV
32% GV@ . Z5X7Y!:V
÷
RD
V
V
W
V
W D
c
V
> G
V
V [
V
V V V
2
÷
RD
V
V
WR
WR RD
CS
V
> V
V V
[ >
> V<
V
2
-Nӕi ghép 8051 vӟi 8255 cho ví dө 15.4.
:&;
Hãy tìm đӏa chӍ cơ sӣ cho 8255 trên hình 15.7.
<))6)
23 2 KD)E
-
V ÷
÷
N
G 2A
G 2B CS
÷
±
V
V
W
VCC
PSEN
c Wö ö±
V V
÷
÷
V V
V
> ÷v÷
V ± [ V
V #0""
2
Nӕi 8031 tӟi mӝt öOM chương trình ngoài và 8255.
=>)?$@)4)@)F
>)?$@)5
9AG@
Chương 13 đã nói chi tiӃt vӅ phӕi ghép đӝng cơ bưӟc vӟi 8051, ӣ đây ta
trình bày nӕi ghép đӝng cơ bưӟc tӟi 8255 và lұp trình (xem hình 15.9) .
÷
V
i:4g
WR
V
RD
V
V
6)45 c
:)!L:L
<>
46)84i4:86996:3484: 2
V,
2 3
V,aT 3 a
>)?$@),
chương trình 15.1 trình bày ÷
cách xuҩt các lӋnh và dӳ liӋu tӟi mӝt V
LcD đưӧc nӕi tӟi 8255 theo sơ đӗ
j
hình 15.10. Trong chương trình 15.1 V2
ta phҧi đһt mӝt đӝ trӉ trưӟc mӛi lҫn
Nӕi ghép 8255 vӟi LC±.
p p
. )I)7YTS5X7Y!8e>"&)]"#g8:)O/W
. k^ZV)F'()l8e =)F>TS
.0 =@V ,1@V ,#l)I))m !"#>
32 @A- . K\8 8H8 )k )I) ) 7S U!
:
32 @A
V2 .
n9D)E8 !"#
32% G@ .%!H88B !"#
32 @A- .H!c>)]5o TSg
8:Wv
>> 3 . 7Y:>
>> >N .OQ7U$!H8"Q8Q9;g^+
32 @A- . W8)48:p)4>
>> 3 . 7YSL:>
>> >N .O7U$!H8"Q8Q9
32 @A- .%4I>
>> 3 . 7YSL:>
>> >N .D))48:p^9k
32 @A
. 7YSL:>
>> 3 .O7U$!H8^!
>> >N . 7YSL:>
.TT)48H8)kg*7Y>
32 @Aq
q .-#8D5X7Y!: ;)X
+
>> . Z5X7Y!:>##8D
>> >N .O7U$!H8^!
32 @Aqq .-#8D)Xrr
>> . Z:>##8D
>> >N .O7U$!H8^!
.TT)4)I)5X7Y!"I)
.'_8:c)47Y3:>
3J 32 @AV2 .
C9D)E)
32% G@ . %!H8 8& 8 8e )m 5X 7Y!
)F>
32 @A V2 .
C9D)E)
32 @A .,@1,@,)4$!)4
$!l8H9
32% G@ . jM) 4C8 )I) )m@ 1@
)F>
2V .C4d$!)4)m
2V
32 @A .,@1,@,)4$!)4
$!l8H9
32% G@ . l8 8& 8 8:s )m 5X 7Y!
)F>
.'_8:c)47Y 5X7Y!:>
3J 32 @AV2 .
C9D)E)
32% G@ . %!H8 8& 8 8e )m 5X 7Y!
)F>
32 @A V2 . K\8 ,@ 1,@ , )4 $! )4
$!l8H9
32 @A .jM)4C8)I))m@1@
32% G@ .C4d$!)4)m
2V
2V
32 @A .K\8,@1,@,)4$!
)4$!l8H9
32% G@ . l8 8& 8 8:s )m 5X 7Y!
)F>
p
. )I)7YTS5X7Y!8e>)]^Z5R "#g8:)O/W
. k^ZV)F'()l8e =)F>TS
.V ,@V ,1@V ,lTe8e)I))m !"#>
32 @A- . K\8 8H8 )k )I) ) 7S U!
:
32 @A
V2 .
C9D)E8 !"#
32% G@ .%!H88B !"#
32 @A- .*>)]5oTSg8:W
v
>>
3 . 7Y:>
32 @A- .>Y)F>)4)48:p/W8
>>
3 . 7Y:>
MOV A, # 01H ; Xoá LC±
>>
3 . 7Y:>
32 @A
.>Y5D))48:p^9k
>> 3 . 7Y:>
.TT)48H8)kg*7Y>
32 @Aq
q .-#8D5X7Y!:;)X
+
>>
3 . Z5X7Y!:>##8D
32 @Aqq .-#8D)Xrr
>>
. Z:>##8D
.TT)4)I)5X7Y!"I)
.'_8:c)47Y
3)]#8D)O/W
3J 32 @ .>'!I8:D8
32 @A- . K\8 V 7S ) U! TS4 # *)
8:C8I>
32 @A
V2 .
C9D)E8 !"#
32% G@ .K\8VU!TS4@V U!:
32 @A .,@1,@,*)7Y
32 G@ V2.
C9D)E)
32% @ . ,@ 1, )4 )I) )m TS
32 @V2 .
C9D)E)
NJ 32% G .K*)87Y
> .!L#;)O/W+TS4/8e)::L
P N .O)4Q">^t^S
32 @A- .K\87CV@V 8SU!:
32 @A
V2 .
C9D)E) !"#
32% G@ .%!H88B !"#8e
32 @ .
WI8:D8:k7C8e>
32 @AV2 .
C9D)E)
32% G@ . %!H8 8& 8 8e )I) )m 5X
7Y!)F>
32 @A V2 .
C9D)E)
32 @A .K\8,@1,@,)4$!
8H97s)4
32% G@ .jM)4C8@1@)F>
2V .C4d:d$!)F)m
2V
32 @A .K\8,@1,@,)4$!
)4$!l8H9
32% G@ . l8 8& 8 ` )m 5X 7Y!
>
.'_8:c)45X7Y!ge
^Z5R)O/W
3J 32 @ .>'!I8:D8
32 @A- . K\8 V 7S ) U! TS4 # *)
8:C8I>
32 @A
V2 .
C9D)E8 !"#
32% G@ .K\8VU!TS4@V U!:
32 @A .,@1,@,*)7Y
32 G@ V2.
C9D)E)
32% @ . ,@ 1, )4 )I) )m TS
32 @V2 .
C9D)E)
NJ 32% G .K*)87Y
> .!L#;)O/W+TS4/8e)::L
P N .O)4Q">^t^S
32 @A- .K\87CV@V 8SU!:
32 @A
V2 .
C9D)E) !"#
32% G@ .%!H88B !"#8e
32 @ .
WI8:D8:k7C 8e>
32 @AV2 .
C9D)E)
32% G@ . %!H8 8& 8 8e )I) )m 5X
7Y!)F>
32 @A V2 .
C9D)E)
32 @A .K\8,@1,@,)4$!
8H97s)4
32% G@ .jM)4C8@1@) F>
2V .C4d:d$!)F)m
2V
32 @A .K\8,@1,@,)4$!
)4$!l8H9
32% G@ . l8 8& 8 ` )m 5X 7Y!
>
"=>)?
,@)
Các bӝ A±C đã đưӧc trình bày ӣ chương 12. ±ưӟi đây mӝt chương trình
chӍ mӝt bӝ A±C đưӧc nӕi tӟi 8255 theo sơ đӗ cho trên hình 115.11.
Cho đӃn đây ta đã đưӧc trao đәi chӃ đӝ vào/ ra đơn giҧn cӫa 8255 và trình
bày nhiӅu ví dө vӅ nó. Ta xét tiӃp các chӃ đӝ khác.
÷
RD
" 9b
>j
÷
WR
>j0
V
;a+ j
;=+ V2
:6i1
V
6)45
V 0
:)!L:L CS
0 x x x Bit Select S/R
48<^65 , 8, 8 68,
3456 66:77L, , 8, 8 6^68,
Tӯ điӅu khiӇn cӫa chӃ đӝ BSö.
:&;-
Hãy lұp trình PCA cӫa 8255 ӣ chӃ đӝ BSö thì bit ±7 cӫa tӯ điӅu khiӇn
phҧi ӣ mӭc thҩp. ĐӇ PC4 ӣ mӭc cao, ta cҫn mӝt tӯ điӅu khiӇn là "0xxx1001" và
ӣ mӭc thҩp ta cҫn "0xxx1000". Các bít đưӧc đánh dҩu x là ta không cҫn quan
tâm và thưӡng chúng đưӧc đһt vӅ 0.
÷
Wö Wö
öD öD
6)45 V
:)!L:L
CS
-^"67^
V
0
1 0 1 0 1/0 1 0 X
V4:8?8
V OBFA
V
AcA
V,09!8@,2!899!8
S
V4:83456
V4:83456
V4:82!89!8
V4:8 2!89!8
V4:8 3456
V4:8 2!89!8
0123456
0
V
0
V OBFB
-^"67^
V AcB
V4:8 ?8
88!^4:5=34562!89!8
0
0
0
0
2 b
2 b
012
012
V
Wö V
V4:82!89!8
V 0
^)48:47765/LV
s g456
V
0
^)48:47765/LV
g456
# BiӇu đӗ đҫu ra cӫa 8255 ӣ chӃ đӝ 1.
Wö
OBF
0
Ac
2!89!8
O<P+ IQ$RGS
Đҫu cáp cӫa máy in Centronics.
6 Các chân tín hiӋu cӫa máy in Centronics.