Professional Documents
Culture Documents
VI Xu Ly - SPKT
VI Xu Ly - SPKT
'
.+ - ++ ~. +++ + ++
Bit D
0
dung e thiet lap 4 bit thap cua port C:
D
0
= 0 port C thap la port xuat d lieu (output)
D
0
= 1 port C thap la port nhap d lieu (input).
Bit D
1
dung thiet lap port B:
D
1
= 0 port B la port xuat d lieu (output)
D
1
= 1 port B la port nhap d lieu (input).
Bit D
2
dung thiet lap Mode ieu khien cua nhom B:
D
2
= 0: nhom B hoat ong Mode 0.
D
2
=1: nhom B hoat ong Mode 1.
~ ::
,
-
,
.+ - ++ ~. +++ + ++ /
Bit D
3
dung e thiet lap 4 bit cao cua port C:
D
3
= 0 port C la port xuat d lieu (output)
D
3
= 1 port C la port nhap d lieu (input).
Bit D
4
dung e thiet lap port A:
D4 = 0 port A la port xuat d lieu(output)
. + y 249
+++ +-: - +- :++ . + y .y-+ ++ +.
D4 = 1 port A la port nhap d lieu (input).
Bit D
6
D
5
dung thiet lap Mode ieu khien cua nhom A:
D
6
D
5
= 00: nhom a hoat ong Mode 0.
D
6
D
5
= 01: nhom A hoat ong Mode 1.
D
6
D
5
= 1: nhom A hoat ong Mode 2.
Coc nhcm A, 8 |om v|ec c cou h|nh c Mcde 0:
T ieu khien thiet lap nhom A & B hoat ong Mode 0 nh hnh 6-18:
H|nh 6-8. 1u d|eu kh|en kh| 2 nhcm A, 8 |om v|ec c mcde 0.
Mode 0 cac port A, port B, port C thap va port C cao la cac port xuat hoac nhap d lieu
oc lap. Do co 4 bit e la chon nen co 16 t ieu khien khac nhau cho 16 trang thai xuat nhap cua
4 port.
Coc nhcm A & 8 |om v|ec c cou h|nh c Mcde :
T ieu khien nhom A, B hoat ong Mode 1 nh hnh 6-19:
H|nh 6-. 1u d|eu kh|en kh| 2 nhcm A, 8 |om v|ec c mcde .
Mode 1 cac port A & B lam viec xuat nhap co chot (Strobe I/O). Mode nay hai port A
& B hoat ong oc lap vi nhau va moi port co 1 port 4 bit ieu khien. Cac port 4 bit ieu khien
c hnh thanh t 4 bit thap va 4 bit cao cua port C.
Khi 8255A c cau hnh Mode 1, thiet b giao tiep muon 8255A nhan d lieu, thiet b o
phai tao ra tn hieu yeu cau 8255A nhan d lieu, ngc lai 8255A muon gi d lieu en thiet b
khac, 8255A phai tao ra tn hieu yeu cau thiet b o nhan d lieu, tn hieu yeu cau o goi la tn
hieu Strobe.
+~+ :+ ++ / ~ .- ~. +++ \- '
Port A c cau hnh la port nhap d lieu:
Chc nang cua cac ng tn hieu c trnh bay hnh 6-20 va dang song lam viec cua cac
ng tn hieu ieu khien nh hnh 6-21:
. + y
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-20. Pcrt A cuo |C 8255A hcot dcng c mcde nhon du ||eu.
H|nh 6-2. Dong scng cuo coc ducng t|n h|eu d|eu kh|en pcrt A |nput.
Cac ng tn hieu cua port C tr thanh cac ng ieu khien cua port A.
Bit PC
4
tr thanh bit
A
STB (Strobe Input, tch cc mc thap) dung e nhan tn hieu chot t
thiet b gi e bao cho 8255A biet d lieu a c gi en cac ngo vao PA
7
PA
0
.
Bit PC
5
tr thanh bit IBF
A
(Input Buffer Full, tch cc mc cao), dung e bao cho thiet b
gi biet bo em a ay ng gi byte tiep theo.
Bit PC
3
tr thanh bit INTR
A
(Interrupt Request, tch cc mc cao), bit nay co mc Logic 1
khi hai bit 1 =
A
STB , IBF
A
= 1 va bit INTE
A
(Interrupt Enable) ben trong 8255A bang 1. Bit INTE
A
c thiet lap mc logic 1 hay 0 do t ieu khien Set/Reset cua 8255A. hnh tren, bit INTE
A
= 1
dung e cho phep tn hieu IBF
A
xuat hien tai ngo ra INTE
A
cua cong AND. Tn hieu INTR
A
c
ket noi vi ngo vao ngat cua vi x ly e bao cho vi x ly biet: d lieu mi a xuat hien port A
yeu cau vi x ly thc hien chng trnh phuc vu ngat e nhan d lieu tai port A va xoa yeu cau
ngat e ieu khien tn hieu IBF
A
ve mc 0 san sang nhan byte tiep theo.
Cac bit con lai cua port C: PC
6
, PC
7
la cac bit xuat/nhap bnh thng tuy thuoc vao bit D
3
trong t ieu khien. Cac bit c dung e thiet lap cho nhom B.
Port A c cau hnh la port xuat d lieu:
Chc nang cua cac ng tn hieu c trnh bay hnh 6-22 va dang song lam viec cua cac
ng tn hieu ieu khien nh hnh 6-23:
. + y 251
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-22. Pcrt A cuo |C 8255A hcot dcng c mcde xuot du ||eu.
H|nh 6-23. Dong scng cuo coc ducng t|n h|eu d|eu kh|en pcrt A cutput.
Bit PC
7
tr thanh bit
A
OBF (Output Buffer Full, tch cc mc thap), khi co d lieu t vi x ly
gi ra port A, tn hieu
A
OBF se yeu cau thiet b ben ngoai nhan d lieu.
Bit PC
6
tr thanh bit
A
ACK (Acknowledge Input, tch cc mc thap) thiet b nhan d lieu
dung tn hieu nay e bao cho 8255A biet tn hieu a c nhan va san sang nhan d lieu tiep theo.
Bit PC
3
tr thanh bit INTR
A
(Interrupt Request, tch cc mc cao), bit nay co mc logic khi
hai bit 1 =
A
OBF , 1 =
A
ACK va bit INTE
A
(Interrupt Enable) ben trong 8255A mc 1. Tn hieu
INTR
A
tac ong en ngo vao ngat cua vi x ly e bao cho vi x ly biet: thiet b ben ngoai a nhan
xong d lieu port A va thc hien gi byte d lieu tiep theo.
Cac bit con lai cua port C: PC
4
, PC
5
la cac bit xuat/nhap bnh thng tuy thuoc vao bit D
3
trong t ieu khien. Cac bit dung e thiet lap cho nhom B.
+~+ :+ ++ ~ .- ~. +++ \- '
Port B c cau hnh la port nhap d lieu :
Chc nang cua cac ng tn hieu c trnh bay hnh 6-24:
. + y
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-24. Pcrt 8 cuo |C 8255A hcot dcng c mcde nhon du ||eu.
Chc nang cua cac bit ieu khien giong nh nhom A hoat ong Mode 1.
Port B c cau hnh la port xuat d lieu:
Chc nang cua cac ng tn hieu c trnh bay hnh 6-25:
H|nh 6-25. Pcrt 8 cuo |C 8255A hcot dcng c mcde xuot du ||eu.
Chc nang cua cac bit ieu khien giong nh nhom A hoat ong Mode 1.
Cac bit c dung thiet lap cho nhom A, bit D
0
khong co tac dung trong trng hp ca
hai nhom cung lam viec Mode 1.
Coc nhcm A |om v|ec c cou h|nh Mcde 2:
Mode 2 la kieu hoat ong Stable Bi-directional IO, khac vi Mode 1 la port co the xuat
nhap d lieu.
T ieu khien khi hai nhom A hoat ong Mode 2 nh hnh 6-26:
H|nh 6-26. 1u d|eu kh|en hcot dcng c mcde 2 cuo nhcm A.
Chc nang cua cac ng tn hieu c trnh bay hnh 6-27 va dang song lam viec cua cac
ng tn hieu ieu khien nh hnh 6-28:
. + y 253
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-27. Nhcm A cuo |C 8255A hcot dcng c mcde 2.
H|nh 6-28. Dong scng cuo coc ducng t|n h|eu d|eu kh|en nhcm A.
Cac ng tn hieu cua port C tr thanh cac ng ieu khien cua port A.
Bit PC
7
tr thanh bit OBF
A
, PC
6
tr thanh bit
A
ACK , PC
4
tr thanh bit
A
STB , PC
5
tr thanh
IBF
A
va bit PC
3
tr thanh bit INTR
A
. Chc nang cua cac ng tn hieu giong nh Mode 1, ch
khac la tn hieu ngo ra INTR
A
=1, INTE1 = 1 hoac IBF
A
= 1, INTE2 = 1.
Cac bit PC
2,1,0
con lai co the la cac bit I/O tuy thuoc vao bit ieu khien cua nhom B.
Chu y khi nhom A lam viec Mode 2, nhom B ch c phep hoat ong Mode 0.
Cau hnh cua t ieu khien Set/Reset bit INTE khi 8255A hoat ong Mode 1 hoac Mode 2
c trnh bay hnh 6-29:
- . + y
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-2. 1u d|eu kh|en thu 2 cuo |C 8255A.
Cau hnh nay con cho phep Set/Reset tng bit cua port C. T ieu khien nay khac vi t ieu
khien cau hnh la bit D
7
= 0.
Bit D
0
dung e Set/Reset bit INTE, khi D0 = 1 th INTE = 1 (cho phep ngat), khi D
0
= 0 th
INTE = 0 (khong cho phep ngat). Ba bit D
1
, D
2
, D
3
dung e chon mot bit cua port C, gan mc logic
cua bit D
0
cho 1 bit cua port C a chon.
Trong thc te port A va port B thng c cau hnh vi nhieu Mode khac nhau. V du nhom
A hoat ong Mode 2 nhom B lam viec Mode 0.
3/ . / `73
IC ngoai vi 8279 la IC chuyen dung e quet led 7 oan va quet ban phm co cau truc nh
sau:
IC 8279 co the hoat ong mode quet ban phm.
IC 8279 co the hoat ong mode cac cam bien.
Hoat ong kieu ngo vao co chot.
Bo nh FIFO co the lu 8 byte ma phm nhan.
Co chc nang khoa 2 phm hoac quet vong N phm co chong doi phm.
Co the hien th quet 2 bo quet 4 ng, 8 ng hoac 16 ng.
Quet hien th 8 led 7 oan hoac 16 led 7 oan.
Co cac lenh lap trnh.
Co the lap trnh bo nh Ram cha d lieu hien th 16 byte vi loi vao trai hoac phai.
Co the lap trnh thi gian quet.
Co the tao tn hieu ngat khi co nhan phm.
(a) S o chan va s o khoi cua 8279 :
IC 8279 co 40 chan nh hnh 6-30:
. + y 255
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-30. 5c dc chon vo sc dc |cg|c cuo |C 827.
8279 co mot bo nh RAM 16 byte dung e hien th va mot bo nh RAM dung e cha ma
cua phm nhan. Trong 8279 co mot thanh ghi em d lieu, khi d lieu c vi x ly gi ti th no
c chuyen ti thanh ghi nay. Ngoai ra 8279 con co thanh ghi trang thai e ch trang thai cua
8279 tai mot thi iem.
Ten cac chan cua IC 8279 nh bang 6-17:
1en t|n h|eu Hucng t|n h|eu Chuc nong
A0 | Address
D87 D80 |/0 Doto 8us (8|-d|rect|cn[
CLK | C|cck |nput
kE5E1 | keset |nput
C5\ | Ch|p 5e|ect
kD\ | keod |nput
Wk\ | Wr|te |nput
|kQ 0 |nterrupt kequest |nput
5L0-5L3 0 5con L|nes
kL0-kL7 | keturn L|nes
5H|F1 | 5h|ft |nput
CN1L/518 | Ccntrc|/5trcbe |nput
0U1 A3-0 0 D|sp|oy (A[ 0utput
0U1 83-0 0 D|sp|oy (8[ 0utput
8D\ 0 8|onk D|sp|oy 0utput
8ong 6-7. 1en coc chon cuo |C 827.
IC 8279 ket noi vi vi x ly thong qua 3 bus gom: bus d lieu D7-D0, bus a ch co 1 ng
A0, bus ieu khien RD, WR, CS , RESET, IRQ, CLK giong nh 8255A.
Tn hieu chon CS c ket noi vi mot ngo ra nao o cua IC giai ma a ch IO hoac IC giai
ma a ch bo nh. Neu xem IC 8279 la mot bo nh th bo nh nay co hai o nh.
. + y
+++ +-: - +- :++ . + y .y-+ ++ +.
. + y 257
(b) Cau truc t ieu khien cua 8279:
IC 8279 co 1 ng a ch A0 co chc nang la chon nh sau:
- A0 = 0: IC 8279 xem d lieu t vi x ly gi en e chon d lieu hien th.
- A0 = 1: IC 8279 xem d lieu t vi x ly gi en la d lieu cua lenh ieu khien 8279.
-++ -y:~/-~y \- -:
T ieu khien nh hnh 6-31:
H|nh 6-3. 1u d|eu kh|en keybcord/D|sp|oy mcde set cuo |C 827.
Trong o 2 bit DD dung e thiet lap Mode hien th, 3 bit KKK dung e thiet lap Mode quet
ban phm.
Chc nang cua 2 bit DD:
Ho| b|t DD Chuc nong
00 h|en th| 8 ky tu |c| voc tro|.
0 h|en th| 6 ky tu |c| voc tro|.
0 h|en th| 8 ky tu |c| voc pho|.
h|en th| 6 ky tu |c| voc pho|.
8ong 6-8. Coc mcd h|en th| khoc nhou cuo 827.
Chc nang cua 3 bit KKK:
8o b|t KKK Chuc nong
000 enccde scon keybcord 2 key |cckcut
00 deccde scon keybcord 2 key |cckcut
00 enccde scon keybcord N key rc||cver
0 deccde scon keybcord N key rc||cver
00 enccde scon senscr motr|x
0 deccde scon senscr motr|x
0 strcbe |nput, enccde d|sp|oy scon
strcbe |nput, deccde d|sp|oy scon
8ong 6-. Coc mcd quet mo tron ph|m khoc nhou cuo 827.
-++ ~
T ieu khien nh hnh 6-32:
H|nh 6-32. 1u d|eu kh|en Prcgrom c|cck cuo |C 827.
Lenh nay co chc nang chia tan so xung clock ngo vao CLK chan so 3, cac bit PPPPP
dung e xac nh so chia nam trong khoang t 1 en 31, tan so hoat ong cua mach quet hien th
va chong doi cua 8279 thng la 100kHz, neu tan so ngo vao la 2MHz th chia cho 20 ta c
100kHz, khi o cac bit PPPPP co gia tr la 10100.
-++ -~ /--+- /\
T ieu khien nh hnh 6-33:
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-33. 1u d|eu kh|en ked F|F0/senscr kAM cuo |C 827.
IC 8279 co 8 byte RAM ben trong e cha ma cua phm an hay ma cua cac sensor c phan
biet bi 3 bit a ch AAA. Trc khi oc d lieu cua o nh nao th ta phai thiet lap t ieu khien
nay cho IC 8279 roi mi tien hanh oc d lieu.
Ta co the thay oi con tro quan ly 8 byte nay bang cach thay oi gia tr cua cac bit AAA
trong t ieu khien. Bo nh thuoc kieu FIFO.
Bit AI (Automatically increment): neu mc 1 th sau khi oc 1 byte th con tro tang len 1 e
co the oc byte ke tiep. Neu AI = 0 con tro se khong thay oi, muon oc byte ke tiep th phai thay
oi a ch bang t ieu khien nay.
-++ -~ -~y /\
T ieu khien nh hnh 6-34:
H|nh 6-34. 1u d|eu kh|en D|sp|oy kAM cuo |C 827.
IC 8279 co 16 byte RAM ben trong do con tro 4 bit AAAA quan ly, 16 byte RAM nay dung
e cha d lieu can hien th do vi x ly gi ti, vi x ly co the oc lai d lieu cua 1 o nh bat ky
trong vung nh RAM nay bang cach ieu chnh cac bit AAAA tng ng trc khi oc d lieu.
Bit AI (Automatically Increment): mc 1 lam con tro t ong tang len o nh ke e san sang
e oc byte d lieu cua o nh ke. Neu AI = 0 con tro se khong thay oi.
-++ + +:-.:
T ieu khien nh hnh 6-35:
H|nh 6-35. 1u d|eu kh|en End |nterrupt cuo |C 827.
Bit E = 1 se xoa ngat IRQ ve mc Logic 0.
-++ N:- -~y /\
T ieu khien nh hnh 6-36:
H|nh 6-36. 1u d|eu kh|en Wr|te D|sp|oy kAM cuo |C 827.
IC 8279 co 16 byte RAM ben trong do con tro 4 bit AAAA quan ly, 16 byte RAM nay dung
e cha d lieu can hien th do vi x ly gi ti, e ghi d lieu vao o nh nao trong vung nh RAM
nay ta co the ieu chnh cac bit AAAA tng ng.
` . + y
+++ +-: - +- :++ . + y .y-+ ++ +.
Bit AI (Automatically Increment): mc 1 lam con tro t ong tang len o nh ke e san sang
lu byte d lieu ke. Neu AI = 0 con tro se khong thay oi, do o, byte d lieu sau se ghi e len
byte d lieu trc o.
-++ -~
T ieu khien nh hnh 6-37:
H|nh 6-37. 1u d|eu kh|en C|eor cuo |C 827.
Nhng Bit C
D
trong lenh nay dung e xoa tat ca cac hang cua bo nh RAM hien th sang ma
nhap nhay cho phep la chon nh hnh 6-38:
H|nh 6-38. 8o b|t C
D
cuo tu d|eu kh|en C|eor.
Trong suot thi gian ang xoa bo nh RAM hien th th ta khong c ghi d lieu vao (thi
gian xoa khoang 160s). Bit MSB cua t trang thai FIFO mc 1 trong khoang thi gian xoa va se
tr ve mc 0 sau khi xoa xong. Ngi lap trnh co the kiem tra bit nay e biet khi nao xoa xong e
gi d lieu ra hien th.
Neu nh Bit C
F
tch cc (C
F
=1), t trang thai FIFO se b xoa va ngo ra Interrupt b Reset .
Bit C
A
co chc nang xoa tat ca cac bit, bit nay con ket hp vi bit C
D
va C
F
. Bit C
D
e xoa
ma tren RAM hien th va no cung xoa luon trang thai FIFO.
(c) ng dung IC 8279:
IC 8279 la chuyen ve giai ma hien th Led 7 oan va quet phm theo nhieu phng phap
khac nhau.
D lieu can hien th t vi x ly gi en se c lu trong 16 byte RAM ben trong c goi la
bo nh hien th. Cac tn hieu nay lan lt gi ra tren 8 ng tn hieu t A[30] en B[30].
Cac ng tn hieu SL[30] dung e quet, d lieu tren ng nay co the c thiet lap theo
kieu ma hoa (Encode) hoac giai ma (Decode) tuy thuoc vao kieu thiet ke phan cng. Cac ng
nay co hai chc nang va quet hien th va quet giai ma ban phm.
Cac ng tn hieu RL[70] la cac ng tn hieu input ket hp vi cac ng tn hieu quet
SL[30]
tao thanh ma tran phm, phm c nhan se lam cho mot ngo vao RL xuong mc 0, ket
hp vi cac ng tn hieu quet se cho biet ma cua phm nhan. Chu y cac ng SL[30] phai
che o Decode.
Cac ngo vao SHIFT va CNTL c dung e m rong cac phm to hp.
. + y 259
+++ +-: - +- :++ . + y .y-+ ++ +.
So lng cac phm ket noi co the len ti 64 phm ri.
IC 8279 gi d lieu trong vung nh RAM hien th ra cac Led va t ong quet ban phm e
tm phm b tac ong va t chong doi, sau o thiet lap ma cua phm b nhan, trc khi s dung IC
8279 ngi s dung phai thiet lap cac t ieu khien gi ra IC 8279 khi bit a ch A0 = 1. D lieu
oc vao hoac gi ra IC 8279 khi bit a ch A0 = 0.
Khi co phm b nhan, IC 8279 se t ong chong doi sau 10,3 ms va kiem tra lai mot lan na
e xem phm o co b nhan hay khong, neu con th IC 8279 se thiet lap ma cho phm nay va lu tr
ma cua phm vao bo nh RAM ben trong. Sau o se bao cho vi x ly biet a co mot phm tac ong
va yeu cau vi x ly nhan ma cua phm nay bang cach tac ong en tn hieu ngat IRQ. Tn hieu
IRQ c ket noi en mot ngo vao ngat cua vi x ly va chng trnh phuc vu cho ngat nay la
chng trnh ngat phm. Nhiem vu cua vi x ly la oc ma cua phm b nhan vao e x ly va Reset
ngat cua IC 8279 e chuan b cho phm tiep theo.
Khung ma d lieu cua phm b nhan nh hnh 6-39:
H|nh 6-3. Cou truc mo ph|m cuo |C 827.
Giai thch khung ma phm: IC 8279 tao ra mot ma tran phm 88 = 64 phm va 2 phm hoat
ong oc lap la CNTL va SHIFT ket noi vi 2 ngo vao cua IC 8279.
To hp 88 bao gom 8 ng RL[70] va 3 ng SL[20] (ng SL3 ch phuc vu quet
hien th) sau khi qua mach giai ma 3 sang 8 se c 8 ng.
Neu khong s dung phm to hp th 2 ngo vao CNTL va SHIFT cua IC 8279 phai noi mass
(0V) khi o 2 bit CNTL va SHIFT trong khung ma phm se bang 0.
Khi nhan 1 phm th IC 8279 se biet c phm nhan tng ng vi trang thai quet nao cua 3
bit SL[20] va chnh la 3 bit 5CAN, phm nhan tren se lam thay oi trang thai 1 trong 8 ng RL
qua ma hoa 8 sang 3 se tao ra ma nh phan 3 bit chnh la 3 bit kE1UkN trong khung ma d lieu.
Neu khong dung phm CNTL va SHIFT th to hp 6 bit se tng ng vi 64 phm khac nhau
tng ng vi so hex [00H3FH], khi nhan them phm to hp gom phm SHIFT va 1 trong 64 phm
th se co 64 ma khac tng ng vi so hex [40H7FH], khi nhan them phm to hp gom phm
CNTL va 1 trong 64 phm th se co 64 ma khac tng ng vi so hex [80HBFH], cuoi cung khi
nhan them phm to hp gom phm CNTL + SHIFT va 1 trong 64 phm th se co 64 ma khac tng
ng vi so hex [C0HFFH]. Vay tong cong co tat ca 256 to hp phm.
|V. 1H|E1 KE HE 1H0NC V| XU L:
Mot mnh vi x ly khong the hoat ong c ma phai ket hp vi bo nh ROM, RAM e lu
tr chng trnh va d lieu, phai ket hp vi IC ngoai vi e giao tiep xuat nhap tn hieu ieu khien
goi la he thong vi x ly hay kit vi x ly hay he thong ieu khien vi x ly.
Trong phan nay trnh bay cach thiet ke mot he thong ieu khien dung vi x ly thong qua cac
yeu cau ieu khien.
' / '
. + y
+++ +-: - +- :++ . + y .y-+ ++ +.
. + y 261
eu cou: Hoy th|et ke he thcng dung v| xu |y 8 b|t 8085A g|oc t|ep vc| 2 |co| bc nhc cc
dung |ucng 8Kbyte EPk0M vo 8 Kbyte kAM. C|oc t|ep vc| 2 |C ngco| v| 8255A vo |C 827 de
d|eu kh|en h|en th| 8 |ed 7 dcon vo mo tron bon ph|m gcm 24 ph|m.
+~+ :+ y-. ~.
He thong s dung vi x ly 8085A co 16 ng a ch nen co the giao tiep vi 64Kbyte bo
nh. Trong he thong nay ch s dung 16Kbyte la ap ng c.
Do vi x ly 8085A khi reset th a ch thanh ghi PC = 0000H nen bo nh EPROM luon c
thiet ke bat au tai a ch 0000H.
Vi x ly 8085A cho phep giao tiep vi IC ngoai vi thong qua 8 bit a ch thap va ng
ieu khien IO/M nen co the giao tiep vi 256 o nh ngoai vi IO.
++ ++ -+
Sau khi phan tch xong ta chon loai bo nh EPROM loai 2764 co dung lng 8Kbyte va Ram
6264 co dung lng 8Kbyte.
+-: - ~ ~ ~ +
Tong IC giao tiep vi vi x ly la 5 IC gom 2 IC nh va 3 IC ngoai vi. Do ieu kien bai thiet
ke khong bat buoc nen ta co the thiet ke giai ma nh sau:
Lap bang a ch bo nh cua vi x ly nh sau:
18 NH[ PHAN HEX
A5 A4 A3 A2 A A0 A A8 A7 A6 A5 A4 A3 A2 A A0
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0000
2764 0 0 0 FFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2000
6264 0 0 3FFF
8ong 6-20. 8ong d|o ch| bc nhc.
Trong bang a ch nh bat au la IC nh 2764 co 13 ng a ch A[120] nen trong bang
a ch cua vi x ly th o nh co a ch bat au tng ng vi 13 ng a ch A[120] eu bang
0. O nh cuoi cung co a ch tng ng vi 13 ng a ch A[120] eu bang 1. a ch tnh theo
so hex cua 8Kbyte EPROM la [0000H1FFFH].
Tiep theo la bo nh RAM 6264 cung co 13 ng a ch A[120] nen trong bang a ch cua
vi x ly th o nh co a ch bat au tng ng vi 13 ng a ch A[120] eu bang 0. O nh
cuoi cung co a ch tng ng vi 13 ng a ch A[120] eu bang 1. e phan biet 2 bo nh
nay oc lap vi nhau th phai dung cac ng a ch con lai t A[1315]. Trong bai nay tac gia s
dung ng a ch A13 bang cach cho A13 = 1 oi vi bo nh RAM. a ch tnh theo so hex cua
8Kbyte RAM la [2000H3FFFH].
Vi yeu cau nay th ta dung ng a ch A13 e ieu khien chip select phan biet 2 IC nh.
Lap bang a ch IO cua vi x ly nh sau:
18 NH[ PHAN HEX
A7 A6 A5 A4 A3 A2 A A0
+++ +-: - +- :++ . + y .y-+ ++ +.
. + y
8255A 0 0 0 0 0 0 0 0 00
0 0 0 0 0 0 03
8255A 0 0 0 0 0 0 0 04
2 0 0 0 0 0 07
827 0 0 0 0 0 0 0 08
3 0 0 0 0 0 0 0
8ong 6-2. 8ong d|o ch| |0.
Trong bang o nh bat au la IC nh 8255A th 1, moi IC 8255 co 2 ng a ch nen o nh
co a ch bat au tng ng vi 2 ng a ch A[10] eu bang 0. O nh cuoi cung co a ch
tng ng vi 2 ng a ch A[10] eu bang 1. a ch tnh theo so hex cua 8255A-1 la [0003].
Tiep theo la IC 8255A th 2, o nh co a ch bat au tng ng vi 2 ng a ch A[10]
eu bang 0. O nh cuoi cung co a ch tng ng vi 2 ng a ch A[10] eu bang 1. a ch
tnh theo so hex cua 8255A-2 la [0407].
Tiep theo la IC 8279 th 3, o nh co a ch bat au tng ng vi 1 ng a ch A[0] bang
0. O nh cuoi cung co a ch tng ng vi 1 ng a ch A[0] bang 1. a ch tnh theo so hex
cua 8279-3 la [0809].
Trong bang o IO th phai dung 2 ng a ch A[3:2] e phan biet 3 IC ngoai vi.
S o nguyen ly cua he thong nh hnh 6-40.
H|nh 6-40o. 5c dc nguyen |y cuo khc| v| xu |y vo |C chct.
+++ +-: - +- :++ . + y .y-+ ++ +.
Trong he thong s dung vi x ly 8085A va IC chot 74573 e tach a ch va d lieu, ket qua
c 8 ng d lieu D[7:0] va 16 ng a ch A[15:0], cac ng ieu khien M IO/ , RD, WR,
RST_O, CLK_O.
H|nh 6-40b. 5c dc nguyen |y cuo khc| bc nhc vc| v| xu |y.
IC4 la Eprom 2764 va IC5 la SRAM 6264: 13 ng a ch A[12:0] cua cac IC nh c ket
noi vi 13 ng a ch A[120] cua vi x ly, 8 ng d lieu D[7:0] cua bo nh c ket noi vi
8 ng d lieu cua vi x ly, chan ieu khien oc OE c ket noi vi chan RD cua vi x ly, chan
ieu khien ghi WR cua SRAM 6264 c ket noi vi WR cua vi x ly.
H|nh 6-40c. 5c dc nguyen |y cuo khc| 2 |C ngco| v| 8255.
. + y 263
+++ +-: - +- :++ . + y .y-+ ++ +.
Khi vi x ly truy xuat bo nh th chan M IO/ = 0, neu truy xuat Eprom 2764 th a ch A13
= 0 nen qua cong OR IC13A lam cho chan CS = 0: cho phep bo nh Eprom 2764. Trong khi o
A13 = 0 qua cong ao IC6A va cong OR IC13B lam chan CS1 = 1 se khong cho phep SRAM hoat
ong: bus a ch trang thai tong tr cao.
Tng t khi truy xuat bo nh SRAM 6264 th bo nh EPROM se trang thai khong cho
phep.
Khi vi x ly truy xuat bo nh th ng ieu khien M IO/ mc L, khi truy xuat IO th
mc H nen ng ieu khien nay dung e cho phep truy xuat bo nh hoac IO.
Trong s o nguyen ly hnh 6-40c a s dung IC 74238 giai ma a ch cho 2 IC 8255A va 1
IC 8279. Cac bus a ch, bus d lieu va ieu khien ket noi vi IC ngoai vi giong nh ket noi vi
bo nh. ng ieu khien M IO/ se ieu khien chan G1 cua IC 74138 e cho phep IC nay giai
ma khi vi x ly truy xuat IO, con khi truy xuat bo nh th chan M IO/ = 0 se khong cho phep IC
giai ma nen cac IC ngoai vi cung khong c phep, bus d lieu se trang thai tong tr cao.
H|nh 6-40d. 5c dc nguyen |y cuo khc| ngco| v| 827 vc| bon ph|m vo |ed 7 dcon.
H|nh 6-40e 5c dc nguyen |y cuo 8 |ed h|en th| quet.
- . + y
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-40f. 5c dc nguyen |y cuo khc| mo tron ph|m 8x3.
Vi bai toan thiet ke tren th cac IC giai ma a s dung gom 3 loai IC: cong OR - 7432, cong
Not 7404 va giai ma 74138. Vi kieu giai ma nay th s dung qua nhieu IC va ta co the giai ma
n gian tiet kiem IC hn bang cach xem cac IC ngoai vi 8255A va 8279 nh la cac IC nh co
cung dung lng 8Kbyte nh 2 bo nh trong he thong, bang a ch bo nh cua he thong c thiet
lap nh sau:
Lap bang a ch bo nh cua vi x ly nh sau:
18 NH[ PHAN HEX
A5 A4 A3 A2 A A0 A A8 A7 A6 A5 A4 A3 A2 A A0
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0000
2764 0 0 0 FFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2000
6264 0 0 3FFF
8255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4000
0 0 5FFF
8255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6000
2 0 7FFF
827 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8000
3 0 0 FFF
8ong 6-22. 8ong d|o ch| bc nhc gcm bc nhc vo |0.
. + y 265
+++ +-: - +- :++ . + y .y-+ ++ +.
Trong bang a ch bo nh 6-22 th e phan biet cac IC nh va ngoai vi ta phai dung 3 ng
a ch A[1513] va khi o ta ch can dung 1 IC giai ma 74138 va toan bo khoi bo nh va ngoai vi
c thiet ke lai nh hnh 6-41:
H|nh 6-4o. 5c dc nguyen |y cuo khc| bc nhc vo |C g|o| mo.
H|nh 6-4b. 5c dc nguyen |y cuo khc| ngco| v| 8255.
Khi thiet ke khoi ngoai vi 8255A theo kieu IO th lenh dung e truy xuat cac IO la lenh IN
va OUT, nhng khi ket noi theo kieu bo nh th lenh dung e truy xuat IO giong nh lenh dung
cho cac o nh.
Trong kieu giai ma nay th a ch cua 8255A 1 (IC7) co a ch la 4000H en 5FFFH
nhng do 8255A ch co 2 ng a ch A[10] nen ta ch can quan tam en 4 a ch nh sau:
a ch 4000H la a ch cua port A.
a ch 4001H la a ch cua port B.
a ch 4002H la a ch cua port C.
. + y
+++ +-: - +- :++ . + y .y-+ ++ +.
a ch 4003H la a ch cua t ieu khien.
Tng t a ch cua 8255A 2 (IC8) co a ch la 6000H en 7FFFH nhng ta ch can quan
tam en 4 a ch nh sau:
H|nh 6-4c. 5c dc nguyen |y cuo khc| 827.
a ch 6000H la a ch cua port A.
a ch 6001H la a ch cua port B.
a ch 6002H la a ch cua port C.
a ch 6003H la a ch cua t ieu khien.
a ch cua 8279 3 (IC9) co a ch la 8000H en 9FFFH nhng do 8279 ch co 1 ng a
ch A0 nen ta ch can quan tam en 2 a ch nh sau:
a ch 8000H la a ch truy xuat d lieu.
a ch 8001H la a ch truy xuat t ieu khien cua 8279.
/
eu cou: Hoy th|et ke he thcng dung v| xu |y 8 b|t 8085A g|oc t|ep vc| 32Kbyte bc nhc
EPk0M su dung 4 |C 2764 cc dung |ucng 8Kbyte vo 32 Kbyte kAM su dung |C 62256. C|oc t|ep
vc| 2 |C ngco| v| 8255A vo |C 827 de d|eu kh|en h|en th| 8 |ed 7 dcon vo mo tron bon ph|m
gcm 24 ph|m.
+~+ :+ y-. ~.
He thong s dung vi x ly 8085A co 16 ng a ch nen co the giao tiep vi 64Kbyte bo
nh. Trong he thong nay bo nh cua vi x ly a s dung het 64 kbyte bao gom 32Kbyte Eprom va
32 Kbyte Ram. Phan giao tiep vi 2 IC 8255 va IC 8279 th phai giai ma theo kieu IO.
+-: - ~ ~ ~ +
Tong IC giao tiep vi vi x ly la 8 IC gom 5 IC nh va 3 IC ngoai vi.
Lap bang a ch bo nh cua vi x ly nh sau:
. + y 267
+++ +-: - +- :++ . + y .y-+ ++ +.
` . + y
18 NH[ PHAN HEX
A5 A4 A3 A2 A A0 A A8 A7 A6 A5 A4 A3 A2 A A0
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0000
2764- 0 0 0 FFF
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2000
2764-2 0 0 3FFF
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4000
2764-3 0 0 5FFF
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6000
2764-4 0 7FFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8000
62256 FFFF
8ong 6-23. 8ong d|o ch| bc nhc chc 4 eprcm vo rom.
Trong bang o nh th 4 IC nh 2764 c thiet lap a ch giong nh bai 1, bo nh SRAM co
dung lng 32Kbyte se co 15 ng a ch nen a ch bat au tng ng vi 15 ng bang 0 va
a ch cuoi tng ng vi 15 ng bang 1. Nhn vao bang ta se thay 32kbyte EPROM phan biet
vi 32Kbyte Ram chnh la ng a ch A15.
Ta co the xem bo nh Ram 62256 nh la 4 IC nh 6264 khi o bang a ch bo nh c thiet
lap lai nh sau:
18 NH[ PHAN HEX
A5 A4 A3 A2 A A0 A A8 A7 A6 A5 A4 A3 A2 A A0
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0000
2764- 0 0 0 FFF
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2000
2764-2 0 0 3FFF
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4000
2764-3 0 0 5FFF
EPk0M 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6000
2764-4 0 7FFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8000
6264- 0 0 FFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A000
6264-2 0 8FFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C000
6264-3 0 DFFF
kAM 0 0 0 0 0 0 0 0 0 0 0 0 0 E000
6264-4 FFFF
8ong 6-24. 8ong d|o ch| bc nhc chc 4 rcm vo 4 rom.
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-42o. 5c dc nguyen |y cuo khc| v| xu |y vo |C chct.
Vi bang a ch bo nh nay th ta se dung 3 ng a ch A[15:13] giai ma thanh 8 ng
ieu khien e chon 8 chip select cho 8 IC nh: trong o 4 ng au tien dung e chon CS cho 4
Eprom, 4 ng con lai ta phai OR lai e ieu khien chon CS cua Ram 62256.
Phan giai ma IC ngoai vi giong nh bai thiet ke so 1.
S o nguyen ly cua he thong nh hnh 6-42.
H|nh 6-42b. 5c dc nguyen |y cuo khc| ngco| v|.
. + y 269
+++ +-: - +- :++ . + y .y-+ ++ +.
H|nh 6-42c. 5c dc nguyen |y cuo khc| bc nhc.
7 . + y
+++ +-: - +- :++ . + y .y-+ ++ +.
. + y 271
V. 8A| 1AP:
Bai tap so 1: Hay thiet ke mot he thong gom vi x ly 8085A giao tiep vi 32 Kbyte bo nh
Eprom s dung 8 IC nh 2732 co dung lng 4 Kbyte cho moi IC va 32Kbyte bo nh RAM dung 4
IC 6264. Cac IC ngoai vi bao gom 7 IC ngoai vi 8255 va 1 IC 8279.
Bai tap so 2: Hay thiet ke mot he thong gom vi x ly 8085A giao tiep vi 32 Kbyte bo nh
Eprom s dung 4 IC nh 2764 co dung lng 8 Kbyte cho moi IC va 16Kbyte bo nh RAM dung 2
IC 6264. Cac IC ngoai vi bao gom 1 IC ngoai vi 8255 va 1 IC 8279. Thiet ke sao cho toi u nhat.
Bai tap so 3: Hay thiet ke mot he thong gom vi ieu khien 89S52 giao tiep vi 32 Kbyte bo nh
Eprom s dung 4 IC nh 2764 co dung lng 8 Kbyte cho moi IC va 16Kbyte bo nh RAM dung 2
IC 6264. Cac IC ngoai vi bao gom 1 IC ngoai vi 8255 va 1 IC 8279. Thiet ke sao cho toi u nhat.
Bai tap so 4: Hay thiet ke mot he thong gom vi ieu khien 89S52 s dung 8Kbyte bo nh Flash
ROM noi va giao tiep vi 24Kbyte bo nh Eprom s dung IC nh 2764 co dung lng 8 Kbyte cho
moi IC va 32Kbyte bo nh RAM dung 4 IC 6264. Cac IC ngoai vi bao gom 3 IC ngoai vi 8255 va 1
IC 8279. Thiet ke sao cho toi u nhat.
return
+++ +-: - +- :++ . + y .y-+ ++ +.
7 . + y
Chng 7
V| |EU KH|EN C|A0 1|EP V0| LED
' 3/ .
~ 3~ :- +~+ ++
: ~ +++ :++ . .
3/ . 7 /
~ 3~ :- . ' - 7 ~+
: ~ +++ :++ ~ :- . ' - 7 ~+
3~ :- . ++-. - 7 ~+
~ +++ :++ . . ~ :- . ` - 7 ~+
V| |EU KH|EN C|A0 1|EP V0| PHM NHAN
' 3/ . ' / '\ /
3/ . \/ / \
V| |EU KH|EN C|A0 1|EP V0| ADC, DAC
' 3/ . / `3
3/ . / 7'3
3/ . / ``
V| |EU KH|EN C|A0 1|EP V0| kELA VA 0NC C0 8U0C
' 3/ . /
3/ . 3
V| |EU KH|EN C|A0 1|EP V0| LCD
' 3
/ /
\/ 3/ . .
- /
3 3 .
V| |EU KH|EN C|A0 1|EP V0| LED MA 1kAN
' 3 \/ /
/ / ./ 3 / \/ /
+++ 7 3~ :- ++ .+ . -. +-+
7 . + y
3 \/ /
V| |EU KH|EN C|A0 1|EP V0| kEAL1|ME
' 3 /\
/ 3 / /\ '``7
/ ./ /3 / / / /\ '``7
- / 3 / /\ \/ 3 ./ /
/ 3 / / / 3
\/ 3/ . . /\
7 3 / /\
8A| 1AP
LIET KE CAC HNH
H|nh 7-. C|oc t|ep v| d|eu kh|en vc| |ed dcn.
H|nh 7-2. C|oc t|ep v| d|eu kh|en vc| 32 |ed dcn.
H|nh 7-3. C|oc t|ep truc t|ep v| d|eu kh|en vc| |ed dcon.
H|nh 7-4. C|oc t|ep g|on t|ep v| d|eu kh|en vc| |ed dcn.
H|nh 7-5. C|oc t|ep v| d|eu kh|en vc| 8 |ed 7 dcon.
H|nh 7-6. C|oc t|ep v| d|eu kh|en vc| 8 |ed 7 dcon ch| dung pcrt 8 ducng.
H|nh 7-7. C|oc t|ep v| d|eu kh|en vc| 2 nut nhon.
H|nh 7-8. Luu dc d|eu kh|en.
H|nh 7-. C|oc t|ep v| d|eu kh|en vc| mo tron ph|m 4x4.
H|nh 7-0. Luu dc quet mo tron ph|m 4x4.
H|nh 7-. Luu dc chcng dc| sou kh| quet ph|m.
H|nh 7-2. 5c dc chon |C ADC 080.
H|nh 7-3. 5c dc khc| ben trcng |C ADC 080.
H|nh 7-4. C|oc t|ep v| d|eu kh|en vc| ADC 080.
H|nh 7-5. C|on dc thc| g|on cuo ADC 080.
H|nh 7-6. Luu dc d|eu kh|en ADC 080.
H|nh 7-7. 5c dc chon |C ADC |CL 70.
H|nh 7-8. C|oc t|ep v| d|eu kh|en A18552 vc| |C ADC |CL 70.
H|nh 7-. Luu dc d|eu kh|en ADC |CL 70.
H|nh 7-20. 5c dc chon |C DAC 0808.
H|nh 7-2. 5c dc g|oc t|ep v| d|eu kh|en vc| DAC 0808.
H|nh 7-22. 5c dc g|oc t|ep v| d|eu kh|en vc| re|oy.
H|nh 7-23. 5c dc g|oc t|ep v| d|eu kh|en vc| 4 re|oy quo |C g|oc t|ep ULN2803.
H|nh 7-24. H|nh dcng cc bucc |co| nhc.
H|nh 7-25. Coc cucn doy ben trcng dcng cc bucc.
H|nh 7-26. Coc cucn doy ben trcng dcng cc bucc.
H|nh 7-27. |eu kh|en k|ch cucn doy.
H|nh 7-28. |eu kh|en k|ch 2 cucn doy.
H|nh 7-2. |eu kh|en phc| hcp co ho|.
H|nh 7-30. 5c dc g|oc t|ep v| d|eu kh|en vc| dcng cc bucc quo |C ULN2803.
H|nh 7-3. H|nh cuo LCD
H|nh 7-32. C|oc t|ep v| d|eu kh|en 87C75 vc| LCD.
H|nh 7-33. C|oc t|ep v| d|eu kh|en A18552 vc| LCD.
+++ 7 3~ :- ++ .+ . -. +-+
. + y 273
H|nh 7-34. Dong scng d|eu kh|en cuo LCD.
H|nh 7-35. Luu dc d|eu kh|en LCD.
H|nh 7-36. Luu dc xuot |enh hcoc du ||eu ro LCD.
H|nh 7-37. Led mo tron 57.
H|nh 7-38. 5ong chu A.
H|nh 7-3. 5c dc moch d|eu kh|en.
H|nh 7-40. 5c dc chon cuo reo|-t|me D52C887.
H|nh 7-4. 1c chuc bc nhc ben trcng cuo keo|-t|me D52C887.
H|nh 7-42. C|oc t|ep v| d|eu kh|en vc| keo|-t|me.
LIET KE CAC BANG
8ong 7-. Mo quet d|eu kh|en |ed.
8ong 7-2. Mo 7 dcon cuo coc sc.
8ong 7-3. Mo quet xuot ro cct vo mo hong ducc dcc ve.
8ong 7-4. 8ong trong tho| chcn kenh ADC.
8ong 7-6. Coc chon cuo LCD
8ong 7-7. Coc |enh cuo LCD
8ong 7-8. Mo chu A.
8ong 7-. Quet thec coch 2.
8ong 7-0. Coc thcng sc t|n h|eu ngc ro 5QW.
8ong 7-. Coc d|nh dong cuo coc thcng sc thc| g|on.
+++ 7 3~ :- ++ .+ . -. +-+
|. V| |EU KH|EN C|A0 1|EP V0| LED:
' 3/ .
~ 3~ :- +~+ ++
Trong cac ng dung co s dung led n e ch th nen phan nay se trnh bay phan giao tiep
vi led n.
Cac thong so cua led n thng s dung la ien ap lam viec cua led khoang 2V, dong qua
led khoang t 10 en 20 mA.
Tra cac thong so lam viec cua moi ngo ra vi ieu khien th khi ngo ra mc H dong chay ra
(source) co gia tr rat nho khoang t 10A en 60A oi vi port1, 2, 3 va dong khoang t 80A
en 800A oi vi port0. Khi ngo ra mc L dong chay vao (sink) khoang 15mA oi vi cac
port1, 2, 3 (15mA/1 port) va dong khoang 20mA oi vi port0 (20mA/port0).
Khi giao tiep vi led n th se co 2 kieu giao tiep nh hnh 7-1.
LED
Y1
74ABT245
2
3
4
5
6
7
8
9
19
1
18
17
16
15
14
13
12
11
A0
A1
A2
A3
A4
A5
A6
A7
G
DIR
B0
B1
B2
B3
B4
B5
B6
B7
C1
C
330
R1
R C1
C
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
R1
R
VCC
LED
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
Y1
RESET
VCC
330
VCC
RESET
(o[ (b[
H|nh 7-. C|oc t|ep v| d|eu kh|en vc| |ed dcn.
- Hnh 7-1a ket noi trc tiep ngo ra cua port vi led th mc 1 led sang nhng khong u
dong cung cap cho led sang nen led sang m, neu muon sang ro th phai dung them IC
em hoac transistor e khuech ai. Hnh 7-1b dung IC em 74245 e ieu khien led.
- Hnh 7-2 ket noi trc tiep ngo ra cua port vi led th mc 0 led sang va u dong cung
cap cho led sang nen led sang ro khong can IC em.
7- . + y
+++ 7 3~ :- ++ .+ . -. +-+
470
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
VCC
470
470
470
LED
LED
470
LED
LED
470
Y1
470
LED
470 LED
LED 470
LED
470
LED
LED
LED
470
R1
10k
470
LED
LED
VCC
LED
470
470
470
470
470
LED
470
LED
LED
LED
LED
470
VCC
470
VCC
LED
470
470 LED
LED
C1
10
470
LED
470
RESET
LED
LED
470
LED
LED
470
470
470 LED
470
470
LED
LED
470
470
LED
LED
H|nh 7-2. C|oc t|ep v| d|eu kh|en vc| 32 |ed dcn.
ien tr han dong cho led c tnh nh sau:
=
=
= 491
6 . 5
45 . 0 8 . 1 5
mA
V V V
I
V V V
R
LED
OL LED CC
Nen chon loai LED sang ro, dong lam viec kha nho nen ien tr han dong khoang 470.
Chu y: khi s dung vi ieu khien tuy thuoc vao ket noi ta co the dung hoac khong dung ien
tr keo len nhng theo tac gia th tat ca cac port nen dung ien tr keo len, neu trong s o khong
trnh bay th ban oc hieu ngam la luon co ket noi.
: ~ +++ :++ . .
V du 1: Vi s o nguyen ly hnh 7-2, hay viet chng trnh ieu khien 32 led n chop tat:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dieu khien 32 led chop tat
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 0000h ;khai bao dia chi bat dau cua chuong trinh
lb: mov p0,#00h ;sang 8 led cua p0
mov p1,#00h ;sang 8 led cua p1
mov p2,#00h ;sang 8 led cua p2
mov p3,#00h ;sang 8 led cua p3
lcall delay ;goi chuong trinh con delay
mov p0,#0ffh ;tat 8 led cua p0
mov p1,#0ffh ;tat 8 led cua p1
mov p2,#0ffh ;tat 8 led cua p2
mov p3,#0ffh ;tat 8 led cua p3
lcall delay ;goi chuong trinh con delay
sjmp lb ;lam lai tu dau
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r6,#0ffh ;nap hang so delay FFH vao thanh ghi r6
de : mov r7,#0ffh ;nap hang so delay FFH vao thanh ghi r7
djnz r7,$ ;giam thanh ghi r7 di 1 va nhay khi r7 khac 00
. + y 275
+++ 7 3~ :- ++ .+ . -. +-+
7 . + y
djnz r6,de ;giam thanh ghi r6 di 1 va nhay khi r6 khac 00
ret ;thoat khoi chuong trinh con
end
V du 2: Vi s o hnh 7-2, hay viet chng trnh ieu khien 32 led sang dan va tat dan:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dieu khien 32 led sang dan len va tat dan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 0000h
mov p0,#0ffh ;tat port 0
mov p1,#0ffh ;tat port 1
mov p2,#0ffh ;tat port 2
mov p3,#0ffh ;tat port 3
;x xxx xxxxxx xxxxxxxxx xxxxxxxxxx xxxxx xxxxx x xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxx
;dieu khie dan len n sang
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
lb: lcall delay ;goi chuong trinh con delay
clr c ;lam cho bit C = 0
mov a,p ;chuyen noi dung p 0 ort0 vao thanh ghi A
rlc a ;xoay noi dung thanh ghi A sang trai
mov p0 ;chuyen noi dung port0 vao thanh gh ,a i A
mov a,p ;xoay noi dung p1 1
rlc a
mov p1,a
mov a,p2 ;xoay noi dung p2
rlc a
mov p2,a
mov a,p3 ;xoay noi dung p3
rlc a
mov p3,a
jc lb ;thuc hien tiep khi C=1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx
;dieu khien tat dan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
lb1: lcall delay ;goi chuong trinh con delay
setb c ;lam cho bit C = 1
mov a, ;chuyen noi dung p p0 ort0 vao thanh ghi A
rlc a ;xoay noi dung thanh ghi A sang trai
mov p0 ;chuyen noi dung port0 vao thanh gh ,a i A
mov a,p ;xoay noi dung p1 1
rlc a
mov p1,a
mov a,p2 ;xoay noi dung p2
rlc a
mov p2,a
mov a,p3 ;xoay noi dung p3
rlc a
mov p3,a
jnc lb1 ;thuc hien tiep khi C=0
sjmp lb ;sau khi 8 led sang het thi quay lai tu dau
;x xxx xxxxxx xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxx x xxxxxxxxxx x
;c n delay huong trinh co
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r6,#0ffh
de : mov r7,#0ffh
djnz r7,$
djnz r6,de
ret
end
+++ 7 3~ :- ++ .+ . -. +-+
8o| top : Hay viet chng trnh ieu khien 32 sang tat dan t trai sang phai, t phai sang
trai, t ngoai vao va t gia ra.
8o| top 2: Hay viet chng trnh giong nh bai 1 nhng moi kieu sang c thc hien 5 lan.
3/ . 7 /
~ 3~ :- . ' - 7 ~+
Trong ng dung ch co 1 led 7 oan th co nhieu cach giao tiep vi ieu khien vi led:
cua vi ieu khien ket noi vi led 7 oan - Giao tiep trc tiep: kieu nay se dung 1 port
loai Anode chung nh hnh 7-3. Kieu nay dung 8 ng IO.
- Giao tiep gian tiep: kieu nay ch dung 4 ng ket noi vi IC giai ma led 7 oan nh
hnh 7-4. Kieu nay dung 4 ng IO.
Y1
VCC
R2 330
C
10
R4 330
RESET
R8 330
R5 330
LED1
. + y 277
4
5
9
7
6
2
1
10
3
8
c
d
e
dp
A1
A2
a
b
f
g
VCC
R6 330
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
R1 330
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
P0.0
P0.1
P1.0/T2
P1.1/T2X
INT1
T0
T1
R3 330
R
10k
R7 330
H|nh 7-3. C|oc t|ep truc t|ep v| d|eu kh|en vc| |ed dcon.
ien tr han dong cho led c tnh nh sau:
=
I
R
LED
OL LED CC
= = 491
6 . 5 mA
Nen chon ien tr khoang 470
45 . 0 8 . 1 5 V V V V V V
.
Cou hc| : Hoy chc b|et uu khuyet d|em cuo 2 coch g|oc t|ep v| d|eu kh|en vc| |ed 7 dcon
c 2 h|nh tren.
+++ 7 3~ :- ++ .+ . -. +-+
R2 330
Y1
VCC
R
10k
R3 330
R7 330
C
10
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
VCC
VCC
R6 330
VCC
LED1
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
74247
7
1
2
6
4
5
3
13
12
11
10
9
15
14
D0
D1
D2
D3
BI/RBO
RBI
LT
A
B
C
D
E
F
G
R5 330
R4 330
RESET
VCC
R1 330
H|nh 7-4. C|oc t|ep g|on t|ep v| d|eu kh|en vc| |ed dcn.
: ~ +++ :++ ~ :- . ' - 7 ~+:
V du 3: Hay dung s o hnh 7-3, viet chng trnh ieu khien 1 led 7 oan em len t 0 en 9.
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dem len tu 0 den 9 hien thi tren 1 led
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
dem equ r2
led equ p1
org 0000h ;bat dau chuong trinh
mov dptr,#ma7doan ;
main0: mov dem,#00h ;dem=00
main1 mov a,dem
movc a,@a+dptr ;lay ma 7 doan
mov led,a ;goi ra led hien thi
lcall delay
inc dem ;tang gia tri dem
cjne dem,#10,main1 ;ss dem voi 10
ljmp main0 ;lam lai tu dau
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r5,##0ffh
loop1: mov r6,#0ffh
djnz r6,$
djnz r5,loop1
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;khai bao ma 7 doan tu so '0' den so '9'
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ma7doan: db 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h
end
7` . + y
+++ 7 3~ :- ++ .+ . -. +-+
. + y 279
Trong v du 3 chung ta can quan tam en bien co ten dem vi gia tr ban au bang 00h,
c giai ma sang ma 7 oan va gi ra led e hien th, tiep theo la thc hien chng trnh con
delay 1 giay, sau o tang gia tr em len 1 n v va kiem tra xem neu cha bang 10 th quay ve
giai ma va hien th so mi, neu bang 10 th xoa ve 00 va bat au lai chu ky mi.
V du 4: Hay dung s o hnh 7-4, viet chng trnh ieu khien 1 led 7 oan em len t 0 en 9.
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dem len tu 0 den 9 hien thi tren 1 led
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
dem equ r2
led equ p1
org 0000h ;bat dau chuong trinh
main0: mov dem,#00h ;dem=00
main1 mov a,dem
mov led,a ;goi ra led hien thi
lcall delay
inc dem ;tang gia tri dem
cjne dem,#10,main1 ;ss dem voi 10
ljmp main0 ;lam lai tu dau
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r5,##0ffh
loop1: mov r6,#0ffh
djnz r6,$
djnz r5,loop1
ret
end
Trong v du 4 th yeu cau giong v du 3 nhng trong mach ien a dung IC giai ma led 7 oan
nen trong chng trnh khong can phai tien hanh giai ma, ch can gi ma BCD ra port.
3~ :- . ++-. - 7 ~+
e lam quen vi cach thc giao tiep ieu khien nhieu led 7 oan th nen ket noi theo phng
phap quet. S o nguyen ly cua led 7 oan hnh 7-5.
Tai moi mot thi iem ta ch cho 1 transistor dan va 7 transistor con lai tat, d lieu gi ra se
sang tren led tng ng vi transistor dan. Sau o cho 1 transistor khac dan va gi d lieu hien th
cho led o, qua trnh ieu khien nay dien ra lan lt cho en khi het 8 led.
Vi toc o gi d lieu nhanh va do mat ta co lu anh nen ta nhn thay 8 led sang cung 1 luc.
Ma quet: mc logic 0 th transistor dan, mc logic 1 th transistor ngat c trnh bay bang
7-1.
MA HEX Mo quet d|eu kh|en coc trons|stcr
FE 0 1rons|stcr 0N
FD 0 1rons|stcr 2 0N
F8 0 1rons|stcr 3 0N
F7 0 1rons|stcr 4 0N
+++ 7 3~ :- ++ .+ . -. +-+
` . + y
EF 0 1rons|stcr 5 0N
DF 0 1rons|stcr 6 0N
8F 0 1rons|stcr 7 0N
7F 0 1rons|stcr 8 0N
8ong 7-. Mo quet d|eu kh|en |ed.
Ma 7 oan: trong he thong s dung led 7 oan loai Anode chung nen mc logic 0 th led sang
va mc logic 1 th led tat. Cac ma 7 oan cua cac so thap phan t 0 en 9 va cac so hex t A en F
c trnh bay bang 7-2:
5c hex dp g f e d c b o Mo sc hex
0 0 0 0 0 0 0 C0
0 0 F
2 0 0 0 0 0 A4
3 0 0 0 0 0 80
4 0 0 0 0
5 0 0 0 0 0 2
6 0 0 0 0 0 0 82
7 0 0 0 F
8 0 0 0 0 0 0 0 80
0 0 0 0 0 0 0
A 0 0 0 0 0 0 88
8 0 0 0 0 0 83
C 0 0 0 0 0 C2
D 0 0 0 0 0 A
E 0 0 0 0 0 86
F 0 0 0 0 8E
8ong 7-2. Mo 7 dcon cuo coc sc.
Cac ma khac co the t thiet lap.
+++ 7 3~ :- ++ .+ . -. +-+
. + y 281
VCC
b
R10
10k
LED5
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
f a
LED2
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
LED0
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
c
LED3
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
LED6
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
d
Q2
A564
g
Q5
A564
g
f
p27
p24
d
p
b
e
R13
10k
p
b
R8 330
p
P23
VCC
p p c
c
f
c
b
c
d
a
g
LED1
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
p
p22
VCC
c
P24
p26
g
p
d
b
p25
C
10
R6 330
g
VCC
c
a
d
R16
10k
d
R5 330
e
R15
10k
Q7
A564
d
a
P25
p21
RESET
VCC
g
Q3
A564
b
f
g
R1 330
e
LED7
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
e
P20
p23
R
10k
VCC
f
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
R2 330
R14
10k
d
Q4
A564
p
d
LED4
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
b
VCC
P26
R11
10k
R7 330
b
R17
10k
Q1
A564
a
c
e
Y1
p
R12
10k
f
P21
p20
f
R4 330
a
Q6
A564
e
a
g
f
e
VCC VCC
b
e
P27
c
R3 330
VCC
e
a f
Q0
A564
a
g
P22
H|nh 7-5. C|oc t|ep v| d|eu kh|en vc| 8 |ed 7 dcon.
Trong s o hnh 7-5 ta co the giam bt so lng ng ieu khien bang cach dung them IC
so ong vai tro quet va giai ma nh hnh 7-6.
R13
10k
c
a
Q3
A564
R10
10k
U5 7447
7
1
2
6
4
5
3
13
12
11
10
9
15
14
D0
D1
D2
D3
BI/RBO
RBI
LT
A
B
C
D
E
F
G
R
10k
P10
f
f
P13
Y7
f
a
LED1
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
VCC
e
p
g
Q7
A564
VCC
e
f
P11
c
d
b
a
P11
f
VCC
P15
LED0
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
VCC
c
a
R15
10k
e
P16
Y0
b
LED2
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
b
VCC
Q0
A564
b
R14
10k
LED4
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
VCC
g
VCC
e
R7 330
VCC
a
p
P12
R3 330
a
e
g
RESET
P12
b
R2 330
LED5
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
d R6 330
e
Y1
b
b
c
VCC
LED7
4
5
9
7
6
2
1
10
3
8
a
d
e
f
A1
A2
b
c
g
dp
d
Y4
U4 74S138
1
2
3
15
14
13
12
11
10
9
7
6
4
5
A
B
C
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
G1
G2A
G2B
f
P16
g
e
P17
b
p
P13
d
p
d
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
g
a
R5 330
R11
10k
Q1
A564
d
Y2
g
f
R4 330
R16
10k
p P10
VCC
e
e
Y5
C
10
VCC
d
f
R12
10k
p
a
g
c
Q2
A564
g
c
VCC
Q4
A564
d
P14
p
LED3
4
5
9
7
6
2
1
10
3
8
a
b
c
d
e
f
g
dp
A1
A2
a
Y3
g
Y1
b
P15
P17
f
P14
Y6
R17
10k
Q5
A564
R1 330
LED6
4
5
9
7
6
2
1
10
3
8
a
d
e
f
A1
A2
b
c
g
dp
c p
d
Q6
A564
c
c
H|nh 7-6. C|oc t|ep v| d|eu kh|en vc| 8 |ed 7 dcon ch| dung pcrt 8 ducng.
+++ 7 3~ :- ++ .+ . -. +-+
Trong s o hnh 7-6 ta dung IC 7447 ong vai tro giai ma so BCD sang ma 7 oan, IC 74138
co chc nang giai ma 3 ng sang 8 ng ieu khien 8 transistor. So lng ng ieu khien
can dung la 7 ng.
Trong 7 ng ieu khien cua port1 th vi ieu khien se dung 4 bit thap e gi ma BCD ra IC
giai ma ieu khien led 7 oan, 3 bit tiep theo dung e ieu khien IC giai ma cho phep 1 transistor
dan. ng tn hieu P1.7 ieu khien chan cho phep cua IC 74138: khi muon cho phep hien th th
P1.7 phai mc 0, khi cam th P1.7 phai mc H.
Trong phng phap quet s dung 8 led th thi gian c phep sang cua 1 led bang 1/8 chu
ky quet, thi gian tat bang 7/8 chu ky quet. Do thi gian led tat kha dai so vi thi gian led sang
nen phai quet nhanh th ta mi nhn thay tat ca cac led eu sang.
Vi led n sang chu ky va tat chu ky th tan so e mat ta nhn thay led sang lien tuc
(sang luon do mat lu anh) o c trong thc te phai > 40Hz.
Vi 8 led 7 oan dung phng phap quet th tan so quet o c trong thc te phai ln hn
>60Hz.
Cach tnh toan nh sau: vi dong lam viec bnh thng (khong quet) chon la mA I
LED
5 = , ap
lam viec nh mc V . Khi o ien tr cua moi led la: V
LED
8 . 1 =
=
=
= 550
5
45 . 0 8 . 1 5
mA
V V V
I
V V V
R
LED
OL LED CC
BT
Khi dung phng phap quet: th dong tc thi phai bang 40mA gap 8 lan. e tang dong th
co 2 cach: tang ap hoac giam ien tr. e phu hp vi ien ap lam viec nen ta thc hien cach
giam ien tr va ien tr c tnh lai nh sau:
=
=
= 75 , 68
40
45 . 0 8 . 1 5
_
mA
V V V
I
V V V
R
QUET LED
OL LED CC
Quet
Vay ien tr han dong giam va thng c chon nam trong pham vi t 68 en 220 nham
tang them cng o sang va bao ve qua dong.
Cou hc| 2: Hoy chc b|et uu khuyet d|em cuo 2 coch g|oc t|ep v| d|eu kh|en vc| 8 |ed 7 dcon
c 2 h|nh tren.
~ +++ :++ . . ~ :- . ` - 7 ~+
V du 5: Chng trnh em giay hien th tren led 7 oan s dung phng phap quet.
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dem len tu 00 den 59 hien thi tren 2 led
;su dung ngat timer t0 de dem chinh xac ve thoi gian
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
giay equ r2 ;gan bien dem giay la R2
bdn equ r1 ;gan bien dem ngat
quet equ p2
led7 equ p0
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; chuong trinh chinh
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 0000h ;bat dau chuong trinh
ljmp main ;nhay den chtr chinh
` . + y
+++ 7 3~ :- ++ .+ . -. +-+
. + y 283
org 000bh
ljmp int_t0 ;nhay den chtr con ngat timer0
main: mov tmod,#01h ;timer0: mod 1 - dem 16 bit
mov dptr,#ma7doan ;dptr quan ly vung ma 7 doan
clr tf0 ;xoa co tran
mov IE,#10000010B ;cho phep timer0 ngat
mov TH0,#high(-50000) ;khoi tao timer delay 50ms
mov TL0,#low(-50000)
setb tr0 ;cho phep timer bat dau dem
main0: mov giay,#00h ;giay=00
main1: mov bdn,#00 ;nap bien den so lan ngat
lcall gma
main2: lcall hthi ;goi chtr con hien thi
cjne bdn,#20,main2 ;chua dung 20 lan [tuc 1 giay]
mov a,giay ;chuyen giay sang A
add a,#1 ;tang giay len 1
da a ;hieu chinh so BCD trong A
mov giay,a ;tra lai cho giay
cjne giay,#60h,main1 ;ss giay voi 60h
ljmp main0 ;lam lai tu dau
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; chuong trinh con giai ma
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
gma: mov a,giay
anl a,#0fh ;xoa 4 bit cao hang chuc giay
movc a,@a+dptr ;lay ma 7 doan
mov 27h,a ;cat ma vao o nho 20h
mov a,giay
anl a,#0f0h ;xoa 4 bit thap hang dvi
swap a ;chuyen 4 bit cao xuong vi tri thap
movc a,@a+dptr ;lay ma 7 doan hang chuc
mov 26h,a
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;CHUONG TRINH CON NGAT TIMER0 SAU KHOANG THOI GIAN 50MS
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
int_t0: inc bdn ;tang bien dem giay len 1
mov TH0,#high(-50000) ;khoi tao timer delay 50ms
mov TL0,#low(-50000)
clr TF0
reti
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con hien thi
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
hthi: mov a,#01111111b ;ma quet
mov r0,#27h
ht1: mov led7,@r0
mov quet,a
lcall delay1
mov quet,#0ffh
dec r0
rr a ;chuyen sang led ke
cjne r0,#25h,ht1
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay1
+++ 7 3~ :- ++ .+ . -. +-+
`- . + y
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay1: mov r7,#0fh
djnz r7,$
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;khai bao ma 7 doan tu so '0' den so '9'
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ma7doan: db 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h
end
8o| top 3: Hay viet chng trnh em giay cho s o hnh 7-6.
8o| top 4: Hay viet chng trnh em phut giay cho ca 2 mach.
8o| top 5: Hay viet chng trnh em gi phut giay cho ca 2 mach.
||. V| |EU KH|EN C|A0 1|EP V0| PHM NHAN:
' 3/ . ' / /
Trong mot so he thong ieu khien luon co nut nhan hay phm nhan hay switch dung e giao
tiep gia con ngi va thiet b ieu khien v du nh may vi tnh, may tnh phai co ban phm e
nhap d lieu ma, thong tin, neu so lng nut nhan t khoang 1 en vai nut th nen ket noi 1 nut
nhan trc tiep vi 1 ngo vao nh hnh 7-7:
RESET
VCC
SW1
R2
10k
R1
10k
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
C1
C
SW2
VCC
R1
R
Y1
H|nh 7-7. C|oc t|ep v| d|eu kh|en vc| 2 nut nhon.
Khi cha nhan th cac ngo vao cua nut nhan mc logic H, khi nhan th se lam ngo ra
chuyen sang mc logic L. Trong hnh 7-7, 2 nut nhan c noi en ngo vao P2.0 va P2.1 cua vi
ieu khien. Chng trnh se kiem tra s thay oi trang thai cua mc logic va thc thi cac cong viec
tng ng vi tng nut nhan.
+++ 7 3~ :- ++ .+ . -. +-+
Vi vi ieu khien th cac port thng mc logic 1 nen 2 ien tr keo len la khong can thiet
nhng cac vi mach khac khong co tnh nang o neu khong co 2 ien tr keo len th khong hoat
ong c.
V du 6: Chng trnh ieu khien ong c DC co 2 nut nhan Start va Stop.
Lu o ieu khien cho chng trnh nh hnh 7-8:
H|nh 7-8. Luu dc d|eu kh|en.
Giai thch lu o:
Mac nhien khi cap ien th ong c ngng, ch kiem tra phm Start co c nhan hay khong:
neu khong nhan th tiep tuc ch, neu nhan th cho ong c chay. Kiem tra xem co nhan phm Stop
hay khong: neu khong nhan th ong c tiep tuc chay, neu co nhan stop th ket thuc chng trnh
quay lam lai t au.
Chng trnh c viet nh sau:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr dieu khien dong co: khi nhan nut start thi dong co quay
;khi nhan nut stop thi dong co ngung
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
start bit p2.0 ;phim sw1
stop bit p2.1 ;phim sw2
dk_dc equ p1.0 ;ngo ra dieu khien dong co
org 0000h
main1: clr dk_dc ;cho dong co ngung
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con dieu khien dong co quay thuan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
jb start,$ ;cho nhan start
jnb start,$ ;cho buong nut nhan
. + y 285
+++ 7 3~ :- ++ .+ . -. +-+
` . + y
setb dk_dc ;cho dong co chay
jb stop,$ ;cho nhan stop
jnb stop,$ ;cho buong nut nhan
sjmp main1
end
Hai nut nhan c ket noi vi 2 ngo vao cua port2. Bit P1.0 cua Port1 ket noi ieu khien
ong c.
3/ . \/ / \
Khi so lng nut nhan nhieu v du nh 16 phm, 20 phm, hoac nhieu hn nh ban phm may
tnh th phai dung cach ket noi kieu ma tran e giam bt so lng ng ket noi. S o ket noi vi
ieu khien vi 16 nut nhan nh hnh 7-9.
VCC
SWC
SW5
C3
H0
SW4
SW7
SW8
SWA
R2 10k
H1
SWE
SWB
SW1
C0
H2
R0 10k
SW3
SWD
C2
R3 10k
SW6 SW2
SW0
C1
R1 10k
SWF
SW9
H3
H|nh 7-. C|oc t|ep v| d|eu kh|en vc| mo tron ph|m 4x4.
Trong ban phm ma tran 44 se co 4 hang t H[0:3] ong vai tro la cac ngo vao bnh thng
mc H, va co 4 cot C[0:3] dung e xuat ma quet.
4 hang va 4 cot c ket noi vi 1 port cua vi ieu khien, vi ieu khien se xuat ma quet ra
cac cot va sau o oc d lieu cac hang ket qua cua qua trnh thc hien nh bang 7-3:
Mo quet xuot ro 4 cct Nhop du ||eu cuo 4 hong Nhon Ph|m
C3 C2 C C0 H3 H2 H H0
0 Khcng nhon ph|m
0 0 Nhon ph|m 5W0
0 0 Nhon ph|m 5W
0 0 Nhon ph|m 5W2
0 0 Nhon ph|m 5W3
0 Khcng nhon ph|m
0 0 Nhon ph|m 5W4
0 0 Nhon ph|m 5W5
+++ 7 3~ :- ++ .+ . -. +-+
. + y 287
0 0 Nhon ph|m 5W6
0 0 Nhon ph|m 5W7
0 Khcng nhon ph|m
0 0 Nhon ph|m 5W8
0 0 Nhon ph|m 5W
0 0 Nhon ph|m 5WA
0 0 Nhon ph|m 5W8
0 0 Khcng nhon ph|m
0 0 Nhon ph|m 5WC
0 0 Nhon ph|m 5WD
0 0 Nhon ph|m 5WE
0 0 Nhon ph|m 5WF
8ong 7-3. Mo quet xuot ro cct vo mo hong ducc dcc ve.
Trong cac ng dung ln nen dung IC chuyen dung quet ban phm ma tran va quet led 7 oan
hien th 8279 nh a trnh bay chng trc.
Chng trnh quet phm thng c viet dang chng trnh con va cac chng trnh khac se
goi chng trnh con quet phm e kiem tra xem co s tac ong t ben ngoai hay khong va neu co
th x ly theo yeu cau.
Khi ta nhan phm th thi gian nhan phm kha dai t vai chuc ms en hang giay, trong khi o
toc o cua vi x ly rat cao nen khi ta nhan phm th vi x ly se thc hien ngay lap tc va co the
thc hien nhieu lan neu thi gian nhan phm dai. ieu nay dan en khi ta nhan mot phm v du nh
ch A th se co nhieu ch A hien th tren man hnh nguyen nhan do doi phm nhan va do toc o
thc hien cua vi x ly nhanh, sau khi thc hien xong cong viec cua phm nhan o roi quay lai phat
hien ra phm van con nhan va tiep tuc thc hien tiep cho en khi nao buong phm th ngng.
Lu o xuat ma quet, kiem tra phm nhan va tao ma phm nh hnh 7-10:
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-0. Luu dc quet mo tron ph|m 4x4.
Lu o chong doi phm nh hnh 7-11:
`` . + y
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-. Luu dc chcng dc| sou kh| quet ph|m.
e chong doi phm ta thc hien nh sau: goi chng trnh con quet phm neu khong co nhan
phm th thoat, neu co th tien hanh goi lai chng trnh con 10 lan roi cat ma phm nhan, sau o
thc hien chng trnh quet ch cho buong phm va phai kiem tra 10 lan sau khi a buong phm
nhan, lay lai ma phm va thoat.
V du 7: Chng trnh giao tiep vi ieu khien vi ban phm ma tran 44 va 8 led 7 oan.
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;dung port3 ket noi voi ban fim ma tran 4x4
;dung port0 va port 2 ket noi dieu khien 8 led 7 doan quet
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
quet equ p2
led7 equ p0
. + y 289
+++ 7 3~ :- ++ .+ . -. +-+
3 . + y
mtphim equ p3 ;ket noi voi ma tran ban phim
maphim equ r5 ;luu tamma phim
maquet equ 11111110B ;FEH
org 0000h
mov dptr,#ma7doan
mov quet,#07fh ;xuat ma quet chi cho 1 led sang
mov led7,#7fh
main: lcall keypres ;goi chtr con quet phim
cjne a,#0ffh,main1
sjmp main
main1: lcall gma_hthi ;goi chtr con giai ma hien thi
sjmp main
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con giai ma fim nhan va hien thi ra 1 led 7 doan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
gma_hthi: movc a,@a+dptr
mov led7,a
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con quet phim va chong doi phim
;su dung cac thanh ghi: R4, R5, R6, R7, A
;neu khong nhan thi (A) = FF, neu nhan thi (A) chua ma phim nhan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
keypres: mov r4,#10 ;nhap so dem 10 lan
keypres1 : lcall KEY ;Neu co phim an thi co c=1
jc pn1 ;kiem tra tiep neu c = 1
ret ;Neu khong co phim nhan thi co c=0
pn1: djnz r4,keypres1 ;Quay ve lap lai chong nay
push acc ;Cat noi dung ma phim trong A
keypres2: mov r4,#10 ;Nhap so dem 10 lan cho nha phim
keypres3: lcall key ;Co phim nhan hay khong
jc keypres2 ;Co thi kiem tra lai
djnz r4,keypres3 ;Khong thi lap lai 50 lan va dam bao
pop acc ;Khoi phuc lai gia tri cho A
ret ;ket thuc mot chuong trinh con
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con quet phim
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
key: mov r7,#maquet ;bat dau voi cot so 0(feh)
mov r6,#4 ;Su dung r6 lam bo dem
mov maphim,#00
key1: mov mtphim,r7 ;xuat ma quet ra cot
mov a,mtphim ;Doc lai port1 de xu ly tiep theo
anl a,#0f0h ;xoa 4 bit thap la hang
cjne a,#0f0h,key2 ;co nhan fim thi nhay
mov a,r7
rl a ;xoay de chuyen den cot ke tiep
mov r7,a
mov a,maphim ;chuyen ma fim sang cot ke
add a,#4
mov maphim,a
djnz r6,key1 ;Neu nhu sau moi lan 1 cot ma khong
+++ 7 3~ :- ++ .+ . -. +-+
. + y 291
clr c ;clr c neu nhu khong co phim duoc an
mov a,#0ffh ;thoat voi ma trong a = FFh
ret
key2: swap a
key4: rrc a ;xoay sang phai tim bit 0
jnc key3 ;nhay neu (c)=0
inc maphim ;tang ma fim len cot ke
sjmp key4 ;tiep tuc cho den khi duoc (C)=0
key3: mov a,maphim
setb c
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;khai bao du lieu ma phim
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ma7doan: db 0c0h,0f9h,0a4h,0b0h,099h,092h,082h,0f8h
db 080h,090h,088h,083h,0c6h,0a1h,086h,08eh
end
Giai thch: chng trnh nay thc hien quet ban phm e kiem tra phm nhan, chong doi, tao
ma phm, giai ma phm va hien th tren 1 led 7 oan trong he thong 8 led ket noi theo phng
phap quet.
Ban phm ma tran ket noi vi port3, quet ieu khien 8 transistor dung port2, ieu khien cac
oan dung port0.
Ch dung 1 led e hien th nen xuat ma quet ra la 7FH = 0111111B e cho 1 transistor dan.
Mac nhien cho dau cham thap phan sang tren led 7 oan.
Goi chng trnh kiem tra xem co nhan phm hay khong?
Neu khong nhan phm th ma phm cuoi cung lu trong thanh ghi A =FFH, neu co nhan phm
th tien hanh chong doi bang cach thc hien delay va kiem tra lai xem phm nhan co con tac ong
hay khong? Neu khong con th xem nh lan nhan va roi khong co tac dung, neu con nhan th tien
hanh kiem tra xem nhan phm nao va thiet lap ma phm tng ng.
Ma phm se c giai ma sang ma 7 oan va c hien th tren led.
Neu nhan phm mi th ma cua phm mi se hien th con ma phm trc mat.
8o| top 6: Hay m rong chng trnh tren vi yeu cau nh sau: mac nhien hien th so 0, khi
nhan phm mi th phm cu se c dch sang led ke ben trai nh cach hien th tren may tnh
(calculator).
8o| top 7: Hay dung ban phm ma tran ieu khien ong c bc vi cac yeu cau sau:
Mot nut Start: khi nhan nut nay th ong c chay.
Mot nut Stop: khi nhan nut nay th ong c ngng.
Mot nut ao chieu: khi nhan nut nay th ong c ao chieu.
+++ 7 3~ :- ++ .+ . -. +-+
3 . + y
|||. V| |EU KH|EN C|A0 1|EP V0| V| MACH CHUEN 0| ADC:
' 3/ . . / `3
Vi mach chuyen oi tn hieu tng t sang tn hieu so co rat nhieu loai phan biet theo so
kenh va so bit. Mot vi mach chuyen oi thng c s dung nhieu la ADC 0808 hoac ADC 0809.
Cac thong so lam viec cua vi mach nh sau:
- ADC 8 bit.
- Thi gian chuyen oi 100s.
- De giao tiep vi vi x ly hoac vi ieu khien.
- Cac ngo ra 3 trang thai co chot.
- Cac ngo vao a ch co chot.
- Dung nguon 5V.
S o chan cua IC ADC 0809 nh hnh 7-12:
H|nh 7-2. 5c dc chon |C ADC 080.
Bang trang thai IC ADC 0809 nh bang 7-4:
8ong 7-4. 8ong trong tho| chcn kenh ADC.
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-3. 5c dc khc| ben trcng |C ADC 080.
S o ket noi vi ieu khien vi IC ADC 0809 nh hnh 7-14:
C1
C
R1
R
IN1
IN5
IN7
VCC
v R1
10k
IN2
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
C2
0.001
IN3
IN6
IN0
Y1
VCC
RESET
1K R2
IN4
VCC
ADC0809
10 9
7
17
14
15
8
18
19
20
21
6
22
11
12
16
26
27
28
1
2
3
4
5
25
24
23
CLK OE
EOC
D0
D1
D2
D3
D4
D5
D6
D7
START
ALE
VCC
REF+
REF-
IN0
IN1
IN2
IN3
IN4
IN5
IN6
IN7
A0
A1
A2
U2A
7414
1 2
VCC
H|nh 7-4. C|oc t|ep v| d|eu kh|en vc| ADC 080.
Trong he thong hnh 7-14, vi ieu khien s dung 15 ng ieu khien e giao tiep vi
ADC0809, trong o co 8 ng dung e nhan d lieu so sau khi chuyen oi (D
7
:D
0
), 3 ng dung
e xuat a ch chon 1 trong 8 kenh (A
2
A
1
A
0
), 1 ng dung e xuat tn hieu chot a ch (ALE), 1
ng dung e xuat tn hieu ieu khien ADC0809 bat au chuyen oi (START), 1 ng dung e
xuat tn hieu ieu khien cho phep xuat d lieu (OE), 1 ng dung e nhan tn hieu bao qua trnh
chuyen oi ket thuc e tien hanh nhan d lieu.
. + y 293
+++ 7 3~ :- ++ .+ . -. +-+
Gian o thi gian cua IC ADC0809 nh hnh 7-15:
H|nh 7-5. C|on dc thc| g|on cuo ADC 080.
Trong ng dung ta co the dung 1 ng ieu khien ca 2 tn hieu ALE va START. Sau khi ra
lenh ADC thc hien qua trnh chuyen oi th vi ieu khien se kiem tra tn hieu EOC xem chung
xuong mc thap la bao hieu qua trnh chuyen oi ang xay ra, va ch cho en khi tn hieu nay len
mc cao tr lai th qua trnh chuyen oi ket thuc mi tien hanh nhan d lieu.
Ta co the khong thc hien theo cach kiem tra va trnh bay bang cach ch ADC chuyen oi
xong sau 1 khoang thi gian t
CONV
ln nhat la 116s theo so tay tra cu (datasheet) th bat au
nhan d lieu. Khi o ta khong can phai dung 1 ng tn hieu kiem tra chan EOC va chan nay bo
trong.
Lu o ieu khien ADC 0809 chuyen oi 1 kenh theo 2 cach va trnh bay nh hnh 7-16:
3- . + y
+++ 7 3~ :- ++ .+ . -. +-+
(a) (b)
H|nh 7-6. Luu dc d|eu kh|en ADC 080.
Lu o (a) ieu khien chuyen oi bang cach ch tn hieu tra li EOC, lu o (b) th dung
delay. Thi gian ch phai ln hn thi gian chuyen oi cho trong datasheet.
V du 7: Chng trnh giao tiep vi ieu khien vi ADC 0809 va 8 led 7 oan.
Yeu cau: dung 1 kenh th 0 va d lieu sau khi chuyen oi dang so hex hien th tren 2 led.
Ket qua hien th nam trong khoang t 00 en FF.
quet equ p0 ;dieu khien quet transistor
led7 equ p3 ;dieu khien cac doan a,b,c,...
inadc equ p1 ;nhap du lieu tu adc
control equ p2 ;dieu khien adc
;ALE bit p0.3
start bit p2.3
org 0000h
mov dptr,#ma7doan
main: lcall ctcd_adc ;goi chtr con chuyen doi du lieu
lcall gma_hex_bcd ;goi chtrinh con giai ma so hex sang led 7 doan
lcall delayhthi
ljmp main ;nhay ve chuyen doi tro lai
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtrinh con chuyen so hex thanh so BCD va sau do thi chuyen
. + y 295
+++ 7 3~ :- ++ .+ . -. +-+
3 . + y
;ma BCD thanh ma 7 doan de hien thi so thap phan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
gma_hex_bcd:
mov b,#10 ;chuyen so hex sang ma BCD
div ab
mov 10h,b ;luu hang don vi BCD
mov b,#10
div ab ;(a) chua so hang tram, (b) chua hang chuc
movc a,@a+dptr
mov 25h,a ;cat so hang tram
mov a,b
movc a,@a+dptr
mov 26h,a
mov a,10h
movc a,@a+dptr
mov 27h,a
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con chuyen doi du lieu analog sang so ket qua luu trong A
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ctcd_adc: mov control,#00000000B ;goi ra port
setb start ;start = 1
nop
nop
clr start
lcall delayhthi ;goi chtr con delay co hien thi
mov a,inadc ;doc du lieu sau khi chuyen doi
ret
;xxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx
;chuong trinh con co ghep chtr con hien thi
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delayhthi: mov 7eh,#20
pqn: mov 7fh,#30
delpqn: lcall hthi ;goi chuong trinh con hien thi
djnz 7fh,d q elp n
djnz 7eh,pqn
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con hien thi ket qua dang so hex sau khi giai ma ra led
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
hthi: mov led7,27h ;lay du lieu tung kenh
mov quet,#111 ;goi ma quet cho 1 led 11110b sang
lcall delay10
mov quet,#0ffh ; tat het de chong lem
mov led7,26h ;lay du lieu tung kenh
mov quet,#11111 ;goi ma quet cho 1 led sa 101b ng
lcall delay10
mov quet,#0ffh ; tat het de chong lem
ret
;x xxx xxxxxx xxxxxxxxxxx xx xxxxxxxxxxxxxxxxxxxxx xxxxx xxxxx x xxx xxxxx xxxxxxxxxxxx
delay10: mov 7ch,#50h
djnz 7ch,$
ret
+++ 7 3~ :- ++ .+ . -. +-+
. + y 297
;khai bao ma 7 doan tu so '0' den so '9'
ma7doan: db 0C0h,0F9h,0A4h,0B0h,099h,092h,082h,0F8h
db 080h,090h,088h,083h,0c6h,0a1h,086h,08eh
end
Trong chng trnh s dung cac khai bao: quet va led7 la 2 port giao tiep ieu khien 8
led 7
i gian ch th vi
ieu
0 va ket qua hien th dang so BCD
oan, inadc la port ket noi vi 8 ng d lieu so ngo ra cua adc 0809, control la port
ket noi ieu khien chon kenh va cac tn hieu ieu khien Start va ALE noi chung.
Trong chng trnh s dung delay e ch ADC chuyen oi xong. Trong th
khien se thc hien quet 8 led 7 oan e hien th d lieu.
8o| top 8: Hay viet chng trnh chuyen oi kenh th
tren 3 led.
8o| top : Hay viet chng trnh chuyen oi ADC kenh th 0 va kenh th 1 hien th tren 3
led 7 oan.
. / 7'3 3/ .
Vi vi mach ADC 0809 ch chuyen oi 8 bit, khi co nhng yeu cau vi so bit nhieu hn th vi
mach
i tng thch vi TTL to chc theo byte.
m sat va ieu khien qua
- ap 15V
P-P
.
pA.
s dung thach anh 3.58MHz.
o ICL 7109 nh hnh 7-17
hien ang c s dung pho bien la ICL7109. Cac thong so lam viec cua vi mach nh sau:
- ADC 2 o doc 12 bit.
- Cac ngo ra 3 trang tha
- Co cac ngo vao RUN/HOLD va ngo ra STATUS dung e gia
trnh chuyen oi.
Nhieu co gia tr th
- Dong ngo vao rat nho khoang 1
- Toc o chuyen oi 30 lan / 1giay.
- Mach dao ong tch hp ben trong
- Dung nguon 5V.
S chan cua IC ADC
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-7. 5c dc chon |C ADC |CL 70.
S o giao tiep vi ieu khien vi ADC ICL 7109 nh hnh 7-18:
+5V
C4
0.33
C2
1M
C5
0.15
Y1
VCC
R2 1M
C1
C
R3
5K
R4
20K
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
J1
CON2
1
2
R1
R
-5V
C3
1
+5V
RESET
VCC
Y2
3.58MHz
R5 22K
U1
ICL7109
35
34
16
15
14
13
12
11
10
9
8
7
6
5
36
39
25
23
22
32
21 24
26
27
33
40
28
20
19
18
30
31
37
38
29
17
4
3
2
IN+
IN-
B1
B2
B3
B4
B5
B6
B7
B8
B9
B10
B11
B12
REFIN+
REFIN-
BUFOSCOUT
OSCOUT
OSCIN
INT
MODE OSCSEL
RUN/HOLD
SEND
COM
V+
V-
CE/LOAD
HBEN
LBEN
BUFF
AZ
REFCAP+
REFCAP-
REFOUT
TEST
OR
POL
STATUS
H|nh 7-8. C|oc t|ep v| d|eu kh|en A18552 vc| |C ADC |CL 70.
Trong s o hnh 7-18, vi ieu khien dung 12 ng ket noi vi 12 ng d lieu so ngo ra
cua ADC 7109 t B12B1. 4 ng ieu khien bao gom: ng ieu khien chon chip CE, ng
3` . + y
+++ 7 3~ :- ++ .+ . -. +-+
kiem tra cc tnh dng khi POL mc H, ng kiem tra trang thai STATUS mc H khi d lieu
a c chot va ng kiem tra tn hieu OR cho biet tn hieu tng t ngo vao co vt qua ngng
hay khong.
oi vi ADC 7109 th qua trnh ieu khien chuyen oi n gian hn v no ch co 1 kenh va
chuyen oi lien tuc. Lu o chuyen oi nh hnh 7-19
H|nh 7-. Luu dc d|eu kh|en ADC |CL 70.
Khi muon oc d lieu t ADC th ieu khien cho CE xuong mc 0, tien hanh kiem tra xem
tn hieu bao tran e biet co b tran hay khong: neu b tran th d lieu so nhan ve khong co y ngha
v chung khong ung, neu khong b tran th tien hanh nhan d lieu, cho CE len mc 1 tr lai. Ket
thuc 1 chu ky va tien hanh x ly ket qua.
3/ . . / ``
DAC la vi mach chuyen oi tn hieu so sang tn hieu tng t, vi mach thng c s dung
pho bien la DAC 0808 - 8 bit:
S o chan DAC 0808 nh hnh 7-20:
. + y 299
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-20. 5c dc chon |C DAC 0808.
S o giao tiep vi ieu khien vi DAC 0808 nh hnh 7-21:
-12V
-
+
IC2
OP07
3
2
6
7
48
1
R2
5K
C2
C
VCC
R4
5K
Y1
VCC
IC1 DAC 0808
5
6
7
8
9
10
11
12
14
15
16
4
1
3
3
2
D0
D1
D2
D3
D4
D5
D6
D7
VREF+
VREF-
COMP
OUT
V
c
c
-
V
c
c
G
N
D
5V -12V
R3
5K
VCC
R1
R
-12V
+12V
C1
C
J1
ANALOG OUT
1
2
RESET
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
H|nh 7-2. 5c dc g|oc t|ep v| d|eu kh|en vc| DAC 0808.
Trong s o giao tiep vi ieu khien dung port 1 e xuat d lieu so en DAC 0808, tn hieu
ngo ra cua DAC c a qua mach khuech ai dung op-amp OP07 hoac op-amp 741, bien tr R2
dung e chnh o phan giai cho DAC.
|V. V| |EU KH|EN C|A0 1|EP V0| kELA VA 0NC C0 8U0C:
' 3/ . . /
Trong cac ng dung giao tiep ieu khien cac thiet b s dung nguon 220VAC th phai dung
cac linh kien giao tiep trung gian. Cac linh giao tiep bao gom relay, SCR, TRIAC,
. + y
+++ 7 3~ :- ++ .+ . -. +-+
Trong phan nay se trnh bay phan giao tiep vi relay.
Khi s dung relay can phai biet cac thong so: ien ap lam viec cua cuon day, dong lam viec
cua cuon day va dong ien lam viec cua tiep iem e ieu khien tai.
S o mach giao tiep vi ieu khien vi 2 relay nh hnh 7-22:
Trong s o s dung relay dung nguon 12V, transistor chon co dong lam viec I
C
phai ln hn
dong lam viec cua cuon day relay.
Moi relay thng co 1 tiep iem thng h va 1 tiep iem thng ong.
VCC
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
VCC
D1
Q2
+12V
R1
R
RESET
Y1
C1
C
Q1
R12
10K
R2
RELAY
5
21
34
5
21
34
+12V
D2
R1
RELAY
5
21
34
5
21
34
10K
R11
H|nh 7-22. 5c dc g|oc t|ep v| d|eu kh|en vc| re|oy.
Trong s o hnh 7-22 co 1 khuyet iem: neu ta s dung tiep iem thng h cua relay e
ieu khien tai la ong c th khi vi ieu khien mi c cap ien th mach auto reset se thc hien
lam cac ngo ra cua cac port mc H lam cac transistor dan relay ong ong c chay. Het
thi gian reset th vi ieu khien mi thc hien chng trnh tat ong c, s kien nay se xay ra
tng t khi ta nhan nut reset he thong. ieu nay nguy hiem cho cac oi tng c ieu khien
bang ong c.
e khac phuc khuyet iem tren bang cach them 1 cong ao ngo ra trc khi ieu khien
transistor hoac dung IC giao tiep ULN2803 nh hnh 7-23:
. + y 301
+++ 7 3~ :- ++ .+ . -. +-+
VCC
+12V
+12V
+12V
R2
RELAY
5
21
34
5
21
34
IC2
ULN2803
10
1
2
3
4
5
6
7
8
18
17
16
15
14
13
12
11
9
COM
IN1
IN2
IN3
IN4
IN5
IN6
IN7
IN8
OUT1
OUT2
OUT3
OUT4
OUT5
OUT6
OUT7
OUT8
GND
R3
RELAY
5
21
34
5
21
34
R
10k
R1
RELAY
5
21
34
5
21
34
VCC
+12V
R4
RELAY
5
21
34
5
21
34
+12V
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
RESET
+12V
Y1
RN2
10k
1
2
3
4
5
6
7
8
9
C
10
H|nh 7-23. 5c dc g|oc t|ep v| d|eu kh|en vc| 4 re|oy quo |C g|oc t|ep ULN2803.
Trong s o tren ULN 2803 la IC giao tiep em ao: vi moi ngo ra chu dong chay vao len
en 500mA, ien ap lam viec len en 50V hoac 95V tuy theo loai. Ngo vao tng thch vi ho
TTL. Co diode bao ve ngo ra. Trong mach s dung 4 ngo ra cua vi ieu khien c a qua 2
cong NOT nen khi vi ieu khien b reset th trang thai ngo ra cua cac port bang 1, ngo ra cua IC
ULN 2803 cung bang 1 tng ng vi nguon 12V nen relay khong dan. Ngc lai neu ngo ra cua
vi ieu khien bang 0 th relay dan.
3/ . . 3
ong c bc co chc nang ieu khien cac thiet b di chuyen vi khoang cach ngan v du
nh ieu khien di chuyen au oc a. Tuy thuoc vao cong suat cua ong c ma s dung cac mach
giao tiep cho phu hp. Thng th cac ong c bc luon i kem vi mach ieu khien va ch nhan
lenh t vi x ly hay vi ieu khien.
Hnh ong c bc loai nho dung trong o a mem 1.2 MB nh hnh 7-24:
H|nh 7-24. H|nh dcng cc bucc |co| nhc.
S o day ben trong ong c bc nh hnh 7-25:
. + y
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-25. Coc cucn doy ben trcng dcng cc bucc.
ong c bc n cc co 5 ngo ra: trong o co 4 au day coil1coil4 dung e ieu khien con
au day common dung e noi nguon cung cap. K hieu cac mau day theo qui nh nh hnh 7-26:
H|nh 7-26. Coc cucn doy ben trcng dcng cc bucc.
ong c bc n cc co 6 ngo ra: trong o co 4 au day coil1coil4 dung e ieu khien, 2
au day con lai chnh la day common c tach ra lam 2, khi dung phai noi ca 2 vi nguon cung
cap. Hai day common nay co cung mau.
Cach xac nh cac cuon day cua ong c bc theo trnh t nh sau:
Nc| cucn doy ccmmcn vc| ngucn cung cop
Chcn mct dou doy vo nc| dou doy dc xucng moss
vo g|o su dou doy dc |o doy thu 4 hoy xem h|nh ben
pho| tucng ung.
C|u nguyen bucc tren
1|ep thec chcn dou doy trcng 3 dou ccn |o| vo nc|
vc| moss quon sot thoy rctcr quoy nhe bucc thec
ch|eu k|m dcng hc th| dc |o cucn doy thu 3.
1hoc cucn doy thu 3 ro khc| moss
1|ep thec chcn dou doy trcng 2 dou ccn |o| vo nc|
vc| moss quon sot thoy rctcr quoy nhe bucc ngucc
ch|eu k|m dcng hc th| dc |o cucn doy thu .
. + y 303
+++ 7 3~ :- ++ .+ . -. +-+
- . + y
Cucn doy ccn |o| |o cucn doy thu 2 nhung to cung
cc the k|em tro bong coch nc| nc vc| moss quon sot
thoy rctcr khcng quoy.
Cach xac nh cuon day common bang cach chon 1 au day tuy y lam day common, o ien
tr vi 4 au day con lai: neu 4 gia tr ien tr eu bang nhau th au day a chon la au common,
neu khong bang th chon au day khac va thc hien lai se tm ra c au day common.
Trnh t ieu khien ong c bc gom co 3 kieu: kieu kch 1 cuon day, kieu kch 2 cuon day
va cach ieu khien na bc.
a. Kieu ieu khien kch 1 cuon day nh hnh 7-27:
H|nh 7-27. |eu kh|en k|ch cucn doy.
Trong hnh tren th moi 1 thi iem ch co 1 cuon day trang thai on. ong c se quay moi
bc khi thay oi trang thai ieu khien.
Muon quay ao chieu th trnh t ieu khien tien hanh theo chieu ngc lai.
b. Kieu ieu khien kch 2 cuon day nh hnh 7-28:
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-28. |eu kh|en k|ch 2 cucn doy.
c. Phoi hp 2 cach ieu khien e ieu khien na bc nh hnh 7-29:
. + y 305
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-2. |eu kh|en phc| hcp co ho|.
Trong cach ieu khien na bc co tat ca 8 trang thai khac nhau.
. + y
+++ 7 3~ :- ++ .+ . -. +-+
S o mach giao tiep vi ieu khien vi ong c bc nh hnh 7-30:
RN2
10k
1
2
3
4
5
6
7
8
9
VCC
IC2
ULN2803
10
1
2
3
4
5
6
7
8
18
17
16
15
14
13
12
11
9
COM
IN1
IN2
IN3
IN4
IN5
IN6
IN7
IN8
OUT1
OUT2
OUT3
OUT4
OUT5
OUT6
OUT7
OUT8
GND
Coil4
Coil1
Y1
Coil3
+12V
RESET
Coil2
DONG CO BUOC
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
R
10k
C
10
VCC
H|nh 7-30. 5c dc g|oc t|ep v| d|eu kh|en vc| dcng cc bucc quo |C ULN2803.
Chan common cua ong c bc phai noi vi nguon ma ong c lam viec. Neu ong c cong
suat ln vi dong lam viec ln hn dong cua IC ULN2803 th nen dung transistor.
V du 8: Chng trnh ieu khien ong c bc quay lien tuc 1 chieu: dung kieu ieu khien
kch 1 cuon day:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr dieu khien step motor quay lien tuc theo 1 chieu, thoi gian delay dai thi dong co quay cham
;thoi gain nho thi dong co quay nhanh, thoi gian qua nho thi dong co khong dap ung duoc se dung yen
;dung 1 port de dieu khien motor qua ic giao tiep 2803 - dung 4 bit thap hoac 4 bit cao
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
outstep equ p1
org 0000h
main: mov outstep,#10001000b
lcall delay
mov outstep,#01000100b
lcall delay
mov outstep,#00100010b
lcall delay
mov outstep,#00010001b
lcall delay
sjmp main
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r6,#0
del: mov r7,#0
djnz r7,$
djnz r6,del
ret
end
V du 9: Chng trnh ieu khien ong c bc quay 1 vong roi ngng:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
. + y 307
+++ 7 3~ :- ++ .+ . -. +-+
` . + y
;chtr dieu khien step motor quay 1 vong roi ngung luon
;dung 1 port de dieu khien motor qua ic giao tiep 2803
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
outstep equ p1
sobuoc equ 50 ;loai dco: 50x4=200 buoc
org 0000h
mov dptr,#datastep ;nap dia chi quan ly ma
mov r0,#0
mov r2,#sobuoc ;50 chu ky la vong
main2: mov r1,#4 ;1 chu ky 8 buoc
main1: mov a,r0
movc a,@a+dptr
mov outstep,a
lcall delay
inc r0
anl 00h,#03h ;anl r0 voi 00000011b
djnz r1,main1
djnz r2,main2
sjmp $ ;dung lai
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con delay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r6,#10h
del: mov r7,#0
djnz r7,$
djnz r6,del
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;khai du lieu dieu khien dong co buoc
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
datastep: db 10001000b
db 01000100b
db 00100010b
db 00010001b
end
ong c s dung trong bai v du nay co thong so la 1 vong 200 bc.
8o| top 0: Hay thiet ke mach ieu khien 1 ong c bc vi cac nut nhan la Start, Stop, Inv
va giao tiep vi 4 led 7 oan. Viet chng trnh ieu khien ong c bc vi yeu cau nh sau: khi
nhan nut Start th ong c chay va hien th so bc tren led 7 oan, khi nhan nut stop th ong c
ngng, khi nhan nut ao chieu th ong c ao chieu.
V. V| |EU KH|EN C|A0 1|EP V0| LCD:
' 3
cac phan giao tiep vi led 7 oan co han che v ch hien th c cac so t 0 en 9 hoac so
hex t 0 en F khong the nao hien th c cac thong tin k t khac, nhng chung se c hien
th ay u tren LCD.
+++ 7 3~ :- ++ .+ . -. +-+
LCD co rat nhieu dang phan biet theo kch thc t vai k t en hang chuc k t, t 1 hang
en vai chuc hang. V du LCD 162 co ngha la co 2 hang, moi hang co 16 k t. LCD 204 co
ngha la co 4 hang, moi hang co 20 k t.
LCD 162 nh hnh 7-31:
H|nh 7-3. H|nh cuo LCD
/ /
LCD co nhieu loai va so chan cua chung cung khac nhau nhng co 2 loai pho bien la loai 14
chan va loai 16 chan, s khac nhau la cac chan nguon cung cap, con cac chan ieu khien th khong
thay oi, khi s dung loai LCD nao th phai tra datasheet cua chung e biet ro cac chan. S o
chan cua LCD nh bang sau:
8ong 7-6. Coc chon cuo LCD
Trong 14 chan cua LCD c chia ra lam 3 dang tn hieu nh sau:
.:c c|:r c:j rq.or: Chan so 1 la chan noi mass (0V), chan th 2 la Vdd noi vi nguon +5V.
Chan th 3 dung e chnh contrast thng noi vi bien tr.
.:c c|:r c.e. ||.er: Chan so 4 la chan RS dung e ieu khien la chon thanh ghi. Chan R/W
dung e ieu khien qua trnh oc va ghi. Chan E la chan cho phep dang xung chot.
.:c c|:r c. |.e. !7!: Chan so 7 en chan so 14 la 8 chan dung e trao oi d lieu gia
thiet b ieu khien va LCD.
\/ 3/ . .
Trong phan nay se trnh bay phan giao tiep vi ieu khien vi LCD. Hnh 7-32 se trnh bay
ket noi dung vi ieu khien 87C751 cua cong ty HANTRONIX t tai lieu tren Internet.
. + y 309
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-32. C|oc t|ep v| d|eu kh|en 87C75 vc| LCD.
Co the dung vi ieu khien AT89S52 e ieu khien LCD vi s o ket noi nh hnh 7-33:
Y1
D6
VCC
VCC
VO
D2
RESET
D4
D7
R3
10K
RS
LCD
VDD
VCC
E
C1
C
D0
D3
R/ W
AT89S52
21
22
23
24
25
26
27
28
17
16
29
30
11
10
31
19
18
9
39
38
37
36
35
34
33
32
1
2
3
4
5
6
7
8
12
13
14
15
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
EA/VP
X1
X2
RST
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P1.0/T2
P1.1/T2X
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
INT0
INT1
T0
T1
D5
R1
R
VSS
D1
H|nh 7-33. C|oc t|ep v| d|eu kh|en A18552 vc| LCD.
Chu y: khi lan au s dung LCD th phai chnh bien tr sau cho cac k t hien th tren LCD
th dng lai.
- /
' . + y
+++ 7 3~ :- ++ .+ . -. +-+
e ieu khien LCD th co cac IC chuyen dung c tch hp ben di LCD co ma so 447801
en cac IC 447809. Trong IC nay co bo nh RAM dung e lu tr d lieu can hien th va thc hien
viec ieu khien LCD hien th.
Cac ieu khien bao gom cac lenh c liet ke bang sau:
8ong 7-7. Coc |enh cuo LCD
er| xo: r:r |r| .|e:r !.ej|:y: khi thc hien lenh nay th LCD se b xoa va bo em a
ch c xoa ve 0.
er| c. c|.yer cor :ro .e c:. r:r |r| ..reor ore: khi thc hien lenh nay th bo em a
ch c xoa ve 0, phan hien th tr ve v tr goc a b dch trc o. Noi dung bo nh RAM hien
th DDRAM khong b thay oi.
er| :|.e: |:j |o. .:o 5r:ry roce ee:: lenh nay dung e thiet lap loi vao cho cac k t hien
th, bit ID = 1 th con tro t ong tang len 1 moi khi co 1 byte d lieu ghi vao bo hien th, khi ID =
0 th con tro se khong tang: d lieu mi se ghi e len d lieu cu. Bit S = 1 th cho phep dch chuyen
d lieu moi khi nhan 1 byte hien th.
er| c.e. ||.er cor :ro |.er :|, !.ej|:y .or:ro|: lenh nay dung e ieu khien con tro (cho
hien th th bit D = 1, tat hien th th bit D = 0), tat m con tro (m con tro th bit C = 1, tat con tro
th bit C = 0), va nhap nhay con tro (cho nhap nhay th bit B = 1, tat th bit B = 0).
er| c. c|.yer cor :ro ..reor /!.ej|:y |.:: lenh nay dung e ieu khien di chuyen con
tro hien th dch chuyen (SC = 1 cho phep dch chuyen, SC = 0 th khong cho phep), hng dch
chuyen (RL = 1 th dch phai, RL = 0 th dch trai). Noi dung bo nh DDRAM van khong oi.
er| :|.e: |:j c,: c|. c|o ro r|o <! j|:: | :. e: .c<! ccr: lenh nay dung e thiet
lap a ch cho bo nh RAM phat k t.
er| :|.e: |:j c,: c|. c|o ro r|o <! |.er :|, e: !!<! ccr: lenh nay dung e thiet
lap a ch cho bo nh RAM lu tr cac d lieu hien th.
Hai lenh cuoi cung la lenh oc va lenh ghi d lieu LCD.
Dang song cac tn hieu khi thc hien ghi d lieu vao LCD nh hnh 7-34:
. + y 311
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-34. Dong scng d|eu kh|en cuo LCD.
Nhn vao dang song ta co the thay c trnh t ieu khien nh sau:
- ieu khien tn hieu RS.
- ieu khien tn hieu R/W xuong mc thap.
- ieu khien tn hieu E len mc cao e cho phep.
- Xuat d lieu D7D0.
- ieu khien tn hieu E ve mc thap.
- ieu khien tn hieu R/W len mc cao tr lai.
e ieu khien LCD th phai biet trnh t ieu khien c xay dng theo cac lu o nh hnh
7-35:
' . + y
+++ 7 3~ :- ++ .+ . -. +-+
(a) (b)
H|nh 7-35. Luu dc d|eu kh|en LCD.
Trong lu o hnh (a) o la lu o chnh bao gom qua trnh khi tao LCD, thiet lap a ch
cua vung nh RAM va thc hien qua trnh gi d lieu ra LCD hien th hang th 1 va tiep theo la
hang th 2.
Lu o hnh (b) la lu o cho biet trnh t thc hien qua trnh khi tao LCD bao gom cac
bc: gi ma ieu khien 38H ra LCD va thc hien delay t nhat la 4.1 ms. Tiep tuc thc hien lan
th 2 vi thi gian delay 100s. Cuoi cung gi lien tuc cac ma ieu khien 38H, 0CH, va 01H e
thiet lap cau hnh hoat ong cho LCD.
Lu o thc hien gi t ieu khien hay gi d lieu ra LCD e hien th nh hnh sau:
. + y 313
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-36. Luu dc xuot |enh hcoc du ||eu ro LCD.
Trong lu o co 2 au vao: au vao th nhat neu gi t ieu khien en LCD, au vao th 2
la gi d lieu can hien th en LCD s khac nhau nay the hien qua tn hieu ieu khien RS.
Cac bc con lai th giong nhau va sau khi tien hanh gi xong t ieu khien/d lieu th oc
lai t ieu khien/d lieu e kiem tra bit DB7 e xem t ieu khien/d lieu a c nhan xong
cha neu cha th phai ch, neu a nhan xong th thoat va san sang e nhan t ieu khien/d lieu
tiep theo.
3 3 . `3
Chng trnh sau se ieu khien LCD hien th 2 hang vi noi dung c cho cuoi chng
trnh:
V du 10:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dieu khien LCD 16X2 tren kit vi dieu khien
;DUNG PORT 0 KET DOI VOI CAC DUONG DU LIEU CUA LCD P0-7 ->D0-7
;DUNG 3 BIT CUA PORT2: P20,P21,P22 DIEU KHIEN E,R/W,RS
;tren man hinh LCD se hien thi noi dung moi
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
E BIT P2.0
rw BIT P2.1
rs BIT P2.2
byteout equ p0
'- . + y
+++ 7 3~ :- ++ .+ . -. +-+
. + y 315
ORG 0000H
mov 0a2h,#0
LCALL khtaolcd ;khoi tao lcd
LCALL first_line ;goi chtr con hien thi hang thu nhat
LCALL scond_line ;goi chtr con hien thi hang thu hai
SJMP $
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con khoi tao LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
khtaolcd: setb e ;Enable
clr rs ;RS low
clr rw ;RW low
MOV a,#38h ;tu dieu khien LCD
LCALL KTAO
LCALL ddelay41 ;delay 4.1 mSec
MOV A,#38h ;function set
LCALL KTAO
LCALL ddelay100 ;delay
MOV A,#38h ;function
LCALL KTAO
MOV A,#0ch ;tu dieu khien display on
LCALL KTAO
MOV A,#01h ;tu dieu khien Clear display
LCALL KTAO
MOV A,#06h ;tu dieu khien entry mode set
LCALL KTAO
MOV A,#80h ;thiet lap dia chi LCD (set DD RAM)
LCALL KTAO
MOV A,#0fh ;enable display cursor
LCALL KTAO
RET
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay 4.1 ms
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ddelay41: mov r6,#90h
del412: mov r7,#200
djnz r7,$
djnz r6,del412
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay 255 microgiay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ddelay100: mov r7,#00
djnz r7,$
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Feed command/data to the LCD module
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
command_byte:
clr rs ;RS low for a command byte
ljmp bdelay
+++ 7 3~ :- ++ .+ . -. +-+
' . + y
data_byte: setb rs ;RS high for a data byte
bdelay: clr rw ;R/W low for a write mode
clr e
nop
setb e ;Enable pulse
nop
nop
mov byteout,#0ffh ;configure port1 to input mode
setb rw ;set RW to read
clr rs ;set RS to command
clr e ;generate enable pulse
nop
nop
setb e
lcall ddelay100
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con hien thi noi dung hang thu 1 tren LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
first_line: MOV A,#080h ;set DDRAM
LCALL KTAO
MOV DPTR,#FLINE_DATA
lcall Write
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con hien thi noi dung hang thu 2 tren LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
scond_line: mov a,#0c0h ;set DDRAM
LCALL KTAO
mov dptr,#sline_data
lcall write
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con khoi tao LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
KTAO: mov byteout,a
lcall command_byte
RET
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con goi data hien thi ra LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
write: MOV A,#0
MOVC A,@a+dptr
CJNE A,#99h,Writea
RET
Writea: mov byteout,a
acall data_byte
inc dptr
SJMP Write
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; Data bytes
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
FLINE_DATA: DB 'NGUYEN DINH PHU ',099h
SLINE_DATA: DB 'DAI HOC SPKT HCM',099h
END
+++ 7 3~ :- ++ .+ . -. +-+
8o| top : Hay thiet ke mach ieu khien 1 LCD giong nh tren va 1 ban phm ma tran 44
va viet chng trnh sau cho khi nhan phm so nao th tren man hnh hien th so o tai v tr tan
cung ben trai, cac so trc dch sang trai.
8o| top 2: Hay thiet ke mach ieu khien 1 LCD giong nh tren va 1 ban phm ma tran 44
va viet chng trnh ong ho hien th gi phut giay, ngay thang nam.
V|. V| |EU KH|EN C|A0 1|EP V0| LED MA 1kAN:
' 3 \/ /
Trong quang cao ni cong cong thng s dung led ma tran, trong phan nay se gii thieu
va trnh bay cach giao tiep vi ieu khien vi led ma tran va phan mem ieu khien led ma tran.
Led ma tran la 1 tap cac led n c bo tr theo dang ma tran cho phep hien th c cac k
t bat ky. Cac nha che tao a tch hp theo cac dang ma tran tnh theo led 57 (5 cot va 7 hang)
hoac 88 (8 hang va 8 cot) va tnh theo kch thc va phan biet theo mau cua led, cuoi cung la
phan biet led sang trong nha (indoor) hay led sang ngoai tri (outdoor). Led sang trong nha th
khong the dung c ngoai tri v anh sang mat tri chieu vao lam chung ta khong nhn thay ro,
ch co led outdoor mi thay ro, va d nhien led outdoor se co gia thanh cao hn.
Hnh 7-37 gii thieu led ma tran 57 vi 4 mau khac nhau:
H|nh 7-37. Led mo tron 57.
/ / ./ 3 / \/ /
Led ma tran la mot tap hp cac led n vi cach ket noi nh sau: theo hang th cac anode noi
chung, theo cot th cac cathode noi chung, vi led ma tran 57 th co 7 hang va 5 cot.
. + y 317
+++ 7 3~ :- ++ .+ . -. +-+
Anode noi vi mc H va cathode noi mc L th led sang, cac trng hp con lai th led tat.
Hay quan sat hnh 7-38 led ma tran 88 ang hien th ch A, co 2 cach hien th ch A:
~+ ' + -. ~ +~+, ~ .-: ~ :
Moi k t co 5 byte ma:
- Byte ma th nhat gi ra 8 hang (led nao sang th bit tng ng bang 1, led nao tat th
bit tng ng bang 0) va cho cot th nhat xuong mc L, cac cot con lai mc H.
- Byte ma th hai gi ra 8 hang, cot th hai xuong mc L.
- Byte ma th ba gi ra 8 hang, cot th ba xuong mc L.
- Byte ma th t gi ra 8 hang, cot th t xuong mc L.
- Byte ma th nam gi ra 8 hang, cot th nam xuong mc L.
Do toc o thc hien nhanh nen chung ta se nhn thay ca ch A sang.
H|nh 7-38. 5ong chu A.
Neu hang tren cung la H0 va hang di cung la H7 th ma cua ch A va ma quet c tom
tat nh bang sau:
MA |EU KH|EN HANC MA QUE1 |EU KH|EN C01
H7 H6 H5 H4 H3 H2 H H0 5c hex C0 C C2 C3 C4
0 0 0 F8 0 Cct thu song
0 0 0 0 0 0 24 0 Cct thu 2 song
0 0 0 0 0 0 22 0 Cct thu 3 song
0 0 0 0 0 0 24 0 Cct thu 4 song
0 0 0 F8 0 Cct thu 5 song
8ong 7-8. Mo chu A
'` . + y
+++ 7 3~ :- ++ .+ . -. +-+
e thc hien quet cot va de dang cho viec m rong cot khi ket noi nhieu led ma tran vi
nhau th thanh ghi dch thng c s dung.
Vi ma tran 88 th thi gian sang cua 1 cot la 1/8 chu ky quet, thi gian tat la 7/8, chnh v
the led se sang khong ro neu lam viec vi dong va ap nh mc. e tang cng o sang th phai
tang ap va dong. Bnh thng led lam viec vi dong t 10mA en 20mA va ap la 2V, nhng vi
phng phap quet cho 1 led 88 th dong phai tang len khoang 8 lan t 80mA en 160mA tng
ng.
Cach tnh toan nh sau: vi dong lam viec bnh thng (khong quet) chon la 20mA, ap lam
viec nh mc 2V. Khi o ien tr cua moi led la:
= = = 100
20
2
mA
V
I
U
R
LED
Khi dung phng phap quet th dong tc thi phai bang 160mA, khi o dong trung bnh:
mA
mA
I
TB LED
20
8
160
_
= =
Suy ra ien ap cung cap cho led:
V mA V
LED LED
16 100 160
_
= =
Thng th chon dong thap hn nen ap cung cap se thap khoang t 9V en 12V.
S o mach ieu khien led ma tran nh hnh 7-39:
. + y 319
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-3. 5c dc moch d|eu kh|en.
u iem:
- Khi m rong them led th ch can ket noi song song 8 hang va cot dung thanh ghi
dch rat n gian do so lng ng ieu khien t.
- Moi mot thi iem ch co 1 cot sang nen dong tieu thu thap.
- Mach ien n gian.
Khuyet iem:
- B gii han so cot v khi m rong cang nhieu cot th thi gian tat cua led tang them
tang dong qua ln nguy hiem cho led va led sang khong ro sinh ra hien tng
chap chn. Gia s co 100 cot th cho du quet nhanh hay quet cham th thi gian sang
cua moi cot van khong oi bang 1/100, thi gian tat bang 99/100.
~+ + -. ~ :, ~ .-: ~ +~+
Moi k t co 5 byte ma giong nh cach 1, nhng trnh t thc hien nh sau:
. + y
+++ 7 3~ :- ++ .+ . -. +-+
. + y 321
MA |EU KH|EN HANC MA QUE1 |EU KH|EN C01
H7 H6 H5 H4 H3 H2 H H0 5c hex C0 C C2 C3 C4
0 0 0 0 0 0 0 Hong thu 0 song
0 0 0 0 0 0 0 0 Hong thu song
0 0 0 0 0 0 0 0 0 Hong thu 2 song
0 0 0 0 0 0 0 0 0 Hong thu 3 song
0 0 0 0 0 0 0 0 0 Hong thu 4 song
0 0 0 0 0 0 0 0 0 0 0 0 Hong thu 5 song
0 0 0 0 0 0 0 0 0 Hong thu 6 song
0 0 0 0 0 0 0 0 0 Hong thu 7 song
HEX 07 D8 DD D8 07
8ong 7-. Quet thec coch 2.
- Cho 5 bit th 0 cua 5 byte ma ch A c dch ra cac cot, cho hang H0 dan khi o
hang H0 sang tuy thuoc vao d lieu.
- Cho 5 bit th 1 cua 5 byte ma ch A c dch ra cac cot, cho hang H1 dan khi o
hang H1 sang tuy thuoc vao d lieu.
- Cho 5 bit th 2 cua 5 byte ma ch A c dch ra cac cot, cho hang H2 dan khi o
hang H2 sang tuy thuoc vao d lieu.
-
- Cho 5 bit th 7 cua 5 byte ma ch A c dch ra cac cot, cho hang H7 dan khi o
hang H1 sang tuy thuoc vao d lieu.
Vi cach quet theo hang th thi gian sang cua led la 1/8 thi gian tat la 7/8.
Khi tang them led so cot tang len th thi gian sang va tat cua moi led van khong oi.
Nhng chu ky quet se tang v phai ton them thi gian gi d lieu ra cac cot, cang nhieu cot th
cang ton thi gian gi d lieu.
e ap ng c toc o quet khi bang quang bao co nhieu led th phai s dung cac IC co toc
o lam viec cao khoang vai chuc MHz nh CPLD e phu trach cong viec nay.
3 \/ /
Cac chng trnh v du s dung s o nguyen ly hnh 7-39 va ieu khien theo cach 1.
V du 11: Chng trnh ieu khien hien th ch A:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh hien thi ki tu chu A tren ma tran led dung yen
;ma chu A = 007H,0DBH,0DDH,0DBH,007H
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
hang equ p3 ;dieu khien hang
cotx equ p0 ;dieu khien cot mau xanh
cotd equ p2 ;dieu khien cot mau do
org 0000h
mov cotx,#0 ;tat quet neu co ket noi
mov cotd,#0 ;tat quet neu co ket noi
+++ 7 3~ :- ++ .+ . -. +-+
. + y
main: mov hang,#007h ;goi du lieu ra hang 1
mov cotx,#00000001b ;goi ma quet cho 1 transistor dan
lcall delay
mov cotx,#00h ;chong lem
mov hang,#0DBh ;goi du lieu ra hang 2
mov cotx,#00000010b ;cot thu 2 dan
lcall delay
mov cotx,#00h ;chong lem
mov hang,#0ddh ;goi du lieu re hang 3
mov cotx,#00000100b
lcall delay
mov cotx,#00h
mov hang,#0DBh ;goi du lieu ra hang 4
mov cotx,#00001000b
lcall delay
mov cotx,#00h
mov hang,#007h ;goi du lieu ra hang 5
mov cotx,#00010000b
lcall delay
mov cotx,#00h
sjmp main
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay nho
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay: mov r5,#10
de: mov r6,#20
djnz r6,$
djnz r5,de
ret
end
8o| top 3: Hay thiet ke mach ieu khien 4 led ma tran 88 dung thanh ghi dch 6B595 e
quet cot. Viet chng trnh hien th 1 chuoi k t tuy y.
V||. V| |EU KH|EN C|A0 1|EP V0| kEAL 1|ME 2C887:
' 3 /\
Real-time la bo em thi gian thc thng c s dung trong cac ng dung ieu khien theo
thi gian, v du may tnh luon co 1 bo em thi gian thc va can c vao thi gian thc e biet cac
thong so ve thi gian cua 1 tap tin hay cac thong tin c tao ra, trong he thong van hanh cua ngan
hang cac giao dch xay ra eu phai xac nh thi gian, trong he thong tong ai luon co ong ho
thi gian thc e quan ly thue bao ve thi gian goi, thi iem goi e sau nay tnh tien cac cuoc
goi, moi hoat ong cua chung ta eu ong bo theo thi gian thc, qua nhng g trnh bay ta thay
c tam quan trong cua bo em thi gian thc nen trong phan nay trnh bay phan giao tiep vi IC
thi gian thc la DS12C887 do hang Dallas san xuat.
/ 3 / /\ '``7
Cau truc cua Real-time bao gom:
+++ 7 3~ :- ++ .+ . -. +-+
- Chan IC tng thch vi MC146818B va DS1287.
- D lieu khong b mat sau khoang 10 nam khong can nguon cung cap cho IC.
- Tch hp ben trong nguon pin va nguon dao ong.
- Bo em giay, phut, gi, th trong ngay, ngay, thang, nam co gia tr en 2100.
- Cac thong so thi gian c nh hnh 2 dang BCD hoac nh phan.
- Co 2 mode hoat ong: mode 12 gi va mode 24 gi.
- Cho phep la chon ket noi theo kieu Motorola va Intel.
- a hp bus a ch va bus d lieu e tiet kiem chan IC.
- Co 128 byte o nh RAM: trong o 14 byte au dung ong ho va thanh ghi ieu
khien, 114 byte con lai dung lam bo nh RAM a dung. Cac d lieu lu vao cac o
nh nay cung khong b mat khi mat nguon cung cap.
- Co chan tn hieu ngo ra tao xung vuong co the lap trnh.
- Co tn hieu bao ngat.
- Co 3 nguon bao ngat co the che c va co the kiem tra c.
/ ./ /3 / / /\ '``7
Hnh 7-40 la s o chan cua IC real-time DS12C887:
H|nh 7-40. 5c dc chon cuo reo|-t|me D52C887.
Ten cac chan cua IC nh sau:
. + y 323
+++ 7 3~ :- ++ .+ . -. +-+
Chc nang cac chan:
AD0-AD7 (Multiplexed Bidirectional Address/Data Bus): Bus a hp tiet kiem chan bi v
thong tin a ch va thong tin d lieu c dung chung ng tn hieu. a ch c xuat ra trong
khoang thi gian th nhat cua chu ky oc hoac ghi va sau o d lieu c xuat ra trong khoang
thi gian con lai cua chu ky oc/ghi. a hp a ch/d lieu khong lam cham thi gian truy cap.
GND, V
CC
: Nguon cung cap cho Real-time. V
CC
la ien ap ngo vao +5 volt .
Khi ien ap ung bang 5V th real-time cho phep truy cap ay u, co the oc va ghi d lieu.
Khi V
CC
thap hn 4.25 volts th qua trnh oc va ghi se b cam. Tuy nhien, hoat ong em
thi gian ben trong van c tiep tuc khong b anh hng bi ien ap b sut giam ben ngoai.
Khi V
CC
giam xuong thap hn 3V th bo nh RAM va hoat ong em thi gian c chuyen
sang s dung nguon nang lng ben trong.
Chc nang hoat ong em thi gian vi o chnh xac vao khoang 1 phut/thang nhiet o
25
0
C bat chap ien ap ngo vao chan Vcc.
MOT (Mode Select): Chan MOT la chan co chc nang la chon gia hai loai bus.
Khi c noi len V
CC
, bus nh thi Motorola c chon la.
Khi c noi xuong GND hoac bo trong th bus nh thi Intel c la chon.
Chan co ien tr keo xuong ben trong co gia tr vao khoang 20K.
SQW (Square Wave Output): Chan SQW co the xuat ra 1 tn hieu trong 13 loai tn hieu
c cung cap bi cac bo chia 15 cap ben trong cua Real Time Clock.
Tan so cua chan SQW co the thay oi bang cach lap trnh cho thanh ghi A nh a trnh bay
bang 7-10.
Tn hieu SQW co the m hoac tat s dung bit SQWE trong Register B. Tn hieu SQW khong
xuat hien khi Vcc thap hn 4.25 volts.
- . + y
+++ 7 3~ :- ++ .+ . -. +-+
8ong 7-0. Coc thcng sc t|n h|eu ngc ro 5QW.
AS (Address Strobe Input): ngo vao nhan xung chot a ch. Sn xuong cua AS/ALE lam
cho a ch b chot lai ben trong cua DS12C887. Sn len tiep theo khi xuat hien tren bus AS se
xoa a ch bat chap chan CS co c chon hay khong.
DS (Data Strobe or Read Input): Chan DS/RD co 2 kieu s dung tuy thuoc vao mc cua
chan MOT.
Khi chan MOT c ket noi len Vcc, bus nh thi Motorola c la chon. Trong kieu nay
DS la xung dng trong khoang thi gian con lai cua chu ky bus va c goi la Data Strobe. Trong
cac chu ky oc, tn hieu DS xac nh thi gian DS12C887 xuat d lieu. Trong cac chu ky ghi, xung
DS se ieu khien DS12C887 chot d lieu e ghi vao ben trong.
Khi chan MOT c noi xuong GND, bus nh thi Intel c la chon. Trong kieu nay, chan
DS c goi la Read( RD). RD xac nh chu ky khi DS12C887 ieu khien bus oc d lieu. Tn
hieu RDcung co the xem la tn hieu Output Enable ( OE ) thng thay trong cac bo nh.
W R/ (Read/Write Input): Chan W R/ cung co 2 cach hoat ong.
Khi chan MOT c ket noi len Vcc cho che o nh thi Motorola, th mc ien ap cua
chan W R/ dung e xac nh chu ky hien tai la chu ky oc hoac ghi.
Chu ky oc oi hoi chan W R/ phai mc cao khi chan DS mc cao.
Chu ky ghi oi hoi chan W R/ phai mc thap trong suot qua trnh chot tn hieu cua DS.
Khi chan MOT c noi GND cho che o nh thi Intel, tn hieu W R/ la tn hieu hoat ong
tch cc mc thap con c goi la WR . Trong che o nay, chan W R/ c nh ngha nh tn hieu
Write Enable (WR ) nhng trong cac bo nh RAM.
CS (Chip Select Input): Tn hieu chon la tch cc mc thap e cho phep truy xuat
DS12C887. CS phai trang thai tch cc trong khoang thi gian DS va AS cua che o nh thi
Motorola va trong suot RD va WR cua che o nh thi Intel. Cac chu ky Bus xay ra ma CS
khong trang thai tch cc th khong c phep truy xuat.
Khi ien ap nguon cung cap Vcc thap hn 4.25 volts th DS12C887 se khong cho phep truy
xuat d lieu bang cach khong cho phep ieu khien chan CS nham bao ve d lieu cua ong ho thi
gian thc ben trong cung nh d lieu RAM trong suot qua trnh nguon khong ung hay mat nguon.
. + y 325
+++ 7 3~ :- ++ .+ . -. +-+
IRQ (Interrupt Request Output): Chan IRQ la ngo ra tch cc mc thap cua DS12C887
dung e bao ngat ti bo x ly. Ngo ra IRQ mc thap khi bit trang thai sinh ra ngat xuat hien
cung vi bit cho phep ngat tng ng mc 1. e xoa chan IRQ th vi x ly phai tien hanh oc
thanh ghi C hoac tac ong en RESET .
Khi khong sinh ra ngat th IRQ trang thai tong tr cao xem nh h mach. Nhieu thiet b
ngat co the noi ti mot IRQ bus. Tn hieu IRQ vi ngo ra cc thu e h nen phai dung 1 ien tr
keo len ben ngoai.
RESET (Reset Input): Chan RESET khong anh hng en ong ho, lch, hoac la RAM.
che o cap nguon, chan RESET co the b keo xuong trong thi gian cho phep e on nh nguon
cung cap. Thi gian ma chan RESET b keo xuong mc thap phu thuoc vao ng dung. Tuy nhien
neu chan RESET c s dung che o cap nguon, thi gian RESET mc thap co the vt qua
200ms e chac chan bo nh thi ben trong DS12C887 che o power-up a het. Khi RESET
mc thap va nguon cung cap V
CC
tren 4.25 volts, nhng ieu sau dien ra:
a. Bit cho phep ngat nh ky ((Periodic Interrupt Enable (PEI)) c at mc 0.
b. Bit cho phep ngat chuong (Alarm Interrupt Enable (AIE)) c at mc 0.
c. Bit c cho phep ngat ket thuc cap nhat ((Update Ended Interrupt Flag (UF)) c
xoa ve 0 zero.
d. Bit c trang thai yeu cau ngat (Interrupt Request Status Flag (IRQF)) c at mc
0.
e. Bit c cho phep ngat nh ky (Periodic Interrupt Flag (PF)) c at mc 0.
f. Thiet b khong s dung c cho ti khi chan RESET tr lai mc logic 1.
g. Bit c cho phep ngat chuong (Alarm Interrupt Flag (AF)) c at mc 0.
h. Chan IRQ trong trang thai tong tr cao.
i. Bit cho phep xuat song vuong (Square Wave Output Enable (SQWE)) c at mc 0.
j. Bit cho phep ngat ket thuc cap nhat (Update Ended Interrupt Enable (UIE)) b xoa
ve mc 0.
Trong cac ng dung thong thng chan RESET co the c noi len V
CC
. Ket noi nh vay se
cho phep DS12C887 hoat ong va khi mat nguon se khong lam anh hng en bat ky thanh ghi
ieu khien nao.
- / 3 / /\ / 3 / \/
Chc nang cua ong ho thi gian thc se tiep tuc hoat ong va tat ca RAM, thi gian, lch va
thi gian bao gi va nhng vung nh se khong mat d lieu bat chap ien ap ngo vao V
CC
.
Khi ien ap V
CC
c cung cap cho DS12C887 va at ti ien ap ln hn 4.25 volts, thiet b
co the s dung c sau 200 ms, dao ong c cung cap, no cho phep bo dao ong hoat ong va
qua trnh dao ong khong anh hng bi chan RESET . Tiep theo he thong a i vao on nh sau
khi nguon c cung cap.
Khi V
CC
rt xuong di 4.25 volts, ngo vao la chon CS b bat buoc chuyen sang trang thai
khong hoat ong bat chap gia tr tai ngo vao chan CS - khi o DS12C887 c hoat ong che o
chong ghi. Khi DS12C887 ang trang thai chong ghi, moi ngo vao eu b bo qua con cac ngo ra
eu trang thai tong tr cao.
. + y
+++ 7 3~ :- ++ .+ . -. +-+
Khi V
CC
rt xuong ien ap khoang 3 volts, ien ap VCC cung cap ben ngoai c cat i va
nguon pin lithinium ben trong DS12C887 se cung cap nguon cho Real Time Clock va bo nh
RAM.
Ban o a ch cua DS12C887 c trnh bay hnh 7-41.
H|nh 7-4. 1c chuc bc nhc ben trcng cuo keo|-t|me D52C887.
Ban o a ch bao gom 114 bytes RAM thong dung, 14 bytes RAM bao gom ong ho thi
gian thc, lch, d lieu bao gi va 4 thanh ghi c s dung cho viec ieu khien va thong bao tnh
trang. Tat ca 128 bytes co the c ghi hoac oc trc tiep tr nhng trng hp sau:
Thanh ghi C and D la hai thanh ghi ch oc.
Bit th 7 cua thanh ghi A la bit ch oc.
Bit cao cua byte th 2 la bit ch oc.
Cac thong so ve thi gian va lch co c bang cach oc cac bytes tng ng. Thi gian, lch
va bao gi c cai at hoac khi tao bang cach ghi gia tr bytes RAM thch hp.
Noi dung cua 10 byte cha thi gian, lch va bao gi eu co the nh dang 1 trong 2 dang nh
phan (Binary) hoac BCD (Binary Coded Decimal).
Trc khi ghi cac d lieu vao cac o nh thi gian, lch, va cac thanh ghi bao gi ben trong th
bit SET thanh ghi B phai c thiet lap mc logic 1 e ngan chan viec cap nhat co the xay ra
trong qua trnh truy xuat.
Ngoai ra e ghi len 10 thanh ghi ch thi gian, lch, va thanh ghi bao gi mot nh dang a
la chon (BCD hay nh phan) th bit chon kieu d lieu (Data mode DM) cua thanh ghi B phai
c at mc logic thch hp.
Tat ca 10 bytes thi gian, lch va bao gi phai s dung cung kieu d lieu. Phai xoa bit SET
trong thanh ghi B sau khi thc hien xong viec cap nhat thi gian cho ong ho, lch va hen gi.
. + y 327
+++ 7 3~ :- ++ .+ . -. +-+
` . + y
Moi lan khi ong, ong ho thi gian thc cap nhat tat ca cac thay oi mot kieu a la
chon. D lieu se khong the thay oi neu khong khi ong lai 10 bytes d lieu.
Bang 7-11 trnh bay nh dang nh phan va BCD cua ca thi gian , lch, va bao gi.
Doy |uo chcn |o ch| Chuc nong C|o tr|
thop phon Nh| phon 8CD
0 C|oy 0-5 00-38 00-5
C|oy hen 0-5 00-38 00-5
2 Phut 0-5 00-38 00-5
3 Phut hen 0-5 00-38 00-5
C|c: mcde 2 g|c -2 0-0C AM, 8-8C PM 0-2 AM, 8-2 PM 4
C|c: mcde 24 g|c 0-23 00-7 00-23
C|c hen: 2 g|c -2 0-0C AM, 8-8C PM 0-2 AM, 8-2 PM 5
C|c hen: 24 g|c 0-23 00-7 00-23
6 Ngoy cuo tuon, chu nhot = -7 0-07 0-07
7 Ngoy cuo thong -3 0-F 0-3
8 1hong -2 0-0C 0-2
Nom 0- 00-63 00-
8ong 7-. Coc d|nh dong cuo coc thcng sc thc| g|on.
Bit la chon kieu 24/12 khong the thay oi neu khong khi ong lai thanh ghi gi. Khi nh
dang 12 gi c la chon, bit cao cua byte gi xac nh PM khi no c at mc logic 1. Moi
giay mot lan, 11 byte c cap nhat va kiem tra tnh trang bao gi.
Neu lenh oc d lieu thi gian va lch dien ra trong qua trnh cap nhat, mot van e phat sinh
la gi, phut, giay, co the khong chnh xac. Xac xuat oc khong chnh xac d lieu thi gian va
lch la rat thap. Co vai phng phap tranh sai so co the xay ra khi oc thi gian va lch c e
cap sau.
3 byte bao gi co the s dung bang 2 cach:
Cach th nhat: khi thi gian bao gi c ghi vao cac thanh ghi gi, phut, giay, tac ong bao
gi c bat au tai thi gian chnh xac trong ngay khi bit cho phep bao chuong c at mc
cao.
Cach th hai: s dung e at trang thai bat chap vao mot hoac nhieu byte bao chuong. Ma
bat chap la bat ky ma so hex nao nam trong gia tr t C0 en FF. Hai bit MSB cua nhng byte tren
at vao trang thai bat chap khi mc logic 1. Bao gi se c sinh ra moi gi khi bit bat chap
c at vao byte gi. Tng t, bao gi se sinh ra moi phut neu ma bat chap co cac byte gi va
cac byte phut. Neu ma bat chap co trong ca 3 byte bao gi th no se tao ra tn hieu ngat moi
giay.
/ 3 / / / 3
DS12C887 co 4 thanh ghi ieu khien c s dung moi luc ke ca trong qua trnh cap nhat.
+~++ + /
M58 L58
+++ 7 3~ :- ++ .+ . -. +-+
. + y 329
8|1 7 8|1 6 8|1 5 8|1 4 8|1 3 8|1 2 8|1 8|1 0
U|P DV2 DV DV0 k53 k52 k5 k50
UIP - Update In Progress (UIP) la bit c trang thai co the theo doi c.
Khi bit UIP mc 1 th cho phep qua trnh cap nhat xay ra ngay sau o.
Khi bit UIP mc 0, qua trnh cap nhat se khong xay ra sau khoang thi gian t nhat la 244
s. Nhng thong tin ve thi gian, lch, va bao gi trong RAM co hieu lc cho viec truy cap khi bit
UIP mc 0.
Bit UIP la bit ch oc va khong b anh hng cua chan RESET . Khi ghi bit SET thanh ghi B
len 1 se ngan chan moi qua trnh cap nhat va xoa cua bit trang thai UIP.
DV2, DV1, DV0 3 bit nay c s dung e m hoac tat bo dao ong va cai at lai qua trnh
em xuong. Khi [DV2DV1 DV0] = [010] co chc nang duy nhat la bat bo dao ong len va cho
phep RTC em thi gian. Khi [DV2DV1 DV0] = [11] se cho phep dao ong nhng gi qua trnh
em xuong mc reset. Qua trnh cap nhat tiep theo se dien ra sau 500ms khi kieu 010 c ghi
vao DV0, DV1 va DV2.
RS3, RS2, RS1, RS0 - 4 bit la chon toc o dung e chon mot trong 13 loai cua bo chia 15
trang thai hoac khong cho phep xuat tn hieu chia ra ngoai. Loai c la chon co the dung e
phat ra song vuong (chan SQW) va/hoac ngat theo chu ky. Ngi s dung co the s dung 1 trong
nhng cach sau :
Cho phep ngat vi bit PIE
Cho phep xuat ngo ra chan SQW vi bit SQWE
Cho phep ca hai hoat ong cung mot luc va cung mot loai.
Khong kch hoat ca 2
Bang 7-10 liet ke chu ky ngat va tan so song vuong ma co the chon la vi bit RS. Ca 4 bit
oc/ ghi eu khong b anh hng bi chan RESET.
+~++ +
M58 L58
8|1 7 8|1 6 8|1 5 8|1 4 8|1 3 8|1 2 8|1 8|1 0
5E1 P|E A|E U|E 5QWE DM 24/2 D5E
SET Khi bit SET mc 0, thong thng qua trnh cap nhat bang cach tang gia tr em 1 lan
1 giay. Khi bit SET c ghi vao mc 1, moi qua trnh cap nhat eu b cam. Cac chu ky oc co the
thc thi cung mot kieu. Bit SET la bit oc/ghi va khong chu anh hng cua reset hoac cac chc
nang ben trong cua DS12C887.
PIE Periodic Interrupt Enable: Bit cho phep ngat theo chu ky la bit oc/ghi, bit nay cho
phep bit c ngat theo chu ky (PF) trong thanh ghi C e ieu khien chan IRQ xuong mc thap.
Khi bit PIE c at len mc 1, chu ky ngat c tao ra bang cach ieu khien chan IRQ
xuong mc thap tuy thuoc vao t le phan bo cua bit RS3 RS0 thanh ghi A.
Khi bit PIE = 0 se ngan chan tn hieu ngo ra IRQ khoi viec ieu khien bang ngat theo chu ky
nhng bit c chu ky PF van thiet lap toc o cho chu ky.
+++ 7 3~ :- ++ .+ . -. +-+
Bit PIE khong chu anh hng cac hoat ong ben trong cua DS12C887 nhng b xoa ve 0 khi
real-time b reset.
AIE Alarm Interrupt Enable: Bit cho phep ngat bao gi la bit cho phep oc/ghi, khi bit
AIE bang 1 se cho phep bit c bao gi (AF) thanh ghi C tao tn hieu ngat IRQ.
Tn hieu ngat bao gi xay ra tat ca cac giay khi ca 3 bytes bao gi cha ma bao gi dont
care c the hien byte nh phan nh sau 11XXXXXX.
Cac chc nang ben trong cua DS12C887 khong b anh hng bi bit AIE.
UIE Update Ended Interrupt Enable: Bit cho phep ket thuc qua trnh ngat cap nhat la bit
oc/ghi, bit nay cho phep c ket thuc cap nhat UF thanh ghi C kch ngat IRQ. Khi real-time b
reset hoac chan SET mc 1 se xoa bit UIE.
SQWE Square Wave Enable: Khi bit SQWE c at len mc 1, mot tn hieu song vuong
co tan so c la chon bi cac bit RS3 en RS0 se xuat ra chan SQW. Khi bit SQWE c at
mc thap, chan SQW se c gi mc thap. SQWE la bit oc/ghi va c xoa khi real-time b
RESET.
DM Data Mode: Bit kieu d lieu DM quy nh khi nao th thong tin lch va thi gian nh
dang nh phan hoac BCD. Bit DM c at bi chng trnh e co nh dang thch hp va co the
oc khi c yeu cau. Bit nay khong b thay oi bi cac hoat ong ben trong cua real-time hoac
khi b reset. Mc 1 cua DM se nh dang d lieu nh phan con mc 0 se nh dang d lieu BCD.
24/12 Bit ieu khien 24/12 xac nh kieu cho cac byte gi. Khi mc 1 th no ch th che o
hien th 24 gi, con mc 0 th ch th che o hien th 12 gi. Bit nay la bit oc ghi va khong b
anh hng bi hoat ong ben trong cua real-time cung nh khi real-time b reset.
DSE Daylight Savings Enable: Bit cho phep nh cong khai DSE la bit oc\ghi.
Bit nay cho phep 2 cap nhat ac biet khi DSE c at len 1.
Vao Chu Nhat au tien cua thang 4, khi thi gian tang en gia tr 1:59:59 AM th se oi
thanh 3:00:00 AM.
Vao Chu Nhat cuoi cung cua thang 10, khi thi gian lan au tien at en 1:59:59 AM th no
se oi thanh 1:00:00 AM.
Chc nang ac biet nay se khong c thc thi neu bit DSE mc 0. Bit nay khong b anh
hng bi cac hoat ong ben trong cua real-time cung nh khi b reset.
+~++ +
M58 L58
8|1 7 8|1 6 8|1 5 8|1 4 8|1 3 8|1 2 8|1 8|1 0
|kQF PF AF UF 0 0 0 0
IRQF Interrupt Request Flag: Bit c yeu cau ngat c at len 1 khi thoa mot trong nhng
ieu di ay:
PF = PIE = 1
AF = AIE = 1
UF = UIE = 1
ieu o co ngha la IRQF = (PF . PIE) + (AF . AIE) + (UF . UIE)
. + y
+++ 7 3~ :- ++ .+ . -. +-+
Bat c luc nao bit IRQF c at len 1, chan IRQ c keo ve mc thap. Tat ca cac c b
xoa sau khi thanh ghi C c oc bi chng trnh hoac khi real-time b reset.
PF Periodic Interrupt Flag: Bit c ngat theo chu ky la bit ch oc, neu bit nay c at len
mc 1 khi co 1 canh xung c phat hien tn hieu la chon cua bo chia. Cac bit RS3 en RS0
thiet lap toc o cho chu ky. C PF c at len 1 khong phu thuoc vao trang thai cua bit PIE.
Khi ca PF va PIE eu mc 1, tn hieu IRQ se chuyen sang trang thai tch cc va se at bit
IRQF len mc 1. Bit PF se b xoa bi reset real-time hoac bi lenh oc thanh ghi C.
AF Alarm Interrupt Flag: neu AF = 1 se xac nh thi gian hien tai trung vi thi gian hen
gi. Neu bit AIE cung mc 1, chan IRQ se xuong mc thap va bit IRQF se bang 1. Bit AF se b
xoa bi reset real-time hoac bi lenh oc thanh ghi C.
UF Update Ended Interrupt Flag: Bit c ngat ket thuc cap nhat c set sau moi chu ky cap
nhat. Khi bit UIE c set len 1, mc 1 UF se lam cho bit IRQF len mc 1 se kch IRQ bao ngat.
Bit UF se b xoa bi reset real-time hoac bi lenh oc thanh ghi C.
T bit 3 en bit 0- ay la nhng bit khong s dung cua thanh ghi trang thai C. Nhng bit nay
luon luon mc 0 va khong the ghi.
+~++ +
M58 L58
8|1 7 8|1 6 8|1 5 8|1 4 8|1 3 8|1 2 8|1 8|1 0
Vk1 0 0 0 0 0 0 0
VRT Valid RAM and Time: Bit thi gian va RAM co hieu lc cho biet tnh trang cua pin
c ket noi chan VBAT. Bit nay khong cho phep ghi c va khi oc luon co gia tr bang 1. Neu
khi oc bit nay mc 0 th se cho biet nguon nang lng lithium ben trong a can va ca hai thong
so thi gian thc va d lieu RAM eu co the sai. Bit nay khong chu anh hng bi chan RESET.
BIT 6 EN BIT 0 Nhng bit c e cap tren cua thanh ghi D khong c s dung.
Chung khong ghi c va khi oc th luon co gia tr bang 0.
\/ 3/ . . /\
Mach giao tiep vi ieu khien vi real-time DS12C887 nh hnh 7-42. Trong s o nay vi ieu
khien ch giao tiep vi 1 real-time vi muc ch trnh bay cach giao tiep ch trong thc te th vi
ieu khien phai giao tiep vi nhieu thanh phan khac th he thong mi hoat ong v du giao tiep
them led 7 oan hoac LCD mi hien th c cac thong so thi gian.
. + y 331
+++ 7 3~ :- ++ .+ . -. +-+
H|nh 7-42. C|oc t|ep v| d|eu kh|en vc| keo|-t|me.
Trong mach ien hnh 7-42, vi ieu khien giao tiep vi real-time theo kieu bo nh d lieu, vi
ieu khien co 4 lenh giao tiep vi bo nh d lieu m rong ben ngoai:
Lenh oc d lieu: movx a,@dptr (1)
Lenh xuat d lieu: movx @dptr,a (2)
Lenh oc d lieu: movx a,@Ri (3)
Lenh xuat d lieu: movx @Ri,a (4)
Hai lenh (1) va (2) thng c s dung khi dung lng bo nh m rong ln hn 256 byte,
port 2 dung e tai a ch byte cao. Hai lenh (3) va (4) c s dung khi dung lng bo nh nho
hn hay bang 256 byte, port 2 khong dung co the ieu khien cac thiet b khac. Vay trong trng
hp nay nen dung 2 lenh (3) va (4).
7 3 / /\
Mach giao tiep vi ieu khien vi real-time DS12C887 nh hnh 7-42. Neu real-time cha s
dung lan nao th phai chay chng trnh khi tao e thiet lap ngay gi hien tai cho real-time va ch
chay 1 lan. Trong chng trnh ben di cac thong so giayhientai, phuthientai va giohientai
la cac thong so thi gian hien tai khi khi ong.
Chng trnh khi tao cho real-time:
org 0000h
mov r0,#0bh ;dia chi cua thanh ghi B
mov a,#0 ;du lieu nap vao thanh ghi B
movx @r0,a ;cho phep chinh cai dat gio
mov a,#giayhientai
mov r0,#0 ;dia chi cua o nho giay
movx @r0,a ;nap giay hien tai
. + y
+++ 7 3~ :- ++ .+ . -. +-+
. + y 333
mov a,#phuthientai
mov r0,#02 ;dia chi cua o nho phut
movx @r0,a ;nap phut hien tai
mov a,#giohientai
mov r0,#04 ;dia chi cua o nho gio
movx @r0,a ;nap gio hien tai
mov r0,#0ah ;dia chi cua thanh ghi A
mov a,#020h ;tu dieu khien cua thanh ghi A
movx @r0,a ;cho phep bo dao dong chay
lcall delay50
sjmp $
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
delay50: mov 7eh,#0fh
del12: mov 7dh,#0ffh
del11: djnz 7dh,del11
djnz 7eh,del12
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
end
Chng trnh v du la chng trnh ong ho so dung vi ieu khien, realtime va LCD: trong
chng trnh nay vi ieu khien ket noi vi realtime s dung port2 va 3 bit ieu khien cua port1.
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh dieu khien LCD hien thi chuoi thong tin
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;dinh nghia cac bien
E BIT P1.0
rw BIT P1.1
rs BIT P1.2
byteout equ p2
dklcd equ 70h
bdn equ r6
giay equ r5
phut equ r4
gio equ r3
org 0000h
mov sp,#68h
; lcall khoitao_rt ;goi chtr con khoi tao real time
lcall khoitao_lcd ;goi chtr khoi tao LCD
lcall xoavnh_hthi ;xoa vung nho hien thi
main1: lcall doc_gpg ;doc thong so gio-phut-giay tu real time
lcall bcd_maascii ;chuyen so bcd sang ma ASCII
lcall hienthichung ;goi ra LCD de hien thi
sjmp main1 ;tiep tuc
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con doc gio phut giay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
doc_gpg: mov r0,#00
movx a,@r0
mov giay,a
+++ 7 3~ :- ++ .+ . -. +-+
- . + y
mov r0,#02
movx a,@r0
mov phut,a
mov r0,#04
movx a,@r0
mov gio,a
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con chuyen so bcd sang ma ASCII
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
bcd_maascii: mov a,giay
anl a,#0fh
add a,#30h
mov 4fh,a
mov a,giay
anl a,#0f0h
swap a
add a,#30h
mov 4eh,a
mov a,phut
anl a,#0fh
add a,#30h
mov 4ch,a
mov a,phut
anl a,#0f0h
swap a
add a,#30h
mov 4bh,a
mov a,gio
anl a,#0fh
add a,#30h
mov 49h,a
mov a,gio
anl a,#0f0h
swap a
add a,#30h
mov 48h,a
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con hien thi noi dung tren LCD cua2 vung nho
;40H->4Fh hang 1
;50H-> 5Fh hang 2;
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
hienthichung: mov A,#080h ;set DDRAM
lcall ktao
mov r1,#16
mov r0,#40h ;bat dau tu 0
fline: lcall Write
djnz r1,fline
mov a,#0c0h ;set DDRAM
lcall ktao
mov r1,#16
sline: lcall Write
+++ 7 3~ :- ++ .+ . -. +-+
. + y 335
djnz r1,sline
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con goi data hien thi ra LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
write: mov a,@r0
write1: mov byteout,a
lcall data_byte
inc r0
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con khoi tao LCD
;chuong trinh dieu khien LCD 16X2 tren kit vi dieu khien LOAI NHO
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
khoitao_lcd: mov dklcd,#0
lcall khtaolcd ;khoi tao lcd
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chtr con khoi tao LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
khtaolcd: setb e ;Enable
clr rs ;RS low
clr rw ;RW low
mov a,#38h ;tu dieu khien LCD
lcall ktao
lcall ddelay41 ;delay 4.1 mSec
mov A,#38h ;function set
lcall ktao
lcall ddelay100 ;delay
mov A,#38h ;function
lcall ktao
mov A,#0ch ;tu dieu khien display on
lcall ktao
mov A,#01h ;tu dieu khien Clear display
lcall ktao
mov A,#06h ;tu dieu khien entry mode set
lcall ktao
mov A,#80h ;thiet lap dia chi LCD (set DD RAM)
lcall ktao
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con khoi tao LCD
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ktao: mov byteout,a
lcall command_byte
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Feed command/data to the LCD module
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
command_byte:
clr rs ;RS low for a command byte
ljmp bdelay
+++ 7 3~ :- ++ .+ . -. +-+
. + y
data_byte: setb rs ;RS high for a data byte
bdelay: clr rw ;R/W low for a write mode
clr e
nop
setb e ;Enable pulse
nop
nop
mov byteout,#0ffh ;configure port1 to input mode
setb rw ;set RW to read
clr rs ;set RS to command
clr e ;generate enable pulse
nop
nop
setb e
lcall ddelay100
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay 4.1 ms
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ddelay41: mov 7eh,#90h
del412: mov 7fh,#200
djnz 7fh,$
djnz 7eh,del412
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con delay 255 microgiay
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ddelay100: mov 7fh,#00
djnz 7fh,$
ret
delay1giay: mov 7ah,#20
xx2: mov 7bh,#0
xx1: mov 7ch,#0
djnz 7ch,$
djnz 7bh,xx1
djnz 7ah,xx2
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con khoi tao real time
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
khoitao_rt: mov r0,#0bh
mov a,#0
movx @r0,a ;cho phep chinh cai dat gio
mov r0,#0
movx @r0,a ;giay = 0
mov r0,#02
movx @r0,a ;phut = 0
mov r0,#04
movx @r0,a ;gio = 0
+++ 7 3~ :- ++ .+ . -. +-+
. + y 337
mov r0,#0ah
mov a,#020h
movx @r0,a ;cho phep bo dao dong chay
lcall delay1giay
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con xoa vung nho hien thi
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xoavnh_hthi: mov r0,#40h
mov a,#' '
xoac: mov @r0,a
inc r0
cjne r0,#60h,xoac
ret
end
8o| top 4: Hay hieu chnh lai chng trnh e co ay u cac thong so th, ngay, thang, nam
hien th tren LCD.
V|||. 10M 1A1:
Trong chng nay trnh bay giao tiep vi ieu khien vi cac thiet b ngoai vi c ban thng
c dung trong cac he thong ieu khien thc te.
Mot he thong ieu khien tuy thuoc vao mc o phc tap ma mach giao tiep vi nhieu thiet
b khac nhau, chng nay trnh bay tng phan ri rac, tac gia hy vong rang sau khi hieu c
tng phan ngi hoc hay ngi oc co the thiet ke cac he thong giao tiep theo yeu cau.
return