Professional Documents
Culture Documents
BOÄ GIAÙO DUÏC & ÑAØO TAÏO COÄNG HOØA XAÕ HOÄI CHUÛ
NGHÓA VIEÄT NAM
ÑAÏI HOÏC QUOÁC GIA TP.HCM ÑOÄC LAÄP- TÖÏ DO- HAÏNH PHUÙC
TRÖÔØNG ÑAÏI HOÏC SÖ PHAÏM KYÕ THUAÄT
KHOA ÑIEÄN
BOÄ MOÂN ÑIEÄN TÖÛ
Giaù
o vieân duyeät
Ñoà aùn toát nghieäp
Chöông 1
Ñoà aùn toát nghieäp
CHÖÔNG 2
Ñoà aùn toát nghieäp
2.1 DAØN YÙ NGHIEÂN CÖÙU
• Giôùi thieäu toång quaùt veà tay maùy
• Thieát keá maïch ñieàu khieån caùnh tay maùy
• Xaây döïng phaàn meàm
• Thi coâng
• Höôùng daãn thao taùc
2.2 ÑOÁI TÖÔÏNG NGHIEÂN CÖÙU
Chuû yeáu laø moâ hình caùnh tay maùy ñöôïc gia coâng
2.3 PHÖÔNG PHAÙP VAØ PHÖÔNG TIEÄN NGHIEÂN CÖÙU
Phöông Phaùp
Tham khaûo taøi lieäu: chuû yeáu laø caùc taøi lieäu veà kyõ thuaät
soá, kyõ thuaät vi xöû lí, ñieän töû cô baûn
Thöïc nghieäm: vieát chöông trình thöû nghieäm treân KIT vi xöû lyù
8085
Phöông Tieän
• Ngoøai KIT vi xöû lí 8085 vaø moâ hìmh caùnh tay maùy, nhoùm
coøn thöïc hieän deà taøi coøn thieát keá theâm caùc maïch phuï ñeå
thöû nghieäm caùc chöông trình lieân quan ñeán 8255 vaø 8279
2.4 THÔØI GIAN NGHIEÂN CÖÙU
Nhoùm thöïc nghieân cöùu ñeà taøi töø ngaøy ñaêng kyù ñeà taøi,
coâng vieäc ñöôïc phaân boá cho 6 tuaàn laøm vieäc nhö sau:
Tuaàn 1 : Laäp ñeà cöông toång quaùt
Tuaàn 2 : Thu thaäp taøi lieäu
Tuaàn 3 : Laäp ñeà cöông chi tieát
Tuaàn 4,5 : Khai trieån ñeà cöông vaø ñaùnh maùy
Tuaàn 6 : Söûa chöõa vaø in aán
Ñoà aùn toát nghieäp
CHÖÔNG 3
Ñoà aùn toát nghieäp
Ngöôøi vaän
haønh
Lieânheä
Thieát bò lieân ngöôïc
laïc vôùi ngöôøi
vaän haønh
Lieân heä
Heä thoáng ñeàu nguôïc
khieån
Moâi
tröôøng
Beân
Hình 3.1 : Sô ñoà caáu truùc vaø chöùc naêng cuûa robot
Trong sô ñoà treân caùc ñöôøng chæ thò moái quan heä
thoâng tin thuaän , thoâng tin chæ huy thöïc hieän nhieäm vuï cho
robot. Caùc ñöôøng chæ moái lieân heä thoâng tin ngöôïc,
thoâng tin phaûn hoài veà quaù trình laøm vieäc cuûa robot.
Chöùc naêng cuûa boä phaän giao tieáp laø lieân laïc vôùi ngöôøi
vaän haønh laø thöïc hieän quaù trình “Daïy hoïc “ cho robot, nhôø ñoù
Robot bieát ñöôïc nhieäm vuï phaûi thöïc hieän.
Chöùc naêng cuûa heä thoáng ñieàu khieån laø thöïc hieän vieäc
taùi hieän laïi caùc haønh ñoäng (nhieäm vuï) ñaõ ñöôïc ‘hoïc’.
Boä phaän chaáp haønh giuùp cho Robot coù ñuû “söùc”, töùc
chòu ñöôïc taûi troïng maø robot phaûi chòu trong quaù trình laøm vieäc
, boä phaän naøy bao goàm caùc boä phaän, phaàn 1 - boä phaän
truyeàn chuyeån ñoäng - phaàn taïo caùc khaû naêng chuyeån ñoäng
cho robot vaø phaàn 2 - boä phaän chòu löïc - phaàn chòu löïc cuûa
Robot .
Boä phaän caûm bieán tín hieäu laøm nhieäm vuï nhaän bieát, ño
löôøng vaø bieán ñoåi thoâng tin caùc loaïi tín hieäu nhö: caùc noäi tín
trong baûn thaân Robot - ñoù laø caùc tín hieäu veà vò trí, vaän toác,
gia toác trong töøng thaønh phaàn cuûa boä phaän chaáp haønh caùc
ngoaïi tín hieäu - laø caùc tín hieäu töø moâi tröôøng beân ngoaøi coù
aûnh höôûng tôùi hoaït ñoäng cuûa Robot .
Vôùi caáu truùc vaø chöùc naêng nhö treân Robot phaàn naøo
mang tính “ngöôøi“ coøn phaàn maùy chính laø traïng thaùi vaät lyù
cuûa caáu truùc.
Ñoà aùn toát nghieäp
Vôùi IR, tính chaát ngöôøi vaø ”maùy” cuõng ñöôïc theå hieän ñaày
ñuû nhö treân, duy chæ hình thöùc mang daùng daáp cuûa tay
“Ngöôøi”.
3.3 CAÁU TRUÙC TOÅÀNG QUAÙT CUÛA IR
Chuùng ta haõy xem xeùt caáu truùc cuûa moät tay maùy coâng
nghieäp coù sô ñoà ôû hình 3.2.
Tay maùy treân hình 3.2 coù 6 baäc töï do vôùi 6 truïc chuyeån
ñoäng nhö sau:
1. Chuyeån ñoäng queùt cuûa tay maùy (chuyeån ñoäng quay phaûi
hay quay traùi cuûa thaân ngöôøi);
2. Chuyeån ñoäng leân hay xuoáng theo chieàu thaúng ñöùng (chuyeãn
ñoäng cuûa khôùp baû vai)
3. Chuyeån ñoäng duoåi ra hay co vaøo cuûa caùnh tay (chuyeån
ñoäng cuûa khôùp khuyûu tay)
4. Chuyeån ñoäng laät leân xuoáng cuûa baøn tay so vôùi coå tay;
5. Chuyeån ñoäng quay ngöôïc hay thuaän chieàu kim ñoàng hoà cuûa
baøn tay so vôùi coå tay.
So vôùi chuyeån ñoäng cuûa tay ngöôøi (khoâng tính ñeán chuyeån
ñoäng cuûa caùc ngoùn tay) coù 10 baäc töï do (10 khaû naêng
chuyeån ñoäng ñoäc laäp) tay maùy treân laø loaïi coù ñuû khaû naêng
naém baét moät vaät baát kyø trong khoâng gian.
Tay maùy coâng nghieäp thöôøng coù caùc boä phaän chính sau:
- Heä thoáng ñieàu khieån;
- Heä thoáng chaáp haønh : Bao goàm Caùc nguoàn ñoäng löïc, heä
thoáng truyeàn ñoäng, heä thoáng chòu löïc;
- Baøn keïp :
Baøn keïp laø boä phaän coâng taùc cuoái cuøng cuûa tay maùy
,nôi caàm naém caùc thieát bò coäng ngheä hay vaät caàn duy
chuyeån, boä phaän chaáp haønh _ phaàn keát caáu cô khí cuûa tay
maùy bao goàm caùc loaïi ñoäng cô nhö : caùc ñoäng cô thuûy löïc, khí
neùn, cô caáu servo ñieän töû, ñoäng cô böôùc moãi chuyeån ñoäng
cuûa IR thöôøng coù moät ñoäng cô rieâng vaø caùc thanh chòu löïc.
Heä thoáng ñieàu khieån - thöôøng laø loaïi ñôn giaûn laøm vieäc coù
chu kyø vaän haønh theo nguyeân lyù cuûa heä thoáng ñieàu khieån
hôû hoaëc kín.
Ñoà aùn toát nghieäp
Hình 3.2 : Moâ hình heä thoáng chaáp haønh tay maùy
coâng nghieäp
Ñoà aùn toát nghieäp
Phaân loaïi tay maùy theo caáu truùc sô ñoà ñoäng
Thoâng thöôøng caáu truùc chaáp haønh cuûa tay maùy coâng
nghieäp ñöôïc moâ hình hoùa trong daïng chuoåi ñoäng vôùi caùc khaâu
vaø khôùp nhö trong nguyeân lyù maùy vôùi caùc giaû thuyeát cô baûn
nhö sau:
- Chæ duøng caùc khôùp ñoäng loaïi 5 (khôùp quay, khôùp tònh
tieán, khôùp vít)
- Truïc quay höôùng tònh tieán cuûa caùc khôùp thì song song hay
vuoâng goùc vôùi nhau.
- Chuoåi ñoäng laø chuoåi ñoäng hôû, ñôn giaûn.
Döôùi ñaây laø chuoåi ñoäng cuûa moät tay maùy coâng
nghieäp toång quaùt coù 6 baäc töï do, caùc khôùp A, B, F laø caùc
khôùp toång quaùt coù nghæa laø chuùng coù theå laø khôùp quay,
cuõng coù theå laø khôùp tònh tieán, caùc khôùp D, E, K chæ laø
nhöõng khôùp quay. Caùc khaâu ñöôïc ñaùnh soá baét ñaàu töø khaâu 0
_ giaù coá ñònh , tieáp ñeán laø caùc khaâu 1, 2, …, n _ caùc khaâu
ñoäng _ khaâu toång quaùt kyù hieäu laø khaâu i, (i=0,1,2,…,n), khaâu,
khaâu n cuoái cuøng laø khaâu mang baøn keïp cuûa tay maùy.
Töông töï nhö tay ngöôøi ñeå baøn keïp (baøn tay) laøm vieäc
ñöôïc caàn coù ba loaïi chuyeån ñoäng, töông öùng vôùi caùc chuyeån
ñoäng naøy laø ba daïng caáu truùc cuûa tay maùy nhö sau:
Caáu truùc chuyeån ñoäng toaøn boä (Chaân ngöôøi) caáu
truùc naøy thöïc hieän chuyeån ñoäng ñem toaøn boä tay maùy (tay
ngöôøi) ñeán vò trí laøm vieäc . Caáu truùc naøy heát söùc ña daïng vaø
thoâng thöôøng neáu khoâng phaûi laø tay maùy hoaït ñoäng trong heä
thoáng maø chuyeån ñoäng naøy caàn coù söï kieåm soaùt ngöôøi ta
thöôøng coi tay maùy laø ñöùng yeân khaâu 0 goïi giaù coá ñònh cuûa
tay maùy.
Caáu truùc xaùc ñònh haøm keïp bao goàm caùc khôùp AB
vaø F caùc khaâu 1, 2 vaø 3, chuyeån ñoäng cuûa caáu truùc naøy
nhaèm ñem theo baøn keïp tôùi vò trí laøm vieäc .Do giaû thieát veà
loaïi khôùp ñoäng duøng trong cheá taïo maùy thoâng thöôøng ta coù
nhöõng phoái hôïp sau ñaây cuûa caùc khôùp vaø töø ñoù taïo neân
caùc caáu truùc xaùc ñònh vò trí cuûa baøn keïp trong caùc khoâng gian
vò trí laøm vieäc khaùc nhau cuûa baøn keïp .
Phoái hôïp TTT nghóa laø 3 khôùp ñeàu laø khôùp tònh tieán vaø
moät khôùp quay. Ñaây laø caáu truùc hoaït ñoäng trong heä toïa ñoä
ñeà caùc so vôùi caùc toïa ñoä S0 vì ñieåm M naèm treân khaâu 3 ñöôïc
xaùc ñònh bôûi ba chuyeån ñoäng tònh tieán vaø moät chuyeån ñoäng
quay (töùc laø hai toïa ñoä daøi)
Phoái hôïp TRT, RTT hayTTR, nghóa laø moät khôùp tònh tieán hai
khôùp quay (caùc caáu truùc 2,3 vaø 4). Ñaây laø laø caáu truùc hoaït
ñoäng trong heä toïa ñoä truï so vôùi ñieåm S0 vì ñeå M treân khaâu 3
ñöôïc xaùc ñònh bôû hai chuyeån ñoäng tònh tieán vaø moät chuyeån
ñoäng quay (töùc laø hai toïa ñoä daøi moät toïa ñoä goác)
Phoái hôïp RTR, RRT hay TTR nghóa laø hai khôùp tònh tieán vaø
hai khôùp quay (caùc caáu truùc 5, 6, 7, 8, 9 vaø 10). Ñaây laø caáu
truùc hoaït ñoäng trong heä toïa ñoä caàu so vôùi heä S 0, vì ñieåm M
treân khaâu 3 ñöôïc xaùc ñònh bôûi moät chuyeån ñoäng tònh tieán vaø
hai chuyeån ñoäng quay (töùc laø moät toïa ñoä daøi, hai toïa ñoä goùc)
Ñoà aùn toát nghieäp
Phoái hôïp RRR nghóa laø ba khôùp quay (caùc caáu truùc 11,12)
ñaây laø caùc caáu truùc hoïat ñoäng trong heä toïa ñoä goùc so vôùi
heä S0 vì ñieåm M treân khaâu 3 ñöôïc xaùc ñònh bôûi ba chuyeån
ñoäng quay (töùc laø ba toïa ñoä goùc), caáu truùc naøy ñöôïc goïi laø
caáu truùc phoûng sinh hoïc.
Tuy nhieân trong thöïc teá, ñoái vôùi caùc tay maùy chuyeân duøng
hay chuyeân moân hoùa vaø ñaëc bieät ñaûm baûo giaù thaønh ñaàu tö
vaøo tay maùy thaáp, ngöôøi ta khoâng nhaát thieát luùc naøo cuõng
phaûi cheá taïo tay maùy coù ñuû soá ba khôùp ñoäng cho caáu truùc
xaùc ñònh vò trí.
3.4 GIÔÙI THIEÄU ROBOT L2001:
ROBOT L2001 coù 4 baäc töï do ñeàu laø khôùp quay, söû duïng
ñoäng cô ñieän moät chieàu coù coâng suaát cöïc ñaïi 3W, soá voøng
quay cuûa ñoäng cô vaø chuyeån ñoäng caùc khôùp cuûa tay maùy
tay maùy phuï thuoäc vaøo ñieän aùp ñaët vaøo ñoäng cô vaø coù
theå ñieàu chænh voâ caáp. Keát caáu boä truyeàn ñoäng cô khí ñôn
giaûn thoâng qua boä baùnh raêng giaûm toác 3 caáp, caáp thöù 3
laø boä truïc vít- baùnh vít do ñoù khaû naêng töï haõm raát toát khi
laøm vieäc.
Ñeå xöû lyù coâng vieäc haõm chính xaùc vaø khöû quaùn tính,
tay maùy ñöôïc trang bò heä thoáng ñieàu khieån baèng boä vi xöû
lyù, noù coù chöùc naêng ñieàu khieån theo chöông trình meàm do
ngöôøi cheá taïo laäp saün. caùc cheá ñoä haõm ñoäng cô (haõm
ngöôïc) ñöôïc tính toaùn tröôùc trong chöông trình nhaèm baûo ñaûm
tính chính xaùc cho cô caáu khi coù quaùn tính öùng vôùi caùc giôùi
haïn haønh trình cuûa töøng chöông trình.
Caùc boä phaän an toaøn giuùp tay maùy hoaït ñoäng toát khi
laøm vieäc vaø ngay caû khi maát ñieän,boä nhôù seõ löu laïi chöông
trình.
Boä vi xöû lyù ñöôïc laép caùc coång ra-vaøo ñeå noái keát vôùi
caùc phaàn töû khaùc nhö baêng taûi, caùc khôùp xoay hoaëc caùc
daây chuyeàn saûn xuaát giuùp môû roäng vieäc söû duïng. Baûn
thaân boä vi xöû lyù coù caùc boä ñeám, boä ñònh thôøi giuùp xaùc
ñònh ca laøm vieäc vaø soá saûn phaåm vaän chuyeån ñöôïc öùng
vôùi moãi ca …
Caùc chuyeån ñoäng cuûa caùc khôùp ñöôïc giôùi haïn bôûi
cöû haønh trình.
Tay maùy ñöôïc öùng duïng trong caùc coâng vieäc nhö : caáp
phoâi cho maùy baùn töï ñoäng, vaän chuyeån saûn phaåm nhöïa töø
maùy eùp nhöïa, phaùt hieän vaø loaïi boû pheá phaåm trong daây
chuyeàn saûn xuaát …
Ñieàu caàn quan taâm ôû ñaây cuûa ngöôøi nghieân cöùu laø
giaù thaønh saûn xuaát thaáp, do ñoù phuø hôïp vôùi ñieàu kieän
nöôùc ta hieän nay .
Maëc duø ñoä chính xaùc cuûa tay maùy chöa cao laém, nhöng
vôùi yeâu caàu coâng ngheä nhaát ñònh naøo ñoù tay maùy coù theå
ñaùp öùng ñöôïc.
Ñoà aùn toát nghieäp
• Ghi chuù :
1. Baøn keïp 5. Khôùp thaân
2. Khôùp coå tay 6. Coång keát noái vôùi thieát bò
ñieàu khieån
3. Khôùp khuyûu tay 7. Ñeøn hieån thò
4. Khôùp caùnh tay 8. Coâng taéc logic
Haï caùnh 1
tay s
Môû haøm 1
keïp .2s
Naâng
Xoay ñeá veàcaùnh
vò trí ñaàu,
tay
xoay nghòch coå, haï
khuyûu vaø caùnh tay
Ñoà aùn toát nghieäp
Hình 3.4 : Sô ñoà moâ taû hoaït ñoäng cuûa ROBOT L2001
- + + -
M
M
- + + -
O u
Hình 3.6 : Giaûn ñoà bieåu thò moái quan heä giöõa ñieän aùp
vaø toác ñoä ñoäng cô
Qua giaûn ñoà treân ta thaáy toác ñoä ñoäng cô tæ leä thuaän
vôùi ñieän aùp nguoàn cung caáp .
Ñeå ñaûm baûo ñoäng cô chaïy oån ñònh khi thieát keá neân
choïn boä nguoàn coù ñieän aùp taûi 2 ñeán 3A.
3.5.3 CAÙC COÅNG NOÁI KEÁT VAØ CAÙC HEÄ THOÁNG HIEÅN
THÒ CUÛA ROBOT L2001
* Coång keát noái:
Ñeå ñaûm baûo tính ñoäc laäp cuûa caùc khôùp caùc ñoäng cô ñöôïc
boá trí thaønh 10 coång noái keát rieâng bieät
Do moãi caëp Jaéc noái ñöôïc laép vôùi moät ñoäng cô.
Vì vaäy ta coù taát caû 5 caëp noái vaø ñöôïc ñaùnh soá tö ø1-10.
Trình töï ñöôïc saép xeáp nhö sau :
- 1,2 cho ñoäng cô haøm keïp
- 3,4 cho ñoäng cô coå tay
- 5,6 cho ñoäng cô khuyûu tay
- 7,8 cho ñoäng cô caùnh tay
- 9,10 cho ñoäng cô xoay chaân ñeá
Do ñoù khi noái keát vôùi vôùi beân ngoaøi phaûi ñaûm baûo
caùch ly rieâng bieät töøng caëp nhö ñaõ ñaùnh soá ôû treân
* Cô caáu hieån thò.
Ñoà aùn toát nghieäp
Tay maùy L2001 coù caùc heä thoáng hieån thò baùo tín hieäu
ngoû vaøo vaø ngoõ ra ñöôïc laép treân vi xöû lyù.
Caùc tín hieäu thuaän seõ baùo baèng ñeøn xanh, ngöôïc laïi seõ
baùo baèng ñeøn ñoû.
3.6 GIÔÙI THIEÄU HEÄ THOÁNG BAÊNG TAÛI
Do caùnh tay maùy chæ laøm nhieäm vuï gaép chi tieát ñeán vò
trí coá ñònh, vì vaäy ñeå chuyeån saûn phaåm ñeán moät khaâu khaùc
ñoøi hoûi phaûi coù heä thoáng baêng taûi.
3.6.1 CAÁU TAÏO
Daây baêng ñöôïc laép treân giaù ñôõ baèng nhoâm phaúng naèm
ngang, hai ñaàu laép vôùi 2 rôle muïïc ñích laø taïo söï chuyeån ñoäng.
Chuyeån ñoäng quay nhôø ñoäng cô ñieän moät chieàu coù coâng suaát
5W.
3.6.2 TRANG BÒ ÑIEÄN CHO HEÄ THOÁNG BAÊNG TAÛI
- Baêng taûi ñöôïc laép vôùi ñoäng cô moät chieàu coù coâng
suaát 5W
- Ñoäng cô ñöôïc ñieàu khieån bôûi moät coâng taéc tô
- Thoâng qua coâng taéc tô doäng cô taûi ñöôïc lieân keát vôùi
ñoäng cô thöù hai; ñoäng cô naøy coù nhieäm vuï ñöa chi tieát
caàn chuyeån taûi ñeán ñuùng vò trí quy ñònh
- Ñaàu baêng taûi ñöôïc laép moät coâng taéc duøng ñeå xaùc
ñònh chi tieát ñöôïc taûi, boä phaän naøy ñöôïc keát noái ñeán vi
xöû lí ñeå ñeùm soá chi tieát ñöôïc vaän chuyeån.
CHÖÔNG 4
Ñoà aùn toát nghieäp
4.1 XAÙC CAÁU TRUÙC MAÏCH ÑIEÀU KHIEÅN
Döïa vaøo yeâu caàu veà phaàn ñieàu khieån cuûa caùnh tay
maùy laøm cô sôû cho vieäc xaùc ñònh caáu truùc maïch.
Do ñoù vaán ñeà ñaàu tieân laø phaûi nghieân cöùu kyõ caáu taïo
cuûa tay maùy,tieáp theo phaûi tìm hieåu roõ yeâu caàu ñeå ñieàu
khieån caùnh tay maùy .Vieäc nghieân cöùu naøy seõ cho caùi nhìn veà
caáu truùc maïch ñieàu khieån. Caân nhaéc giöõa caáu hình vaø yeâu
caàu ñieàu khieån seõ choïn caáu truùc maïch hôïp lí.
Sô ñoà khoái cuûa maïch ñieàu khieån ñöôïc trình baøy ôû hình 4.1
Ñoà aùn toát nghieäp
Sô ñoà khoái cuûa maïch ñieàu khieån
Ñoà aùn toát nghieäp
4. 2 ÑÒNH NGHÓA CAÙC CHAÂN VI XÖÛ LÍ
Vi xöû lí (microproccesser) laø moät thieát bò baùn daãn chöùa
caùc maïch logic ñieän töû ñuoäc cheá taïo theo coâng ngheä LSI hoaëc
VLSI. Vi xöû lí coù khaû naêng thöïc hieän caùc chöùc naêng tính toaùn
vaø taïo ra caùc quyeát ñònh laøm thay ñoåi trình töï thi haønh chöông
trình. vi xöû lí laø moät thieát bò logic laäp trính ñuôïc, ñöôïc thieát keá
baèng caùc thanh ghi, caùc flip_flop vaø caùc phaàn töû ñònh thôøi. Vi
xöû lí coù moät taäp leänh ñöôïc thieát keá beân trong,ñeã xöû lí döõ
lieäu vaø truyeàn thoâng vôùi caùc thieát bò ngoaïi vi. Coù nhieàu loaïi
vi xöû lí vaø cuõng coù nhieàu haõng cheá taïo vi xöû lí (Intel, Zilog,
Motorola)
8085 laø moät boä vi xöû lí 8 bit do Intel saûn xuaát , ñaàu tieân
vaøo naêm 1977. Noù coù khaû naêng ñònh ñòa chæ cho boä nhôù tôùi
64Kbyte. thieát bò naøy coù 40 chaân, daïng DIP, ñoøi hoûi nguoàn ñôn
+5v. Hình trình baøy sô ñoà chaân cuûa boä vi xöû lí 8085. Toaøn boä
caùc tín hieäu coù theå ñöôïc phaân thaønh 6 nhoùm:
(1) Tuyeán ñòa chæ.
(2) Tuyeán döõ lieäu .
(3) Caùc tín hieäu traïng thaùi vaø ñieàu khieån
(4) Nguoàn cung caàp vaø caùc tín hieäu taàn soá
(5) Caùc ngaét vaø caùc tín hieäu khôûi taïo ngoaïi vi
(6) Caùc coång I/O noái tieáp
+5V GND
1 2 40 20
X1 X2 Vcc Vss
Serial SID 5 A15 28
I/O SOD 4 High Outer
Ports Address Bus
TRAP 6 A8 21
RST 7.5 7
RST 6.5 8
RST 5.5 9
Interrupts INTR 10
and
Externally
8085 AD7 19
Multiplexed
Initiated Address/Data Bus
Signals
READY 35 AD0 12
HOLD 39
RESET IN 36 30 ALE
29 S0
33 S1 Control
34 IO/M and
32 RD
31 WR Status Signals
11 INTA
18 HLDA
21 21
RESET CLK
OUT OUT
Ñoà aùn toát nghieäp
X1 1 40 Vcc
X2 2 39 HOLD
RESET(OUT) 3 38 HLDA
SOD 4 37 CLK(OUT)
SID 5 36 RESET IN
TRAP 6 35 READY
RST7.5 7 34 IO/M
RST6.5 8 33 S1
RST5.5 9 32 RD
8085
INTR 10 31 WR
INTA 11 30 ALE
AD0 12 29 S0
AD1 13 28 A15
AD2 14 27 A14
AD3 15 26 A13
AD4 16 25 A12
AD5 17 24 A11
AD6 18 23 A10
AD7 19 22 A9
Vss 20 21 A8
Hình 4.2 : sô ñoà chaân vaø caùc tín hieäu cuûa
8085
Tuyeán ñòa chæ 8085 Pinout
8085 coù 8 ñöôøng tín hieäu, A15_A8 laø caùc tín hieäu moät
chieàu, ñöôïc söû duïng nhö tuyeán ñòa chæ cao
Traïng thaùi
Chu kyø maùy IO/M S1 S0 Caùc tín hieäu ñieàu
khieån
Tìm kieám maõ 0 1 1 RD = 0
hoaït ñoäng
Ñoïc boä nhôù 0 1 0 RD = 0
Ghi vaøo boä nhôù 0 0 1 WR = 0
Ñoïc I/O 1 1 0 RD = 0
Ghi vaøo I/O 1 0 1 WR = 0
Yeâu caàu ngaét 1 1 1 INTA = 0
Döøng Z 0 0
Treo Z X X RD , WR = Z
Ñaët laïi Z X X vaø INTA = 1
Caùc ngaét vaø caùc hoaït ñoäng Khôûi taïo beân ngoøai
Vi xöû lí 8085 coù naêm tín hieäu ngaét coù theå ñöôïc söû duïng
ñeå ngaét moät söï thi haønh chöông trình. Vi xöû lí traû lôøi moät ngaét
baèng tín hieäu INTA (Interrupt Acknowledge).
Ngoøai caùc ngaét, ba chaân –RESET, HOLD vaø READY- Tieáp nhaän
caùc tín hieäu khôûi taïo beân ngoaøi nhö laø caùc ngoõ vaøo.
Ñeå ñaùp öùng yeâu caàu HOLD, vi xöû lí coù moät tín hieäu goïi laø
HLDA (Hold Acknowledge)
∗ RESET IN : Khi tín hieäu treân chaân naøy xuoáng möùc logic
thaáp,boä ñeùm chöông trình ñöôïc ñaët laïi veà khoâng, caùc tuyeán
ôû traïng thaùi toång trôû cao vaø vi xöû lí bò ñaët laïi (reset)
∗ RESET OUT : Tín hieäu naøy chæ thò raèng vi xöû lí ñang ñaët laïi.Tín
hieäu naøy coù theå ñöôïc söû duïng ñeå ñaët laïi caùc thieát bò khaùc.
Caùc tín hieäu khaùc ,xem Baûng 4.2
Baûng 4.2 : Caùc ngaét vaø caùc tín hieäu khôûi taïo beân ngoaøi 8085
Instruction
Accumulater Temp. Reg. Regis ter Multiplexer
(8) (8) (8)
(8) (8)
W Z
Temp. Reg. Temp. Reg.
(8) (8)
B C
Reg. Reg.
Flag (8) (8) Register
Flip Flops D E Array
Reg. Reg.
(8) (8)
Instruction H L
Reg. Select
Decoder Reg. Reg.
Arithmatic and
Logic Machine Stack Pointer
Unit Cycle (16)
Encoding Program Counter
(ALU)
(16)
(8)
Incrementer / Decrementer
Address Lactch (16)
Power Supply
+5V
GND
Trong soá naêm côø ,côø AC ñöôïc duøng beân trong ñoái vôùi caùc
pheùp toaùn BCD; taäp leänh khoâng chöùa baát kì leänh nhaûy naøo
coù ñieàu kieän naøo coù lieân quan ñeán côø AC. Trong boán côø coøn
laïi, côø Z vaø Cy laø caùc côø ñöôïc söû duïng thöôøng xuyeân nhaát.
Ñôn vò ñònh thôøi vaø ñieàu khieån
Ñôn vò naøy ñoàng boä taát caû caùc hoaït ñoäng cuûa vi xöû lí
baèng xung ñoàng hoà, vaø phjaùt ra caùc tín hieäu ñieàu khieån caàn
thieát cho vieäc truyeàn thoâng giöõa vi xöû lí vaø ngoaïi vi. Caùc tín
hieäu ñieàu khieån coù chöùc naêng töông töï nhö xung ñoàng boä
(Synchronous pulse) trong moät Dao ñoäng kí. Caùc tín hieäu RD, WR
laø caùc xung ñoàng boä coù chæ thò saün cuûa döõ lieäu treân tuyeán
döõ lieäu.
Thanh ghi leänh vaø boä giaûi maõ
Thanh ghi leänh vaø boä giaûi maõ thuoäc veà ALU. Khi moät
leänh ñöôïc tìm thaáy töø boä nhôù, noù ñöôïc naïp vaøo thanh ghi
leänh. Boä giaûi maõ seõ giaûi maõ leänh vaø thöïc thi trình töï cuûa
caùc söï vieäc theo sau. Thanh ghi leänh khoâng theå ñöôïc laäp trình
vaø khoâng theå xaâm nhaäp baèng baát kì leänh naøo.
Daõy thanh ghi
Caùc thanh ghi laäp trình goàm coù: A, B, C, D, E, F, H vaø L.
Moãi thanh ghi coù theå ñöôïc laäp trình ñoäc laäp hoaëc keát hôïp
thaønh caëp thanh ghi : AF =(PSW), BC = (B), DE = (D) vaø HL = (H).
Ngoøai ra, coøn coù hai thanh ghi phuï, goïi laø caùc thanh ghi
taïm W vaø Z, thuoäc daõy thanh ghi. Caùc thanh ghi naøy ñöôïc söû
duïng ñeå duy trì döõ lieäu 8 bit trong khi thi haønh moät soá leänh. Tuy
nhieân, vì chuùng ñöôïc duøng beân trong, neân chuùng khoâng khaû
duïng ñoái vôùi nngöôøi laäp trình. Töùc laø ngöôøi laäp trình khoâng
caàn thieát phaûi quan taâm ñeán noäi dung trong hai thanh ghi naøy.
SP (Stact Pointer)- Con troû ngaên xeáp, PC (Program Counter) –
boä ñeám chöông trình laø hai thanh ghi 16 bit voâ cuøng quan troïng !
4.4 TAÄP LEÄNH CUÛA 8085
Ñoà aùn toát nghieäp
Moät leänh (Instruction) laø moät maãu nhò phaân (binaray
patter) ñöôïc thieát keá beân trong vi xöû lí ñeå thöïc hieän moät chöùc
naêng cuï theå. Moät nhoùm ñuû caùc leänh ñöôïc goïi laø taäp leänh
(Instruction set), xaùc ñònh caùc chöùc naêng maø vi xöû lí coù theå
thöïc hieän. Taäp leänh cuûa 8085 coù 74 leänh (hôn 8080 hai leänh),
caùc leänh naøy coù theå phaân thaønh 5 nhoùm chöùc naêng:
• Caùc hoïat ñoäng (sao cheùp ) truyeàn döõ lieäu
• Caùc hoïat ñoäng toaùn hoïc
• Caùc hoïat ñoäng logic
• Caùc hoïat ñoäng reõ nhaùnh
• Caùc hoïat ñoäng ñieàu khieån
Caùc hoïat ñoäng (sao cheùp) truyeàn döõ lieäu
Nhoùm caùc leänh naøy sao cheùp döõ lieäu töø nôi nguoàn ñeán
nôi ñích, maø khoâng heà ñieàu chænh noäi dung cuûa nôi nguoàn.
Trong caùc soå tay kyõ thuaät, töø truyeàn döõ lieäu ñöôïc söû duïng
cho chöùc naêng sao cheùp. Sau ñaây laø caùc daïng truyeàn döõ lieäu
Giöõa moät thieát bò I/O vaø thanh ghi Töø baøn phím vaøo thanh ghi
tích tröõ
tích tröõ
Giöõa caëp thanh ghi vaø ngaên xeáp Töø caëp thanh ghi BC ñeán
hai oâ nhôù ñöôïc ñònh nghóa nhö
ngaên xeáp
Caùc hoaït ñoäng toaùn hoïc
Caùc leänh naøy thöïc hieän caùc pheùp toaùn nhö coäng tröø,
taêng vaø giaûm
∗ Coäng: baát moät soá 8 bit , hoaëc noäi dung cuûa thanh ghi
hhoaëc noäi dung cuûa moät oâ nhôù coù theå ñöôïc coäng vôùi noäi
dung cuûa thanh ghi tích tröõ vaø toång ñöôïc ghi vaøo thanh ghi tích
tröõ . Hai thanh ghi hoaëc oâ nhôù khoâng theå coäng tröïc tieáp vôùi
nhau. Leänh DAD laø moät ngoaïi leä, noù coäng tröïc tieáp döõ lieäu 16
bit trong caùc caëp thanh ghi
∗ Tröø : Baát kì moät soá 8 bit, hoaëc noäi dung cuûa moät
thanh ghi, hoaëc noäi dung cuûa moät oâ nhôù coù theå ñöôïc tröø noäi
dung cuûa thanh ghi tích tröõ. Leänh tröø ñöôïc thöïc hieän ôû daïng buø
2,vaø keát quaû neáu aâm ñöôïc bieåu dieãn ôû daïng buø 2. Hai thanh
ghi hoaëc oâ nhôùkhoâng theå ñöôïc tröø tröïc tieáp.
∗ Taêng/giaûm: Noäi dung 8 bit cuûa moät thanh ghi hoaëc
moät oâ nhôù coù theå ñöôïc taêng hhoaëc giaûm moãi laàn moät ñôn
Ñoà aùn toát nghieäp
vò. töông töï noäi dung 16 bit cuûa moät caëp thanh ghi cuõng coù
theå ñöôïc taêng hoaëc giaûm ñi moät. Caùc hoaït ñoäng taêng vaø
giaûm khaùc vôùi pheùp coäng vaø tröø ôû moät caùch thöùc quan
troïng, ñoù laø: chuùng coù theå ñöôïc thöïc hieän trong baát kì thanh
ghi hoaëc oâ nhôù naøo.
Caùc hoaït ñoäng logic
Caùc leänh naøy thöïc hieän caùc hoaït ñoäng logic khaùc nhau
vôùi noäi dung cuûa thanh ghi tích tröõ
∗ AND, OR, XOR: Baát kì moät soá 8 bit, hoaëc noäi dung cuûa
moät thanh ghi, hoaëc noäi dung cuûa moät oâ nhôù coù theå ñöôïc
logic AND, OR , XOR vôùi noäi dung cuûa thanh ghi tích tröõ.
∗ Xoay: Moãi bit trong thanh ghi tích tröõ coù theå ñöôïc dòch
phaûi hoaëc dòch traùi ñeán vò trí keá tieáp.
∗ So saùnh : Baát kì moät soá 8 bit, hoaëc noäi dung cuûa
thanh ghi, hoaëc cuûa oâ nhôù coù theå ñöôïc so saùnh baèng, lôùn
hôn, nhoû hôn vôùi noäi dung cuûa thanh ghi tích tröõ.
∗ Buø : Noäi dung cuûa thanh ghi tích tröõcoù theå ñöôïc laáy
buø : taát caû 0 ñöôïc thay theá baèng 1 vaø toaøn boä ñöôïc ñoåi
thaønh 0
Caùc hoaït ñoäng reõ nhaùnh
Nhoùm caùc leänh naøy laøm thay ñoåi trình töï thi haønh
chöông trình moät caùch coù ñieàu kieän hoaëc khoâng coù ñieàu kieän
∗Nhaûy : Caùc leänh nhaûy coù ñieàu kieän laø moät khía caïnh
quan troïng ñeå ñöa ra nhöõng quyeát ñònh laäp trình. Caùc leänh
naøy kieåm tra moät ñieàu kieän naøo ñoù(côø Zero hoaëc Carry) vaø
laøm thay ñoåi trình töï chöông trình khi baét gaëp ñieàu kieän. Ngoøai
ra, coøn coù caùc leänh nhaûy khoâng ñieàu kieän.
∗ Goïi,Trôû veà, vaø khôûi ñoäng laïi : Caùc leänh naøy laøm thay
ñoåi trình töï cuûa moäi chöông trìnhhoaëc baèng caùch goïi moät
chöông trình con hoaëc trôû veà töø moät chöông trình con. Caùc leänh
Goïi vaø Trôû veàcuõng coù theå kieåm tra caùc côø ñieàu kieän
Caùc leänh naøy ñieàu khieån caùc chöùc naêng vaän haønh
nhö laø : Döøng, ngaét hoaëc khoâng laøm gì caû (No operation)
Leänh moät byte chöùa maõ hoaït ñoäng (Opcode) vaø toaùn töû
(Operand) trong cuøng moät byte
Ñoà aùn toát nghieäp
Trong leänh hai byte, buùyt thöù nhaát neâu leân maõ hoaït ñoäng
vaø theo sau laø toaùn töû
Ñoái vôùi leänh ba byte, byte ñaàu tieân cho bieát maõ hoaït
ñoäng, hai byte theo sau laø döõ lieäu 16 bit (noäi dung hoaëc ñòa chæ)
4.4 CHOÁT,ÑEÄM TUYEÁN ÑÒA CHÆ VAØ DÖÕ LIEÄU CHO 8085
Trong moät heä thoáng vi xöû lí duøng 8085, baét buoäc phaûi
choát (Latch),tuyeán ñòa chæ thaáp ñeå giaûi ña hôïp (demultiplex)
tuyeán AD7 –AD0 thaønh hai tuyeán rieâng bieät: tuyeán ñòa chæ thaáp
A7-A0 vaø tuyeán döõ lieäu D7 – D0
Hình 4.4 trình baøy sô ñoà söû duïng moät maïch choát vaø tín hieäu
ALE ñeå giaûi ña hôïp tuyeán
Tuyeán AD7- AD0 ñöôïc keát noái nhö laø ngoõ vaøo ñeán maïch choát
74LS373. Tín hieäu ALE, ñöôïc noái ñeán chaân cho pheùp (G) cuûa
maïch choát, tín hieäu ñieàu khieån ngoõ ra (OC) cuûa maïch choát
ñöôïc noái ñaát.
Chaân ALEôû möùc cao trong moãi chu kì T. Khi ALE ôû möùc cao,ngoõ
ra cuûa maïch choát thay ñoåi theo döõ lieäu (ñòa chæ vaøo)
3 2
AD0 D0 Q0 A0
4 5
Tuyeán ñòa chæ AD1 7 D1 Q1 6 A1 Tuyeán ñòa chæ
döõ lieäu ña AD2 8 D2 Q2 9 A2
thaáp ñaõ ñöôïc
AD3 D3 Q3 A3
hôïp töø vi xöû AD4
13
D4 Q4
12
A4 choát (giaûi ña hôïp)
14 15
lí 8085 AD5 17 D5 Q5 16 A5
AD6 18 D6 Q6 19 A6
AD7 D7 Q7 A7
1
11 OC
ALE
G
74LS373
D0
D1 Tuyeán döõ lieäu
D2 ñaõ ñöôïc
D3
D4 giaûi ña hôïp
D5
D6
D7
Maïch ñeäm (buffer)laø moät maïch logic ñeå khueách ñaïi doøng
ñieän hoaëc coâng suaát. Maïch ñeäm veà cô baûn ñöôïc söû duïng ñeå
laøm taêng khaû naêng laùi (drive) cuûa moät maïch logic
Hình 4.5 trình baøy 74LS244, moät maïch ñeäm moät chieàu (vì
tuyeán ñòa chæ laø tuyeán moät chieàu,höôùng tjöø vi xöû lí ñeán caùc
thieát bò beân ngoøai) ñeå laøm taêng khaû naêng laùi cuûa tuyeán
Ñoà aùn toát nghieäp
ñòa chæ cao. Veà cô baûn, caùc tuyeán cuûa 8085 coù theå caáp doøng
400µA (IO H = 400µA) vaø ruùt doøng 2µA (II L = 2µA); chuùng chæ coù
theå laùi moät taûi logic TTL. Maëc duø beân trong 8085 ñaõ coù caùc
maïch ñeäm döõ lieäu vaø ñòa chæ, nhöng theo khuyeán caùo cuûa
caùc nhaø cheá taïo, moät heä thoáng vi xöû lí coù 10 thaønh phaàn
trôû leân neân duøng caùc maïch ñeäm.
Maïch ñeäm 74LS244 coù khaû naêng caáp doøng 15mA vaø ruùt
doøng 24mA.
Hình 4.5 cuõng trình baøy 74LS245, moät maïch ñeäm hai chieàu
ñeå laøm taêng khaû naêng laùi cuûa tuyeán döõ lieäu. 74LS245 coù
theå ruùt doøng 24mA vaø caáp doøng 15mA. 74LS245 coù 8 ñöôøng
döõ lieâu hai chieàu: höôùng cuûa doøng döõ lieäu ñöôïc xaùc ñònh
bôûi chaân ñieàu khieån höôùng (DIR)
2 18
A8 4 1A1 1Y1 16 A8
A9 6 1A2 1Y2 14 A9
Tuyeán ñòa chæ A10 8 1A3 1Y3 12 A10 Tuyeán ñòa chæ
cao cuûa vi xöû A11 11 1A4 1Y4 9 A11 cao cuûa heä thoáng
lí 8085 A12 13 2A1 2Y1 7 A12 (ñaõ ñöôïc ñeäm)
A13 15 2A2 2Y2 5 A13
A14 17 2A3 2Y3 3 A14
A15 2A4 2Y4 A15
1
19 1G
2G
74LS244
2 18
D0 3 A1 B1 17 D0
D1 4 A2 B2 16 D1 Tuyeán döõ lieäu
Tuyeán döõ lieäu D2 5 A3 B3 15 D2 cuûa heä thoáng
ñaõ giaûi ña hôïp D3 6 A4 B4 14 D3
D4 (ñaõ ñöôïc ñeäm)
D4 A5 B5
töø 8085 D5
7
A6 B6
13
D5
8 12
D6 9 A7 B7 11 D6
D7 A8 B8 D7
19
RD 1 G
DIR
74LS245
Hình 4.5 : Sô ño àmaïch ñeäm tuyeán ñòa chæ cao vaø tuyeán
döõ lieäu
Hình 4.5 chöùng toû raèng maïch ñeäm luoân ñöôïc cho pheùp
nhôø noái ñaát tín hieäu G. Höôùng cuûa doøng döõ lieäu ñöôïc xaùc
Ñoà aùn toát nghieäp
ñònh baèng caùch noái tín hieäu RD töø vi xöû lí ñeán tín hieäu DIR. Khi
vi xöû lí ghi (WR) vaøo moät ngoaïi vi, RD leân cao vì doøng döõ lieäu
töø vi xöû lí ñeán caùc ngoaïi vi khi vi xöû lí ñang ñoïc (RD) töø moät
ngoai vi, RD xuoáng thaáp vaø doøng döõ lieäu höôùng ñeán vi xöû lí,
tuyeán ñòa chæ thaáp khoâng caàn thieát phaûi ñöôïc ñeäm trong heä
thoáng naøy (neáu ñeäm caøng toát) vì trong baûn thaân maïch choát
(74LS373), döõ lieäu ñòa chæ ñaõ ñöôïc ñeäm roài. Tuyeán ñieàu
khieån, neáu coù ñeäm thì caùch thöùc thöïc hieän nhö laø cuûa tuyeán
ñòa chæ cao.
Trong heä thoáng vi xöû lí ,caùc ngoaïi vi ñöôïc keát noái ôû daïng
song song giöõa tuyeán ñòa chæ tuyeán döõ lieäu vaø tuyeán ñieàu
khieån. Vi xöû lí chæ thoâng tin vôùi moät trong caùc thieát bò taïi moït
thôøi ñieåm, khi ñoù phaûi caùch li taát caû caùc thieát bò coøn laïi.
Vieäc söû duïng caùc maïch ba traïng thaùi (Tri_State). Seõ giaûi quyeát
ñöôïc vaán ñeà naøy
✧Giaûi maõ ñòa chæ cho heä thoáng boä nhôù vaø
ngoaïi vi
Cô sôû ñeå choïn löïa kích côõ boä nhôù chính laø dung löôïng
phaàn meàm. Phaàn meàm ôû ñaây bao goàm chöông trình heä thoáng
(chöông trình monitor) vaø chöông trình cuûa ngöôøi duøng.
Heä thoáng boä nhôù vaø ngoaïi vi ôû ñaây goàm coù :
• Moät EPROM, coù dung löôïng 8K x 8 bit (loaïi 2764 )
• Moät RAM coù dung löôïng 8K x 8bit ( loaïi 6264 ).
• Hai 8255 coù dung löôïng chieám 4 oâ nhôù
• Moät 8279 chieám 2 oâ nhôù
Boä nhôù ROM ( Read-Only Memory) coù nhieäm vuï löu giöõ
thöôøng xuyeân boä leänh ñöôïc ñöôïc xaây döïng cho VI XÖ ÛLÍ vaø
chöông trình quaûn lyù boä leänh ñoù.
Boä nhôù RAM (Random Access Memory) seõ löu giöõ taïm thôøi
(khi ñöôïc caáp ñieän) caùc thoâng soá caàn thieát cho chöông trình
vaø caû chöông trình ñieàu khieån cuûa ngöôøi duøng . Xem baûng 4.3.
Baûng 4.3- Baûn ñoà nhôù vaø baûng ñòa chæù
cuûa heä thoáng.
Baûn ñoà nhôù
0000H
ROM 8K
1FFFH
Ñoà aùn toát nghieäp
2000H
RAM 8K
3FFFH
4000H
8255A
5FFFH
6000H
8255B
7FFFH
8000H
8279
9FFFH
NO USE
FFFFH
Baûng ñòa chæ boä nhôù vaø ngoaïi vi cuûa heä thoáng
ROM 0 0 0 0 0 0000H
0 0 0 1 1 1FFFH
RAM 0 0 1 0 0 2000H
0 0 1 1 1 3FFFH
8255A 0 0 1 0 0 4000H
0 0 1 1 1 5FFFH
8255B 0 1 1 0 0 6000H
0 1 1 1 1 7FFFH
8279 1 0 0 0 0 8000H
1 0 0 1 1 9FFFH
Ñoà aùn toát nghieäp
A15
A14 A CS / ROM
B
A13 CS /RAM
C
VCC 74138 CS / 8255A
E3 CS / 8255B
E2 CS/ 8279
E1
Hình 4.6- Sô ñoà giaûi maõ ñòa chæ cho heä thoáng
8255 laø moät thieát bò I/O giao tieáp song song, laäp trình ñöôïc,
ñöôïc söû duïng roäng raõi do intel cheá taïo. Noù coù theå ñöôïc laäp
trình ñeå truyeàn döõ lieäu döôùi caùc ñieàu kieän khaùc nhau, töø I/O
ñôn giaûn ñeán I/O coù ngaét. Noù khaù linh hoaït, ña naêng vaø tinh
teá (khi coù nhieàu coång I/O ñöôïc ñoøi hoûi) nhöng cuõng khaø phöùc
taïp. Noù laø moät thieát bò I/O phoå duïng coù theå ñöôïc söû duïng
vôùi haàu heát baát kì boä vi xöû lí naøo.
8255 coù 40 chaân daïng DIP veà cô baûn coù theå ñöôïc phaân nhoùm
thaønh hai coång (port) song song 8 bit: A vaø B, vôùi 8 bit coøn laïi laø
cuûa coång C.8bit cuûa coång C coù theå ñöôïc söû duïng ñoäc laäp
hoaëc theo nhoùm hai coång 4 bit :Cu (upper : cao) vaø Cl (lower: thaáp)
Hình 4. (veõ hình) trình baøy taát ccaû caùc chöùc naêng cuûa
8255,ñöôïc xeáp loaïi theo hai mode: mode ñaët /Ñaët laïi bit(BSR) vaø
mode I/O
Coång
A
CU
Coång
CL C
8255
Coång
B
Ñoà aùn toát nghieäp
(a)
Ñoà aùn toát nghieäp
Töø ñieàu khieån
7 D7 D6 D5 D4 D3 D2 D1 D0
0/1
Hình 4.7 caùc coång I/O vaø caùc Mode cuûa 8255
Mode BSR ñöôïc söû duïng ñeå ñaët hoaëc daët laïi caùc bit trong coång
C .Mode I/O ñöôïc chia thaønh ba mode: mode0, mode1, mode2. ÔÛ
mode 0 taát caû caùc coång coù chöùc naêng nhö caùc coång I/O ñôn
giaûn. Mode1 laø mode baét tay (handshake mode) nhôø ñoù caùc
coång A vaø/hoaëc B söû duïng caùc bit töø coång C nhö laø tín hieäu
baét tay. ÔÛ mode baét tay hai daïng truyeàn döõ lieäu I/O coù teå
ñöôïc thi haønh, ñoù laø: kieåm tra traïng thaí vaø ngaét. ÔÛ mode 2,
coång A coù theå ñöôïc ñaët ñeå truyeàn döõ lieäu hai chieàu nhôø söû
duïng caùc tín hieäu baét tay töø coång C vaø coång B coù theå ñöôïc
ñaët ôû mode 0 hoaëc mode1.
4.8 CAÁU TRUÙC 8255
Sô ñoà khoái treân hình 4.3 trình baøy hai coång 8bit (Ava øB) vaø hai
coång 4bit (Cu vaø Cl) ,boä ñeäm tuyeán döõ lieäu vaø logic ñieàu
khieån. Sô ñoà khoái naøy chöùa taát caû caùc phaàn töû cuûa moät
thieát bò laäp trình, coång C thöïc hieän chöùc naêng töông töï chöùc
naêng cuûa thanh ghi traïng thaùi, ngoaøi ra coøn cung caáp caùc tín
hieäu baét tay.
Logic ñieàu khieån
Phaàn ñieàu khieån coù 6 ñöôøng. Chöùc naêng vaø vieäc keát
noái cuûa chuùng nhö sau:
Ñoà aùn toát nghieäp
∗ RD (Read) : ñoïc. Tín hieäu ñieàu khieån naøy cho pheùp hoaït
ñoäng ñoïc. Khi tín hieäu naøy ôû möùc logic thaáp, vi xöû lí ñoïc döõ
lieäu töø coång I/O ñöôïc choïn cuûa 8255
∗ WR (Write) : ghi. Tín hieäu naøy cho pheùp hoaït ñoäng ghi. Khi
tín hieäu naøy ôû möùc thaáp vi xöû lí ghi vaøo thanh ghi hhoaëc coång
I/O ñöôïc choïn.
8255
Group
PA3 40 PA4 A
1 Group Port I/O
A PA7-PA0
PA2 2 39 PA5 Control
A
(8)
PA1 3 38 PA6
PA0 4 37 PA7
RD 5 36 WR
CS 6 35 RESET Group
GND 34 D0 A
7 Bidirectional Port C I/O
A1 8 33 D1 Data Bus Upper PA7-PA0
(4)
A0 9 32 D2
Data
PC7 10 31 D3 Bus
PC6 11 30 D4 Buffer Group
PC5 12 29 D5 A
D7-D0 Port C I/O
PC4 13 28 D6 Lower PA7-PA0
PC0 27 D7 (4)
14
PC1 15 26 Vcc
PC2 16 25 PB7
RD Group
PC3 17 24 PB6 Read B
WR Write Group
Port I/O
PB0 18 23 PB5 A PA7-PA0
A1 Control B
PB1 19 22 PB4 Logic Control
A0 (8)
PB2 20 21 PB3
RESET
CS
D7 D6 D5 D4 D3 D2 D1 D0
Nhoùm B
Coång C (thaáp PC3 –
PC0 )
1= Nhaäp
0 =Xuaát
Coång B
1= Nhaäp
0=Xuaát
Choïn Mode
0= Mode 0
1 = Mode 1
Nhoùm A
Coång C ( Cao PC7-PC4 )
1= Nhaäp
0= Xuaát
Coång A
1= Nhaäp
0= Xuaát
Choïn Mode
00= Mode 0
01 Mode 1
1x = Mode 2
1= Mode I/O
0 =Mode BSR
Hình 4.10 : Toùm taét keát noái caùc chaân treân caùc coång ôû caùc
Mode thuoäc cheá ñoä I/ O
Ñoái vôùi heä thoáng cuûa chuùng ta , cho 8255 laøm vieäc ôû Mode 0
laø toát nhaát.Caùc ñaëc ñieåm vaøo ra Mode 0 nhö sau:
1. Caùc ngoõ ra ñöôïc choát
Ñoà aùn toát nghieäp
2. Caùc ngoõ vaøo khoâng ñöôïc choát
3. Caùc coång khoâng coù khaû naêng baét tay
Ñeå A laø coång xuaát (8 bit), B, C laø hai coång nhaäp (16 bit ): töø
ñieàu khieån phaûi gôûi vaøo thanh ghi ñieàu khieån cuûa 8255 coù
giaù trò laø 8BH
IRQ RL0-7 8
RL2 1 40 Vcc
RL3 2 39 RL1 Key
Data SHIFT Data
CLK 3 38 RL0 8 Bus
IRO 4 37 CNTL/STB CN/ST
RL4 5 36 SHIFT CPU
Interface /RD
RL5 6 35 SL3
4 Scan
RL6 7 34 SL2 /RD
RL7 8 33 SL1
/CS
RESET 9 32 SL0
8279 4
/RD 10 31 OUT B0 A0
/WR Display
11 30 OUT B1 Data
Reset
DB0 12 29 OUT B2
DB1 13 28 OUT B3 CLK 4
DB2 14 27 OUT A0
DB3 15 26 OUT A1
DB4 16 25 OUT A2 Pin Names
DB5 17 24 OUT A3 DB0-7 I/O Data Bus (Bidirectional)
DB6 18 23 /BD CLK I Clock Input
DB7 19 22 /CS RESET I Reset Input
Vss 20 21 A0 /CS I Chip Select
/RD I Read Input
/WR I Write Input
A0 I Buffer Address
IRO O Interrupt Request Output
SLO-3 O Scan Line
RLO-7 I Return Lines
SHIFT I Shift Input
CN/ST I Control Strobe Input
OUT A0-3 O Display (A) Output
OUT B0-3 O Display (B) Outputs
/BD O Blank Display Output
FIFO/Sensor
Data RAM
I/O Control
Buffer Status
Timing
and
Display Control
Registers Scan Counter Return
MSB LSB
Maõ 0 0 0 D D K K K
Trong ñoù,DD laø moát hieån thò vaø KKK laø Mode baøn phím:
D D
0 0 Hieån thò 8 kyù töï 8 bit -Ghi traùi
0 1 Hieån thò 16 kyù töï,8 bit -Ghi traùi
1 0 Hieån thò 8 kyù töï 8 bit -Ghi phaûi
1 1 Hieån thò 16 kyù töï,8 bit -Ghi phaûi
Ñoà aùn toát nghieäp
YÙ nghóa cuûa ghi traùi (Left entry ) vaø ghi phaûi (Right Entry) ñöôïc
trình baøy ôû hình 4.13
Chuù yù raèng khi queùt coù giaûi maõ ñöôïc ñaët trong Mode baøn
phím, hieån thò seõ bò giaûm xuoáng 4 kí töï khoâng phuï thuoäc vaøo
vieäc ñaët Mode hieån thò
K K K
0 0 0 Baøn phím queùt coù laäp maõ - Khoùa ngoaøi 2
phím
0 0 1 Baøn phím queùt coù giaûi maõ - Khoùa ngoaøi 2
phím
0 1 0 Baøn phím queùt coù laäp maõ - Xoay voøng N
phím
0 1 1 Baøn phím queùt coù giaûi maõ - Xoay voøng N
phím
1 0 0 Ma traän caûm bieán,queùt coù laäp maõ
1 0 1 Ma traän caûm bieán ,queùt coù giaûi maõ
1 1 0 Ngoõ vaøo Strobe,queùt hieån thò coù laäp maõ
1 1 1 Ngoõ vaøo Strobe,queùt hieån thò coù giaûi maõ
ÔÛ Mode laäp maõ ,caùc ngoõ ra SL taùc ñoäng möùc cao vaø theo
sau laø maãu bit nhò phaân töø 0 ñeán 7 hoaëc töø 0 ñeán 15, tuøy
theo kieåu hieån thò 8 hoaëc 16 soá ñöôïc choïn.
ÔÛ Mode giaûi maõ,caùc ngoõ ra SL taùc ñoäng möùc thaáp,vaø
chæ moät trong boán ngoõ ra ôû möùc thaáp taïi thôøi ñieåm baát kì
ñöôïc cho. Caùc ngoõ ra giaûi maõ laëp laïi maãu :1110, 1101, 1011,
0111.
ÔÛ mode Strobe ,moät xung taùc ñoäng möùc cao treân chaân CN/
ST seõ Strobe döõ lieäu töø caùc chaân RL vaøo FIFO beân trong, nôi
maø chuùng ñöôïc duy trì cho vi xöû lí.
Maõ 0 0 1 P P P P P
Taát caû caùc tín hieäu ñònh thôøi vaø ña hôïp cho 8279 ñöôïc
phaùt ra bôûi boä ñaët tröôùc tyû leä (prescaler) beân trong.Boä ñaët
tröôùc chia xung ñoàng hoà beân ngoøai (chaân 3) cho moät soá
nguyeân coù theå laäp trình ñöôïc. Caùc bit PPPP quyeát ñònh giaù trò
cuûa soá nguyeân naøy trong phaïm vi töø 2 ñeán 31. Haõy choïn soá
chia sao cho ñaït ñöôïc taàn soá 100 KHZ
(A) REPRESENTS
RAM
7 SEGMENT
LOCATION DISPLAY POSITION
CODE : FOR A
0 (A) A b c d
1 (b)
(a) Left entry
2 (c)
3 (d)
4 DISPLAY POSITION
5
Ñoà aùn toát nghieäp
6
7
RAM
LOCATION
0 (A) A B c d
1 (b)
2 (c) (A) REPRESENTS
3 (d) 7 SEGMENT
4 CODE : FOR A
5 (b) Right entry
6
Hình : 4.13 Moái lieân heä giöõa 8279 vaø vò trí hieån thò
Maõ
0 1 0 AI X A A A
X : khoâng quan taâm
Töø ñieàu khieån naøy choïn ñòa chæ cuûa maõ phím caàn ñoïc
trong RAM FIFO caûm bieán.ÔÛ Mode baøn phím coù queùt,côø taêng
töï ñoäng AI (Auto-Increment) vaø caùc bit ñòa chæ RAM (AAA) khoâng
coøn khaû duïng. 8279 seõ töï ñoäng laùi tuyeán döõ lieäu cho moãi
laàn ñoïc tieáp theo (A0 =0) theo ñuùng trình töï maø ban ñaàu döõ
lieäu ñöôïc nhaäp vaøo FIFO . Taát caû nhöõng laàn ñoïc tieáp theo seõ
ñeán töø FIFO cho ñeán khi moät leänh khaùc ñöôïc taïo ra .
ÔÛ moát ma traän caûm bieán,caùc bit ñòa chæ RAM(AAA) choïn
moät trong 8 haøng cuûa RAM caûm bieán. Neáu côø AI ñöôïc ñaët
(AI=1) moãi söï ñoïc keá tieáp se õñeán töø haøng tieáp theo cuûa RAM
caûm bieán .
4 . Ñoïc RAM hieån thò
Maõ
0 1 1 AI A A A A
Töø ñieàu khieån naøy choïn ñòa chæ cuûa buùyt döõ lieäu caàn
ñoïc trong RAM hieån thò.Caùc bit ñòa chæ AAA choïn moät trong 16
haøng cuûa RAM hieån thò. Neáu côø AI ñöôïc ñaët (AI=1), ñòa chæ
haøng naøy seõ töï ñoäng taêng sau moãi laàn ñoïc hoaëc ghi tieáp
theo. Vì cuøng moät boä ñeám ñöôïc söû duïng cho caû hai hoaït ñoäng
ñoïc vaø ghi. Töø leänh naøy ñaët ñòa chæ ñoïc hoaëc ghi keá tieáp vaø
caûm nhaän Mode töï ñoäng taêng cho caû hai hoaït ñoäng
5. Ghi vaøo RAM hieån thò
Ñoà aùn toát nghieäp
Maõ 1 0 0 AI A A A A
Töø ñieàu khieån naøy choïn ñòa chæ trong RAM hieån thò nôi caàn
ghi döõ lieäu vaøo. Sau khi töø keänh A0=1 ,taát caû nhöõng laàn ghi
keá tieáp vôùi A0=0 seõ ôû trong RAM hieån thò. Caùc chöùc naêng
ñònh ñòa chæ vaø taêng töï ñoäng gioáng nhö ñoái vôùi Ñoä RAM hieån
thò. Tuy nhieân töø leänh naøy khoâng aûnh höôûng ñeán nguoàn cuûa
nhöõng laàn ñoïc döõ lieäu keá tieáp; CPU seõ ñoïc baát kì RAM naøo
(Hieån thò hoaëc FIFO/Caûm bieán) ñöôïc nieâu roõ sau cuøng. Leõ ra,
neáu RAM hieån thò ñöôïc nieâu roõ sau cuøng, vieäc ghi vaøo RAM
hieån thò, tuy nhieân seõ laøm thay ñoåi vò trí ñoïc tieáp theo.
6. Nhaáp nhaùy / caám ghi vaøo hieån thò
Maõ 1 0 1 X IW IW BL BL
Caùc bit IW coù theå ñöôïc söû duïng ñeå che nöûa byte A vaø nöûa
byte B trong nhöõng öùng duïng ñoøi hoaùc coång hieån thò 4 bit taùch
bieät. Baèng caùch ñaët côø IW (IW=1) ñoái vôùi moät trong caùc
coång, coång trôû neân ñöôïc ñaùnh daáu sao cho vieäc ghi vaøo RAM
hieån thò töø CPU khoâng aûnh höôûng ñeán coång ñoù. Theá thì neáu
moãi nöûa buùyt ñöôïc nhaäp vaøo moät boä giaûi maõ BCD, CPU coù
theå ghi moät soù vaøo RAM hieån thò maø khoâng aûnh höôûng ñeán
soá khaùc ñang ñöôïc hieån thò. Moät chuù yù quan troïng laø bit B0
töông öùng vôùi bit D0 treân tuyeán döõ lieäu cuûa CPU, vaø bit A3
töoâng öùng vôùi bit D7
Neáu ngöôøi söû duïng muoán nhaáp nhaùy hieån thò, caùc côø BL coù
khaû duïng ñoái vôùi moät nöûa byte. Leänh xoùa sau cuøng phaùt ra
xaùc ñònh maõ ñöôïc söû duïng nhö moät “nhaáp nhaùy”
7. Xoùa
1 1 0 CD CD CD CF CA
Caùc bit Cd coù saün trong töø leänh naøy ñeå xoùa taát caû caùc
haøng cuûa RAM hieån thò theo moät maõ coù theå choïn löïa ñöôïc nhö
sau
CD CD CD
Trong suoát thôøi gian RAM hieån thò ñang bò xoùa (160µs) noù
khoâng theå ñöôïc ghi vaøo. Bit coù trong soá cao nhaát (MSB) cuûa töø
traïng thaùi ñöôïc ñaët trong suoát thôøi gian naøy. Khi RAM hieån thò
trôû neân khaû duïng trôû laïi bit naøy töï ñoäng ñöôïc ñaët laïi.
Ñoà aùn toát nghieäp
Neáu CF =1 traïng thaùi FIFO bò xoùa vaø ñöôøng ngoõ ra ngaét
ñöôïc ñaët laïi. Vaø con troû RAM caûm bieán ñöôïc ñaät taïi haøng 0. CA
, bit xoùa taát
Caû coù söï aûnh höôûng cuûa CD vaø CF. Noù söû duïng Cd xoùa maõ
treân RAM hieån thò vaø cuõng xoùa traïng thaùi FIFO. Hôn theá nöõa,
noù coøn ñoàng boä laïi söï ñònh thôøi beân trong
8. Ñaët mode baùo loãi /ngaét ôû cuoái
Maõ 1 1 1 E X X X X
Ñoái vôùi caùc mode ma traän caûm bieán,töø leänh naøy haï
ñöôøng IRQ xuoáng thaâp vaø cho pheùp ghi vaøo RAM (ñöôøng IRQ
ñöôïc naâng leân, phaùt hieän moâî söï thay ñoåi trong moät gía trò
caûm bieán. Ñieàu naøy cuõng seõ caám ghi vaøo RAM cho ñeán khi
ñaët laïi)
Ñoái vôùi mode xoay voøng N phím, neáu bit E ñöôïc laäp trình
baèng 1, chip 8279 seõ hoaït ñoäng ôû mode baùo loãi
Khôûi taïo 8279
Maëc duø 8279 coù ñeán 8 töø ñieàu khieån, nhöng khoâng phaûi
luùc naøo cuõng söû duïng heát taát caû 8 töø naøy
Khi khôûi taïo moät 8279, thöù töï caùc töø ñieàu khieån sau ñaây
laø caàn thieát:
+ Ñaët mode hieån thò /baøn phím
+ Laäp trình xung ñoàng hoà
+ Xoùa RAM hieån thò hoaëc FIFO, hoaëc caû hai
Caùc töø ñieàu khieån coøn laïi coù theå ñöôïc gôûi ra thanh ghi
ñieàu khieån trong luùc naøy hoaëc khi caàn.
Vieäc ñoïc maõ cuûa baøn phím coù theå ñöôïc thöïc hieän baèng
moät trong hai caùch: duøng ngaét (interrupt) hoaëc duøng kyõ thuaät
hoûi voøng (Polling)
Khi moät phím ñöôïc aán xuoáng, chaân IRQ cuûa 8279 taïo ra
moät möùc logic cao, neáu duøng ngaét, chaân naøy phaûi ñöôïc noái
voái chaân ngaét cuûa vi xöû lí. Chöông trình phuïc vuï ngaét seõ ñoïc
maõ cuûa phím aán.
Neáu duøng kyõ thuaät hoûi voøng, phaûi kieåm tra traïng thaùi
FIFO tröôùc khi muoán ñoïc FIFO ñeå laáy maõ phím aán.
CHÖÔNG 6