Vous êtes sur la page 1sur 10

GIAO TIEP SONG SONG DUNG VI MACH

8255
I. GII THIEU VE VI MACH 8255A:

e vi x ly giao tiep vi nhng thiet b ben ngoai, ngi ta thng dung vi


mach giao tiep 8255A, vi mach nay co kha nang giao tiep rat rong, va co the
xuat d lieu, va co the nhan d lieu tuy theo ngi lap trnh ieu khien bang
cach thay oi thong so cua thanh ghi ieu khien.
II. S O CHAN, S O LOGIC, CHC NANG CAC CHAN CUA VI MACH 8255A.

S o chan va s o logic cua vi mach 8255A c the hien qua hnh ve:
PA3
1
40
PA2
PA1
PA0
RD\
CS\
GND
A1
A0
8255A
PC7
PC6
PC5
PC4
PC0
PC1
PC2
PC3
PB0
PB1
20 chan va21s o
Hnh PB2
6.1 : S o

PA4
PA5
PA6
PA7
WR\
D0 D7
RESET
8255A
D0
D1
D2
D3
RD\
D4
WR\
D5
D6
RESET
D7
Vcc
A0
PB7
A1
PB6
PB5
CS\
PB4
PB3 cua vi mach 8255A
logic

PA0 PA7

PB0 PB7

PC0 PC7

Trong o:
Chan 1 4, 37 40 (PA0 PA7): la cac ng xuat nhap co ten la cong A.
Chan 18 25 (PB0 PB7): la cac ng nhap xuat co ten cong B.
Chan 10 13, 14 17 (PB0 PB7): la cac ng nhap xuat co ten cong C.
Chan 27 34 (D0 D7): la cac ng d lieu (data) hoat ong hai chieu, dan tn
hieu ieu khien t vi x ly ra cac thiet b ben ngoai ong thi nhan cac d lieu t cac thiet b
ieu khien ben ngoai vao vi x ly.
Chan 35 (Reset input): ngo vao xoa, chan reset phai c noi vi tn hieu reset
out cua vi x ly e khong lam anh hng en mach ieu khien. Khi reset, cac cong cua 8255A
la cac ngo vao, ong thi tat ca cac d lieu tren thanh ghi ben trong 8255A eu b xoa, 8255A
tr ve trang thai ban au san sang lam viec.
Chan 6 (CS\): tn hieu ngo vao chip select (CS\) c ieu khien bi vi x ly,

dung e la chon 8255A lam viec khi vi x ly giao tiep vi nhieu thiet b.
Chan 5 (RD\): ngo vao oc d lieu (Read Input).
Chan 36 (WR\) : ngo vao ghi d lieu (Write Input).
Chan 8,9 (A1, A0): ngo vao a ch (Address Input), dung nhan a ch vao e la
chon thanh ghi va cac cong.
Bang a ch la chon thanh ghi va cac cong:
A1

A0

Cong va thanh ghi

Cong A

Cong B

Cong C

Thanh ghi ieu khien

Chan 26 (Vcc) : nguon 5 VDC.


Chan 7 (GND) : GND 0 VDC.
III. CAU TRUC BEN TRONG VA HOAT ONG CUA VI MACH 8255A.
1. S o khoi cau truc ben trong cua vi mach 8255A.

Port A

PA7 PA0

ieu khien nhom A


Port C(4 bit cao)

PC7 PC4

em bus d lieu

D7 D0

Nhom A
Port C(4 bit thap)

PC3 PC0

ieu khien nhom B


RD\
Logic ieu khien ghi/oc
WR\
CS\
A0
A1

Port B

PB7 PC0

Nhom B

Hnh 6.2: S o khoi cau truc ben trong cua 8255A


2. Hoat ong cua vi mach 8255A:

T s o khoi cau truc ben trong cua vi mach 8255A ta thay cac cong cua

8255A c chia thanh 2 nhom:


