bµi 6
Vµo ra vµ chip
®iÒu khiÓn vµo ra 8255
1. Giíi thiÖu
2. Chip ®iÒu khiÓn vµo/ra 8255
3. C¸c chÕ ®é lµm viÖc cña chip
®iÒu khiÓn vµo/ra 8255
4. VÝ dô c¸c chÕ ®é lµm viÖc cña
8255
5. C¸c lÖnh vµo/ra cña
8086/8088
6. Nèi ghÐp 8255 ë m¸y tÝnh XT
7. Minh häa göi d÷ liÖu ra m¸y in
HÖ thèng hç trî vµo/ra chñ yÕu
gåm:
Chip ®iÒu khiÓn ng¾t 8259
Chip ®iÒu khiÓn vµo ra 8255
Chip ®Þnh thêi 8253
1. Giíi thiÖu
BUS
Sö dông bé ®Öm 74LS373 lµm m¹ch ra
G
A0
Bus
®Þa chØ
hÖ thèng
A7
74LS373
H×nh 4.1. Thùc hiÖn lÖnh "OUT 99H, AL"
D
D0
§Õn
ngo¹i vi
D7
D0
Bus d÷ liÖu
HÖ thèng
(AL)
D7
IOW
OC
Ví dụ:
Trình bày chức năng mạch ở hình
4.1
Trình bày các bước thực hiện tại 4
chu kỳ T
là khoảng thời gian cần thiết để
các tín hiệu truyền đến được nơi nhận.
4. Trong khoảng thời gian T
4
, nội dung
của AL (2F) được chốt ở 74LS373 khi
IOW chuyển từ thấp lên cao A0
Bus
®Þa chØ
hÖ thèng
A7
74LS244
H×nh 4.3. M¹ch thùc hiÖn lÖnh "IN AL,
9FH"
Q0
§Õn D0-
D7 bus d÷
liÖu
hÖ thèng
Q7
D0
T bus ngo iừ à
D7
IOR
OC OC
* Dïng bé ®Öm d÷ liÖu 74LS244 lµm m¹ch vµo
vào cần được cách ly với bus qua
bộ đệm 3 trạng thái.
Mọi thiết bị (bộ nhớ, ngoại vi) nối
tới bus dữ liệu hệ thống cần có
mạch chốt hoặc bộ đệm 3 trạng
thái.
Cæng
B
Cæng
A
Cæng
CL
Cæng
CU
Bé ®Öm d÷
liÖu
§iÒu khiÓn
§äc/Ghi
§iÒu khiÓn nhãm
A
§iÒu khiÓn nhãm
B
PB0-PB7 PC0-PC3 PC4-PC7
PA0-PA7
S¬ ®å khèi chip 8255
2. Chip ®iÒu khiÓn vµo ra
8255
Vcc
PB7
PB6
PB5
PB4
PB3
1
40
2
39
3
38
4
37
5
36
6
35
7
34
8
33
9
32
10
31
11
30
12
29
Chế độ 0 (chế độ vào/ra đơn
giản)
Cổng PA, PB, CL và CU được lập
trình thành cổng vào hoặc cổng
ra. Khi đó tất cả các bit đều
hoặc là vào hoặc là ra và không
điều khiển riêng cho từng bit.
Chế độ 1
Cổng PA và PB làm cổng vào
hoặc ra với khả năng bắt tay
qua các bit của cổng PC.
Chế độ 1 vào ra với khả năng bắt
tay của 8255
Một trong những điểm mạnh nhất
của 8255 là khả năng quản lý các
tín hiệu bắt tay.
Bắt tay là quá trình trao đổi
thông tin qua lại giữa hai thiết bị
thông minh.
Một ví dụ về thiết bị sử dụng tín
hiệu bắt tay là máy in.
1. Byte dữ liệu được chuyển tới bus
dữ liệu của máy in.
0= Output
Port B
1= Input
0= Output
Chän chÕ ®é
0=ChÕ ®é 0
1= ChÕ ®é 1
Nhãm A
1=ChÕ ®é I/O
0=ChÕ ®é BSR
Chän chÕ ®é
00=ChÕ ®é 0
01= ChÕ ®é1
1X=ChÕ ®é 2
Port A
1= Input
0= Output
Port CU
1= Input
0= Output
Thanh ghi tõ ®iÒu khiÓn
§Þa chØ cæng chip ®iÒu khiÓn vµo ra
8255
CS A1 A0 Chän
0 0 0 Cæng A
0 0 1 Cæng B
0 1 0 Cæng C
0 1 1 Thanh ghi ®iÒu
khiÓn
là cổng vào, cổng B là cổng ra và tất
cả các bit của cổng C là ra.
a) Tìm các địa chỉ cổng gán cho A, B,
C và thanh ghi điều khiển.
b) Hãy tìm từ điều khiển cho cấu hình
trên.
c) Hãy lập trình các cổng để dữ liệu
vào cổng A được gửi tới cổng B và C.
H×nh 12.2. Tõ ®iÒu khiÓn 8255 (chÕ ®é I/O)
D7 D6 D5 D4 D3 D2
D1 D0
Nhãm B
Port CL
1= Input
0= Output
Port B
1= Input
0= Output
Chän chÕ ®é
0=ChÕ ®é 0
1= ChÕ ®é 1
Nhãm A
1=ChÕ ®é I/O
0=ChÕ ®é BSR
Chän chÕ ®é
00=ChÕ ®é 0
01= ChÕ ®é1
1X=ChÕ ®é 2
A1
A
B
CL
CU
D0
D7
A0
A1
IOR
IOW
RD
CS
WR
* VÝ dô 2: ChÕ ®é Vµo ra ®¬n gi¶n
Cæng PCL vµ PCU kh¸c chiÒu
Ví dụ:
Chip 8255 (hình 4.7) được định cấu
hình: PA, PCU - cổng ra, PB, PCL
cổng vào.
a) Tìm địa chỉ các cổng PA, PB, PC
và TGĐK (thanh ghi điều khiển).
b) Tìm từ điều khiển cho cấu hình
trên.
c) Lập trình nhận dữ liệu nhận PA
và gửi ra PB, nhận PCL gửi PCU.