Nhom A gom cong A va 4 bit cao cua cong C.
Nhom B gom cong B va 4 bit thap cua cong C.
Cau hnh lam viec cua 2 nhom se do noi dung cua thanh ghi ieu khien quyet nh.
Vi mach 8255 giao tiep vi vi x ly thong qua cac ng sau :
- ng d lieu: gom 8 ng d lieu (D0 - D7). Ma lenh, cac d lieu eu c truyen
i tren ng nay.
- ng a ch: gom 2 ng (A0 A1) dung e la chon cong hoac thanh ghi ieu
khien nh a trnh bay phan trc.
- ng ieu khien: gom cac ng RD\, WR\, CS\, Reset dung e ieu khien viec
hoat ong cua 8255A.
e s dung cac cong lam cong cu giao tiep, ngi s dung phai gi t ieu khien ra
thanh ghi ieu khien e 8255A nh cau hnh lam viec cho cac cong ung nh yeu cau cua
ngi lap trnh.
3. T ieu khien:

T ieu khien la d lieu c gi ti thanh ghi ieu khien. Gia tr cua t


ieu khien se xac nh cau hnh lam viec cho cac cong cua 8255A, o la viec la
chon chc nang nhap hay xuat cua cac cong.
a. Cau truc cua t ieu khien:
Do cac cong cua 8255A c chia lam hai nhom nen t ieu khien cung c chia lam
hai nhom ieu khien tng ng.
Cac bit D3, D4, D5, D6 dung e xac nh cau hnh cho nhom A:
- Bit D3 dung e thiet lap 4 bit cao cua cong C.
D3 = 0 cong C la cong xuat d lieu.
D3 = 1 cong C la cong nhap d lieu.
- Bit D4 dung e thiet lap cong A.
D4 = 0 cong A la cong xuat d lieu.
D4 = 1 cong A la cong nhap d lieu.
- Bit D5 va D6 dung thiep lap mode ieu khien cua nhom A.
D6D5 = 00 : nhom A hoat ong mode 0.
D6D5 = 01 : nhom A hoat ong mode 1.
D6D5 = 1x : nhom A hoat ong mode 2.
Cac bit D0, D1, D2 dung e xac nh cau hnh cho nhom B.
- Bit D0 dung e thiet lap 4 bit thap cua cong C.
D0 = 0 cong C la cong xuat d lieu.
D0 = 1 cong C la cong nhap d lieu.
- Bit D1 dung e thiet lap cong B.

D1 = 0 cong B la cong xuat d lieu.


D1 = 1 cong B la cong nhap d lieu.
- Bit D2 dung thiep lap mode ieu khien cua nhom B.
D2 = 0 : nhom B hoat ong mode 0.
D2 = 1 : nhom B hoat ong mode 1.

Nhom B

Nhom A

Hnh 6.3 : Cau truc t ieu khien cua vi mach 8255A

at trang thai c.1 = Active

IBFA
INTRA
STBA\
I/O b. C che hoat ong cac cong cua 8255A cac trang thai.
* Nhom A va Nhom B cau hnh mode 0.
Khi c nh cau hnh nay, cac cong cua hai nhom hoat ong xuat hoac nhap d lieu
oc lap vi nhau.
T ieu khien:

INTEA

PC3

D4

D3

D1

D0

Vi D0, D1. D3, D4 tuy chon theo yeu cau cua ngi s dung.

PA0PA7

PC5

* Nhom A c cau hnh mode 1.

mode 1, cac cong lam viec co chot (Strobed I/O), thiet b giao tiep muon
8255A nhan d lieu th thiet b o phai tao ra mot tn hieu yeu cau 8255A nhan
d lieu va ngc lai, 8255A muon gi d lieu cho mot thiet b khac th no phai
gi 1 tn hieu yeu cau thiet b o nhan d lieu, tn hieu o goi la tn hieu chot.
+ Khi cong A c cau hnh la cong nhap d lieu, chc nang cac ng tn hieu c
trnh bay nh hnh ve:

PC4
PC6,7

T ieu khien :
1

D3

RD\

Hnh 6.4 : Chc nang cac ng tn hieu khi cong A la cong nhap d lieu
Cac ng tn hieu cua cong C tr thanh cac ng ieu khien cua cong A.
Trong o :
Bit INTEA (Interrupt Enable) c thiet lap mc logic di s ieu khien cua phan
mem dung cau truc Set/Reset cua 8255A.
Bit PC4 tr thanh bit STBA (Strobed Input, tac ong mc thap), c dung e chot cac
d lieu cac ngo vao PA0 PA7 vao mach chot ben trong.
Bit PC5 tr thanh bit IBFA (Input Buffer Full, tac ong mc cao), dung e bao cho ben
ngoai biet d lieu a c chot ben trong.
Bit PC3 tr thanh bit INTRA (Interrupt Request, tac ong mc cao), bit nay co mc logic

IBFB
ACKA\
INTRB
INTRA
I/O
STBB\
OBFA\
1 khi bit STRA = 1, bit IBFA = 1 va bit INTEA = 1. Thong thng bit nay dung e tac ong vao
ngo vao ngat cua vi x ly e bao cho vi x ly biet : d lieu mi a xuat hien ngo vao.
Cac bit PC6, PC7 cua cong C la cac bit xuat/ nhap bnh thng tuy thuoc vao t ieu
khien trong thanh ghi ieu khien. Con cong B c ieu khien bang cac bit D 0 D2 trong thanh
ghi ieu khien (neu cong B hoat ong mode 1 th cac bit PC0 PC2 la cac bit ieu khien).

INTEA
INTEB

+ Cong A c cau hnh la cong xuat d lieu.


Chc nang cac ng tn hieu c trnh bay hnh ve:
T ieu khien :
PB0PB7
PA0PA7

D3

PC1
PC6
PC0
PC3
PC4,5
PC2
PC7

Hnh 6.5 : Chc nang cac ng tn hieu khi cong A la cong xuat d lieu
Bit PC7 tr thanh bit OBFA (Output Buffer Full, tac ong mc thap), khi co d lieu t vi
x ly gi ra cong A, tn hieu OBF se yeu cau thiet b ben ngoai nhan d lieu.

RD\
WR\

Bit PC6 tr thanh bit ACKA (Acknowledge Input, tac ong mc thap), thiet b nhan d
lieu dung tn hieu nay e bao cho 8255A biet d lieu a c nhan va san sang nhan d lieu
mi.
Bit PC3 tr thanh bit INTRA (Interrupt Request, tac ong mc cao), bit nay co mc logic
bang 1 khi bit OBFA = 1, ACKA = 1 va bit INTEA = 1. Tn hieu INTRA tac ong en ngo vao
ngat cua vi x ly e bao cho vi x ly biet thiet b ben ngoai a nhan d lieu t cong A.
Cac bit PC4, PC5 van la bit nhap/ xuat d lieu bnh thng tuy thuoc vao t ieu khien.
Cac bit D0 D2 trong thanh ghi ieu khien dung e thiet lap cau hnh cho cong B.
* Nhom B c cau hnh mode 1.
+ Cong B c cau hnh la cong nhap d lieu.
Chc nang cac ng tn hieu c trnh bay nh hnh ve:
T ieu khien :
1

ACKB\
INTRB
OBFB\

Hnh 6.6 : Chc nang cac ng tn hieu khi cong B la cong nhap d lieu

INTEB

Chc nang cua cac bit ieu khien giong nh khi nhom A hoat ong mode 1 va cong A
c cau hnh la cong nhap d lieu.
+ Cong B c cau hnh la cong xuat d lieu.
Chc nang cac ng tn hieu c trnh bay nh hnh ve :
PB0PB7

T ieu khien:
1

PC2
PC0

PC1

Hnh 6.7 : Chc nang cac ng tn hieu khi cong B la cong xuat d lieu
Chc nang cua cac t ieu khien giong nh khi nhom A hoat ong mode 1 va cong A
c cau hnh la cong xuat d lieu.
* Nhom A c cau hnh mode 2.

WR\

Mode 2 la kieu hoat ong strobed bi-directional IO : co hai chc nang nhap
xuat d lieu.
T ieu khien khi nhom A c cau hnh mode 2 va chc nang cua cac ng tn
hieu c trnh bay hnh ve:

INTEA

T ieu khien :
INTE1

D3

PC6
PC7

INTE2

PC3
PC4
PC2,1,0

I/O

PC5

STBA\
IBFA

RD\

Hnh 6.8: Chc nang cac ng tn hieu khi nhom A hoat ong mode 2
Cac ng tn hieu cua cong C tr thanh cac ng ieu khien cua cong A.
Bit PC7 tr thanh bit OBFA, PC6 tr thanh bit ACKA, PC4 tr thanh bit STBA, PC5 tr
thanh bit IBFA va bit PC3 tr thanh bit INTRA, chc nang cua cac bit ieu khien giong nh
mode 1, ch khac tn hieu INTRA = 1 khi OBFA = 1 va INTE1 = 1 hoac IBFA = 1 va INTE2 = 1.
Cac bit PC0 PC2 la cac bit nhap xuat d lieu bnh thng tuy thuoc vao t ieu khien
trong thanh ghi ieu khien.
Mot chu y can thiet la khi nhom A c cau hnh mode 2 th nhom B ch c cau
hnh mode 0.
IV. GIAO TIEP GIA VI X LY VI 8255A:
Vi mach 8255A co the giao tiep vi vi x ly theo 2 kieu: kieu nhap/xuat (kieu I/O) va
kieu bo nh.
Khi vi x ly giao tiep vi 8255A theo kieu I/O no ch dung c 8 ng a ch t A 0
PA0PA7
A7 ma thoi con khi giao tiep kieu bo nh, no dung c ca 16 ng a ch, v vay dung lng
giao tiep kieu I/O thap hn dung lng giao tiep kieu bo nh.
1. Giao tiep kieu I/O.
Khi thiet ke vi x ly giao tiep vi 8255A theo kieu I/O th d lieu se c truy xuat
bang 2 lenh : IN addr-port va OUT addr-port. D lieu giao tiep luon cha trong thanh ghi A.
OBFA\
a ch cong (addr-port) co o dai la 8 bit.
Cung giong nh bo nh, vi x ly co the giao tiep vi nhieu vi mach 8255, vi 8 nACKA\
g
a ch th co tat ca 256 a ch, ma moi vi mach chiem 4 a ch (3 cong va thanh ghi ieu
khien) nen so vi mach 8255 toi a co the giao tiep cua vi x ly la 256/4 = 64 vi mach.

A2

-1ng e la chon
WR\
Khi ket noi gi
a vi x ly viTO
vi ma
h 8255A then
nCS\
g acua
ch A8255A
0 va A1 du
DECODER2
4 cLINE
A3

en CS\ cua 8255A -2


en CS\ cua 8255A -3
en CS\ cua 8255A -4

cac cong va thanh ghi ieu khien, con cac ng a ch con lai t A 2 A7 dung e la chon vi
mach hoat ong, thong thng cac ng a ch nay c a vao vi mach giai ma roi cac ngo
ra cua vi mach giai ma se a en CS\ cua cac vi mach 8255A.
Mot v du khi thiet ke vi x ly giao tiep vi 4 vi mach 8255A:
S o ket noi nh hnh ve : (vi mach 74139).

A2
A3

DECODER2 TO 4 LINE

en CS\ cua 8255A -1


en CS\ cua 8255A -2
en CS\ cua 8255A -3
en CS\ cua 8255A -4

Hnh 6.9: S o ket noi vi x ly vi vi mach 8255A


Trong o, ng A0 va A1 c noi vi 8255A nh a trnh bay tren, ng A 2, A3
c a vao vi mach giai ma 2 ng thanh 4 ng e la chon vi mach 8255A.
T o, ta co bang a ch cua cac vi mach 8255A nh sau :

IC

A7

A6

A5

A4

A3

A2

A1

A0

Hex

8255A-1

0
0

0
0

0
0

0
0

0
0

0
0

0
1

0
1

00
03

8255A-2

0
0

0
0

0
0

0
0

0
0

1
1

0
1

0
1

04
07

8255A-3

0
0

0
0

0
0

0
0

1
1

0
0

0
1

0
1

08
0B

8255A-4

0
0

0
0

0
0

0
0

1
1

1
1

0
1

0
1

0C
0F

2. Giao tiep kieu bo nh.


Khi thiet ke 8255A giao tiep vi vi x ly theo kieu bo nh th chc nang cua 8255A
khong thay oi, ch thay oi kieu truy xuat. Vi kieu I/O th a ch cua cac cong va thanh ghi
ieu khien la 8 bit th kieu bo nh, a ch cua cac cong va thanh ghi ieu khien la 16 bit, khi
o cach ket noi cung tng t nh ket noi vi x ly vi bo nh thong thng, va moi vi mach
8255A cung c coi nh la bo nh vi 4 o nh: 3 cong va thanh ghi ieu khien, truy xuat d
lieu bang cach dung cac lenh truy xuat d lieu cua bo nh.
Cach ket noi tng t nh khi vi x ly ket noi vi bo nh nen ay khong can trnh bay
lai.

Vous aimerez peut-être aussi