ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
§Ò tµI THIÕT KÕ HÖ VI Xö Lý 8 BIT
Y£U CÇU
PhÇn cøng :
1. Bé vi xö lý 8 bit (8085, 89C51 ….)
2. Bé nhí ch¬ng tr×nh ROM : 8KB tõ ®Þa chØ 0000H
3. Bé nhí d÷ liÖu RAM 8kB cã ®Þa chØ tuú chän.
4. Cæng vµo t¬ng tù 8 kªnh nhËn tÝn hiÖu nhiÖt ®é tõ 0 – 10V
t¬ng øng vãi nhiÖt ®é tõ 0 – 200 ®é C.
5. NhËp d÷ liÖu vµo tõ bµn phÝm 16 phÝm
6. Khèi hiÓn thÞ d÷ liÖu dïng mµn h×nh tinh thÓ láng LCD.
PhÇn mÒm :
1. TÝn hiÖu cho phÐp ch¹y vµ dõng ch¬ng tr×nh.TÝn hiÖu dõng
khÈn cÊp.
2. §äc tÝn hiÖu tõ 8 kªnh ®o l tr÷ trong vïng nhí RAM .
3. Sau mçi lÇn ®äc tÝnh gi¸ trÞ trung b×nh cña nhiÖt ®é vµ göi kÕt
qu¶ ra cæng hiÓn thÞ b»ng LCD
4. Ch¬ng trinh dõng l¹i b¸o ®éng b»ng cßi nÕu x¶y ra mét sè
®iÒu kiÖn sau:
- Gi¸ trÞ trung b×nh < hoÆc > gi¸ trÞ min hoÆc max t¬ng øng
cho tríc.C¸c gi¸ trÞ max & min nµy ®îc ®Æt ë trong 2 « nhí
RAM.
- Cã 4 kªnh ®o vît qu¸ hoÆc nhá h¬n gi¸ trÞ giíi h¹n cho
phÐp so víi gi¸ trÞ trung b×nh.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
1
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
phÇn I
ThiÕt kÕ m¹ch phÇn cøng
Ch¬ng I
®Þnh híng thiÕt kÕ
ThiÕt kÕ mét hÖ vi xö lý bao gåm c¶ viÖc thiÕt kÕ tæ chøc phÇn cøng vµ
viÕt phÇn mÒm cho nÒn phÇn cøng mµ ta thiÕt kÕ. ViÖc xem xÐt gi÷a tæ chøc
phÇn cøng vµ ch¬ng tr×nh phÇn mÒm cho mét thiÕt kÕ lµ mét vÊn ®Ò cÇn ph¶i
c©n nh¾c. V× khi tæ chøc phÇn cøng cµng phøc t¹p, cµng cã nhiÒu chøc n¨ng
hç trî cho yªu cÇu thiÕt kÕ th× phÇn mÒm cµng ®îc gi¶m bít vµ dÔ dµng thùc
hiÖn nhng l¹i ®Èy cao gi¸ thµnh chi phÝ cho phÇn cøng, còng nh chi phÝ b¶o tr×.
Ngîc l¹i víi mét phÇn cøng tèi thiÓu l¹i yªu cÇu mét ch¬ng tr×nh phÇn mÒm
phøc t¹p h¬n, hoµn thiÖn h¬n; nhng l¹i cho phÐp b¶o tr× hÖ thèng dÔ dµng h¬n
còng nh viÖc ph¸t triÓn tÝnh n¨ng cña hÖ thèng tõ ®ã cã thÓ ®a ra gi¸ c¹nh
tranh ®îc.
Tõ yªu cÇu vµ nhËn ®Þnh trªn ta cã nh÷ng ®Þnh híng s¬ bé cho thiÕt kÕ
nh sau:
1. Chän bé vi xö lý:
Tõ yªu cÇu dïng VXL 8 bit ta dù kiÕn dïng c¸c chip vi ®iÒu khiÓn thuéc
hä MCS-51 cña Intel, mµ cô thÓ ë ®©y lµ dïng chip 89C51 v× nh÷ng lý do sau:
+ AT89C51 thuéc hä MCS-51, lµ chip vi ®iÒu khiÓn 8 bÝt ®¬n chÝp
CMOS cã hiÖu suÊt cao, c«ng suÊt nguån tiªu thô thÊp vµ cã 4 Kb bé nhí
ROM Flash xo¸ ®îc lËp tr×nh ®îc. ChÝp nµy ®îc s¶n xuÊt dùa theo c«ng nghÖ
bé nhí kh«ng mÊt néi dung cã ®é tÝch hîp cao cña Atmael
+ AT89C51 cã c¸c ®Æc trng chuÈn sau: 4Kb Flash, 128 byte RAM, 32 ®êng xuÊt nhËp, bé ®Þnh thêi / ®Õm 16 bit, mét cÊu tróc ng¾n hai møc u tiªn vµ
5 nguyªn nh©n ng¾t, mét port nèi tiÕp song song c«ng, m¹ch dao ®éng vµ
m¹ch dao ®éng vµ m¹ch t¹o xung trªn chÝp.
V× nh÷ng lý do trªn mµ viÖc lùa chän vi ®iÒu khiÓn 89C51 lµ mét gi¶i
ph¸p hoµn toµn phï hîp cho thiÕt kÕ.
2. Tæ chøc ngo¹i vi:
+ Xö lý tÝn hiÖu vµo ta dïng thiÕt bÞ chuyÓn ®æi t¬ng tù/ sè (ADC) cã 8
kªnh vµo t¬ng tù kÕt nèi víi 8 tÝn hiÖu ®o nhiÖt ®é tõ 0 ÷ 10V t¬ng øng víi
nhiÖt ®é tõ 0o ÷ 200oC.
+ Xö lý viÖc hiÓn thÞ kÕt qu¶ nhiÖt ®é trung b×nh ta dïng 3 LED 7 thanh
®Ó hiÓn thÞ t¬ng øng víi c¸c nhiÖt ®é trong d¶i 0 ÷ 2000C.
+ TÝn hiÖu cho phÐp ch¹y ®îc xö lý b»ng c¸ch dïng mét nót Ên Reset hÖ
thèng.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
2
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
+ TÝn hiÖu b¸o ®éng ®îc xö lý b»ng mét cßi b¸o ®éng kÕt nèi víi mét
cæng bÊt kú phôc vô cho vµo/ra.
+ NÕu cã yªu cÇu dïng c¸c phÝm ®Ó ®Þnh c¸c mode ho¹t ®éng, còng nh
®Æt l¹i gi¸ trÞ MAX vµ MIN th× bµn phÝm còng ph¶i ®îc kÕt nèi víi c¸c cæng
giao tiÕp vµo/ra (ë ®©y yªu cÇu dïng 8255).
TÊt c¶ c¸c thiÕt bÞ ph¶i ®îc kÕt nèi víi nhau th«ng qua c¸c bus cÇn thiÕt
gåm bus d÷ liÖu, bus ®Þa chØ vµ bus ®iÒu khiÓn.
S¬ ®å khèi cho thiÕt kÕ phÇn cøng cña hÖ thèng nh sau:
Address Bus
VXL
89C51
ROM
M¹ch
giao
tiÕp
8255
RAM
Khèi vµo
t¬ng tù
8 kªnh
Khèi
hiÓn thÞ
Data Bus
Control Bus
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
3
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
Ch¬ng II
Néi dung thiÕt kÕ
I. tæ chøc phÇn cøng hÖ VXL89C51.
1. HÖ vi xö lý AT89C51:
1.1 S¬ ®å ch©n hÖ vi xö lý AT89C51:
Port 0
Port 0 lµ port xuÊt nhËp 8 bit hai chiÒu cùc D hë.
Port 0 cßn ®îc cÊu h×nh lµm bus ®Þa chØ ( byte thÊp ) vµ bus d÷ liÖu ®a
hîp trong khi truy xuÊt bé nhí d÷ liÖu ngoµi vcµ bé nhì ch[ng tr×nh ngoµi.
Port 0 còng nhËn c¸c byte m· trong khi lËp tr×nh cho Flash vµ c¸c byte
m· trong khi kiÓm tra ch¬ng tr×nh.
Port 1
Port 1 lµ port xuÊt nhËp 8 bÝt.
Port 1 còng lµ byte ®Þa chØ thÊp trong thõi gian lËp tr×nh cho Flash vµ
kiÓm tra ch¬ng tr×nh.
Port 2
Port 2 lµ port xuÊt nhËp 8 bit hai chiÒu.
Port 2 t¹o ra byte cao cña ®Þa chØ trong thêi gian t×m n¹p lÖnh tõ bé nhí
ch¬ng tr×nh ngoµi vµ trong thêi gian truy xuÊt bé nhí d÷ liÖu ngoµi sö dông
®Þa chØ 16 bit
Port 2 còng nhËn c¸c ®Þa chØ cao vµ tÝn hiÖu ®iÒu khiÓn trong thêi gian
lËp tr×nh cho Flash vµ kiÓm tra ch¬ng tr×nh.
Port 3
Port 3 lµ port xuÊt nhËp 8 bit hai chiÒu.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
4
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
Port 3 còng cßn ®îc dïng lµm chøc n¨ng kh¸c cña AT89C51 c¸c chøc
n¨ng ®îc liÖt kª nh sau:
Ch©n cña port
Chøc n¨ng
P3.0
RxD ( ngâ vµo cña port nèi tiÕp )
P3.1
TxD ( ngâ ra cña port nèi tiÕp )
P3.2
INT 0
( ngâ vµ ng¾t ngoµi 0 )
P3.3
INT1
( ngâ vµo ng¾n ngoµi 1 )
P3.4
TO ( ngâ vµo bªn ngoµi cña bé ®Þnh thêi 0 )
P3.5
T1 ( ngâ vµo bªn ngoµi cña bé ®Þnh thêi 1 )
P3.6
RW (
P3.7
RD
®iÒu khiÓn bé nhí d÷ liÖu ngoµi )
( ®iÒu khiÓn ®äc bé nhí d÷ liÖu ngoµi )
Port 3 còng nhËn mét vµi tÝn hiÖu ®iÒu khiÓn cho viÖc lËp tr×nh Flash vµ
®iÒu khiÓn ch¬ng tr×nh.
RST
Ngâ vµo reset.
ALE/ PROG xung cña ngâ ra cho phÐp chèt ®Þa chØ ALE cho phÐp chèt
byte thÊp cña ®Þa chØ trong thêi gian truy xuÊt bé nhí ngoµi. Ch©n nµy còng ®îc dïng lµm ngâ vµo xung lËp tr×nh ( PROG ) trong thêi gian lËp tr×nh Flash.
PSEN
Ch©n cho phÐp bé nhí ch¬ng tr×nh ngoµi , ®iÒu khiÓn truy xuÊt bé nhí
ch¬ng tr×nh ngoµi.
EA / Vpp
Ch©n cho phÐp truy nhËp bé nhí ngoµi EA , ph¶i ®îc nèi víi GND ®Ó
cho phÐp chÝp vi ®iÒu khiÓn t×m n¹p lÖnh tê c¸c vÞ trÝ « nhí cña bé nhí ch¬ng
tr×nh ngoµi
Ch©n
EA
nèi víi VCC ®Ó thùc hiÖn ch¬ng tr×nh bªn trong chÝp.
cßn nhËn ®iÖn ¸p cho phÐp lËp tr×nh VPP trong thêi gian lËp
tr×nh cho Flash , ®iÖn ¸p nµy cÊp cho bé phËn cã yªu cÇu ®iÖn ¸p 12V
EA / Vpp
XTAL1
Ngâ vµo ®Õn m¹ch khuyÕch ®¹i d¶o cña m¹ch dao ®éng vµ ngâ ®Õn
m¹ch xung clock bªn trong chÝp.
XTAL2
Ngâ ra tõ m¹ch khuyÕch ®¹i ®¶o cña m¹ch dao ®éng.
1.2 Tæ chøc bé nhí:
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
5
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
1.2.1 CÊu tróc chung cña bé nhí:
TÊt c¶ c¸c vi ®iÒu khiÓn thuéc hä MCS-51 ®Òu ph©n chia bé nhí thµnh
hai vïng ®Þa chØ cho bé nhí d÷ liÖu vµ bé nhí ch¬ng tr×nh. Sù ph©n chia logic
gi÷a bé nhí d÷ liÖu vµ bé nhí ch¬ng tr×nh cho phÐp truy nhËp bé nhí d÷ liÖu
b»ng 8 bit ®Þa chØ gióp cho viÖc lu tr÷ vµ thao t¸c d÷ liÖu nhanh h¬n.Tuy nhiªn,
chóng ta cã thÓ sö dông ®Þa chØ bé nhí d÷ liÖu 16 bit th«ng qua thanh ghi
DPTR.
Bé nhí ch¬ng tr×nh lµ lo¹i bé nhí chØ cho phÐp ®äc, kh«ng cho phÐp
ghi. Mét sè vi ®iÒu khiÓn ®îc tÝch hîp s½n bé nhí ch¬ng tr×nh bªn trong víi
dung lîng kho¶ng 4kbyte hay 8 kbyte, sè cßn l¹i ph¶i sö dông bé ch¬ng tr×nh
më réng mµ qu¸ tr×nh truy nhËp ®îc thùc hiÖn th«ng qua sù ®iÒu khiÓn b»ng
tÝn hiÖu PSEN (Progam Strobe Enable).
Tuy nhiªn, vi ®iÒu khiÓn 8051 cho phÐp ta sö dông ®Õn 64kbyte bé nhí
ch¬ng tr×nh b»ng c¸ch sö dông c¶ bé nhí ch¬ng tr×nh bªn trong vµ bªn ngoµi.
Bé nhí sè liÖu chiÕm gi÷ vïng ®Þa chØ ph©n chia cña bé nhí ch¬ng
tr×nh. Dung lîng cña bé nhí d÷ liÖu cã thÓ më réng lªn tíi 64 kbyte. Trong
qu¸ tr×nh truy nhËp bé nhí sè liÖu, CPU ph¸t ra c¸c tÝn hiÖu ®äc vµ tÝn hiÖu
viÕt sè liÖu th«ng qua c¸c ch©n RD vµ WR.
Bé nhí Ch¬ng tr×nh
B
é nhí
Sè liÖu
FFFFH
Bé
nhí më
Bé
nhí
FFH
réng
|EA=0
Bé nhí
ngoµi
m
ë
réng
|EA=1
Bé nhí
trong
0000H
|PSEN
00H
|WR |RD
H×nh 2.3: CÊu tróc bé nhí cña hä MCS-51.
Chóng ta cã thÓ kÕt hîp bé nhí ch¬ng tr×nh më réng víi bé nhí sè liÖu
më réng b»ng c¸ch cho hai tÝn hiÖu RD vµ PSEN qua mét cæng logic AND, lèi
ra cña cæng AND nµy sÏ t¹o tÝn hiÖu ®äc cho bé nhí më réng.
1.2.2 Bé nhí ch¬ng tr×nh:
Sau khi Reset, CPU b¾t ®Çu thùc hiÖn ch¬ng tr×nh tõ ®Þa chØ 0000H.
Vïng ®Çu cña bé nhí ch¬ng tr×nh lµ vïng chøa c¸c vector ng¾t, mçi ng¾t ®îc
ph©n chia mét vïng ®Þa chØ cè ®Þnh trong trong bé nhí ch¬ng tr×nh. Khi xuÊt
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
6
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
hiÖn ng¾t, CPU sÏ nh¶y tíi ®Þa chØ nµy, ®©y còng lµ ®Þa chØ ®Çu cña ch ¬ng
tr×nh con phôc vô ng¾t. C¸c vector ng¾t c¸ch nhau 8 byte, v× vËy nÕu ch ¬ng
tr×nh con phôc vô ng¾t qu¸ dµi (>8 byte) th× t¹i vector ng¾t ta ph¶i ®Æt mét lÖnh
nh¶y kh«ng ®iÒu kiÖn tíi vïng ®Þa chØ kh¸c chøa ch¬ng tr×nh con phôc vô
ng¾t.
1.2.3 Bé nhí sè liÖu:
PhÝa bªn ph¶i cña H×nh 2.3 biÓu diÔn kh«ng gian bé nhí d÷ liÖu cña
MCS-51. Chóng ta cã thÓ sö dông tíi 64 Kbyte bé nhí sè liÖu ngo¹i vi. §é
réng bus ®Þa chØ cña bé nhí sè liÖu ngoµi cã thÓ lµ 8 bit hoÆc 16 bit. Bus ®Þa
chØ réng 8 bit thêng ®îc sö dông ®Ó liªn kÕt víi mét hoÆc nhiÒu ®êng vµo ra
kh¸c ®Ó ®Þnh ®Þa chØ cho RAM theo trang. Trong trêng hîp bus ®Þa chØ réng 16
bit, cæng P2 sÏ ph¸t ra 8 bit ®Þa chØ cao cßn cæng P1 sÏ ph¸t ra 8 bit ®Þa chØ
thÊp. B»ng c¸ch nµy, ta cã thÓ truy nhËp trùc tiÕp lªn bé nhí d÷ liÖu ngoµi víi
®é lín tèi ®a lµ 64 Kbyte.
Bé nhí sè liÖu trong ®îc chia ra lµm 3 vïng:
+128 byte cao.
+128 byte thÊp.
+Vïng dµnh cho c¸c thanh ghi chøc n¨ng ®Æc biÖt (SFR).
§Þa chØ cña bé nhí sè liÖu trong lu«n lµ 8 bit, vµ cã thÓ qu¶n lý ®îc
256 byte bé nhí.
2. Tæ chøc bé nhí (Memory Map):
Tõ cÊu tróc cña vi ®iÒu khiÓn 89C51 giíi thiÖu ë ch¬ng I vµ yªu cÇu thiÕt
kÕ ta tiÕn hµnh ph©n bæ c¸c vïng nhí nh sau:
Bé nhí ch¬ng tr×nh 8K ROM chia lµm hai vïng:
ROM trong (On-chip) cã ®Þa chØ vËt lý:
0000H ÷ 0FFFH.
Bé nhí d÷ liÖu ®îc më réng thªm 8K RAM ngoµi, víi ®Þa chØ vËt lý:
2000H ÷ 3FFFH.
M¹ch ghÐp nèi vµo/ ra sö dông IC8255 víi ®Þa chØ cña tõng cÊu h×nh
nh sau:
§Þa chØ cæng PA: 4000H
§Þa chØ cæng PB: 4001H
§Þa chØ cæng PC: 4002H
§Þa chØ cña tõ ®iÒu khiÓn PSW: 4003H
§Þa chØ cña ADC08098 kªnh vµo t¬ng tù: 6000H ÷ 6007H.
3. Khèi hiÓn thÞ :
Khèi hiÓn thÞ gåm 8 LED 7 ®o¹n ®îc tæ chøc theo kiÓu s¸ng lu©n phiªn
2.5 ms mét lÇn. LED s¸ng ®îc chän bëi 89C51 qua ®êng ®iÒu khiÓn tõ cæng
P0.0 -> P0.3. D÷ liÖu ®îc hiÓn thÞ díi d¹ng m· 7 thanh còng ®îc 89C51 göi tíi
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
7
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
LED qua ®êng data. §Ó phï hîp gi÷a sè liÖu ®a ra cæng cña 8255 (ë d¹ng
BCD) víi sè liÖu hiÓn thÞ ra LED 7 ®o¹n, ta sö dông m¹ch phÇn cøng. V× vËy
trong khèi hiÓn thÞ ta sö dông vi m¹ch SN7447 ®Ó gi¶i m· sè BCD ra m· 7
thanh vµ ®Ó ®iÒu khiÓn bé ®Ìn hiÓn thÞ.
4. Khèi c¸c thiÕt bÞ giao tiÕp/ghÐp nèi.
Cæng vµo ra t¬ng tù/sè dïng ADC0809. Sè liÖu vµo t¬ng tù tõ 8 c¶m biÕn
nhiÖt ®é sÏ ®îc kÕt nèi vµo 8 cæng vµo cña ADC, ADC ®îc ®iÒu khiÓn bëi
VXL89C51 thùc hiÖn viÖc chuyÓn ®æi sè liÖu sang d¹ng sè vµ lu tr÷ vµo mét
vïng nµo ®ã trong RAM trong.
Cæng vµo/ ra sè dïng vi m¹ch PPI 8255 cã kh¶ n¨ng lËp tr×nh thùc hiÖn
qu¸ tr×nh phèi hîp trao ®æi d÷ liÖu; cô thÓ ë ®©y lµ sè liÖu vµo gi÷a ADC víi
VXL vµ sè liÖu tõ VXL ra LED.
Giíi thiÖu linh kiÖn vµ tæ chøc phèi ghÐp.
1. ThiÕt kÕ bé nhí:
Xem xÐt cÊu tróc cña 89C51 vµ yªu cÇu cÇn 8K cho nhí ch¬ng tr×nh ta
thiÕt kÕ thªm vïng nhí ch¬ng tr×nh dïng thªm 8Kb ROM ®Æt ë ngoµi. §èi víi
yªu cÇu cho nhí d÷ liÖu, v× 89C51 ®· cã 128 bytes RAM trong vµ yªu cÇu cÇn
thiÕt kÕ bé nhí d÷ liÖu lµ 4Kb nªn ®Ó dÔ dµng cho thiÕt kÕ ta sö dông thªm
8Kb RAM ngoµi ®Ó më réng bé nhí d÷ liÖu cho hÖ thèng.
Bé nhí ROM ngoµi
Thùc ra th× ta cã thÓ dïng bé nhí ROM ngoµi lµ c¸c chÝp nhí EPROM
cã dung lîng 4K hoÆc 8K cã b¸n trªn thÞ trêng ®Ó më réng bé nhí.Tuy nhiªn,
®Ó cho ®¬n gi¶n ta lùa chän gi¶i ph¸p lµ dïng bé nhí ROM 8k trªn chÝp vi
®iÒu khiÓn 89S51.Nh vËy sÏ ®¬n gi¶n h¬n rÊt nhiÒu cho thiÕt kÕ mµ vÉn phï
hîp víi néi dung ph¹m vi cho phÐp cña ch¬ng tr×nh.
Bé nhí RAM ngoµi
§èi víi RAM ngoµi ta sö dông lo¹i SRAM vi m¹ch dïng trong thiÕt kÕ
lµ 6264. Còng cã 13 ®êng ®Þa chØ 8 ®êng d÷ liÖu. Nã cã ®Þa chØ 2000÷3FFF,
®Þa chØ nµy ®îc chän ra trong vïng ®Þa chØ cña vi ®iÒu khiÓn bëi ch©n /CS2 cña
gi¶i m· ®Þa chØ. Ngoµi ra cßn cã ®êng chän vá kh¸c lµ /CS2 ®îc nèi tÝch cùc vµ
cã hai ®êngtÝn hiÖu yªu cÇu ®äc viÕt lµ /OE, /WE .
• S¬ ®å ch©n cña RAM 6264:
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
8
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
2. Vi m¹ch ADC0809:
Bé ADC 0809 lµ mét thiÕt bÞ CMOS tÝch hîp víi mét bé chuyÓn
®æi t¬ng sang sè 8 bit, bé chän kªnh vµ mËt bé logic ®iÒu khiÓn t¬ng thÝch. Bé
chuyÓn ®æi t¬ng tù sè nµy sö dông ph¬ng ph¸p chuyÓn ®æi xÊp xØ. Bé chän
kªnh cã thÓ chän ra kªnh cÇn chuyÓn ®æi b»ng 3 ch©n chän ®Þa chØ. ThiÕt bÞ
nµy lo¹i trõ kh¶ n¨ng cÇn thiÕt ®iÒu chØnh ®iÓm zero bªn ngoµi vµ kh¶ n¨ng
®iÒu chØnh tØ sè lµm cho ADC ®Ô dµng giao tiÕp víi c¸c bé vi xö lý.
C¸c ®Æc ®iÓm c¬ b¶n cña ADC 0809
- Nguån nu«i ®¬n ± 5 V, hiÖu suÊt cao.
- D¶i tÝn hiÖu lèi vµo t¬ng tù 5V khi nguån nu«i lµ +5V. Cã thÓ më
réng thang ®o b»ng c¸c gi¶i ph¸p kü thuËt cho tõng m¹ch cô thÓ.
- DÔ dµng giao tiÕp víi vi xö lý v× ®Çu ra cã bé ®Öm 3 tr¹ng th¸i nªn
cã thÓ ghÐp trùc tiÕp vµo kªnh d÷ liÖu cña hÖ VXL.
- Tæng sai sè cha chØnh ±1/2LSB.
- Thêi gian chuyÓn ®æi 100 µs .
- TÇn sè xung clock 10kHz – 1028 kHz.
- §¶m b¶o sai sè tuyÕn tÝnh trong d¶i nhiÖt ®é tõ –40 0C ÷ 85OC.
a. B¶ng ch©n lý vµ s¬ ®å ch©n cña vi m¹ch ADC0809.
A
0
0
0
0
1
1
1
1
X
B
0
0
1
1
0
0
1
1
X
C
0
1
0
1
0
1
0
1
X
X
0
1
2
3
4
5
6
7
(?)
* ý nghÜa c¸c ch©n:
- IN0 – IN7 : 8 ®Çu vµo t¬ng tù.
- A,B,C : c¸c tÝn hiÖu chän kªnh.
- C¸c ch©n 2.1-2.7: lµ c¸c ®Çu ra sè.
- ALE cho phÐp chèt sè liÖu ®Çu vµo.
- Start: xung cho phÐp b¾t ®Çu chuyÓn ®æi.
- Clk:®Çu vµo xung clock
- Ref(+): ®iÖn ¸p vµo chuÈn +5v
- Ref(-): ®iÖn ¸p vµo chuÈn 0
- Vcc: nguån cung cÊp
b. CÊu tróc bªn trong cña ADC 0809
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
9
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
CÊu tróc bªn trong cña ADC0809 ®îc thÓ hiÖn ë h×nh vÏ díi:
Ho¹t ®éng chuyÓn ®æi:
C¸c bit ®Þa chØ ë lèi vµo A,B,C tõ bé gi¶i m· ®Þa chØ sÏ chèt vµ x¸c ®Þnh
kªnh ®Çu vµo nµo ®îc chän. Khi mét kªnh ®îc chän ®ång thêi yªu cÇu
START, ALE ®îc tÝch cùc, yªu cÇu ®é réng xung START kh«ng nhá h¬n
200ns. Gi¸ trÞ ®iÖn ¸p cÇn ®îc chuyÓn ®æi sÏ ®îc chèt l¹i ë cæng vµo t¬ng øng
xung Start b¾t ®Çu chuyÓn ®æi. Sau xung START kho¶ng 10μs ®Çu ra EOC
(end of convert) lóc nµy xuèng thÊp thùc sù b¾t ®Çu qu¸ tr×nh chuyÓn ®æi.
Trong suèt qu¸ tr×nh chuyÓn ®æi EOC lu«n ë møc tÝch cùc thÊp, ®ång thêi ®Çu
ra 3 tr¹ng th¸i cña ADC0809 bÞ th¶ næi. Sau kho¶ng 100 µs, ADC0809 thùc
hiÖn viÖc chuyÓn ®æi xong, d÷ liÖu ®Çu vµo ®îc ®a ®Õn bé ®Öm ®Çu ra ba tr¹ng
th¸i ®ång thêi ch©n tÝn hiÖu EOC chuyÓn lªn møc cao b¸o cho VXL biÕt ®Ó
®äc kÕt qu¶ vµo.
c. GhÐp ADC0809 víi VXL8051.
+ C¸c kªnh vµo Analog ®îc nèi vµo c¸c ®Çu vµo t¬ng øng cña ADC. Mçi
kªnh ®ã cã ®Þa chØ riªng do tæ hîp 3 bit ®Þa chØ A,B,C quy ®Þnh. C¸c ®Çu vµo
®Þa chØ nµy kÕt nèi víi ®êng ®Þa chØ A0A1A2 cña Bus ®Þa chØ cña hÖ thèng. C¸c
®êng ®Þa chØ cao cña hÖ thèng ®îc dïng ®Ó t¹o tÝn hiÖu chän chip (/CS) cho
ADC0809.
+ TÝn hiÖu /CS ®îc ®a tíi ®Çu vµo cña m¹ch OR ®Ó khëi ®éng ADC
(Start) khi cã tÝn hiÖu /WR ®ång thêi chèt ®Þa chØ (ALE) cña kªnh hiÖn hµnh
cã gi¸ trÞ lµ gi¸ trÞ 3 bit A,B,C. TÝn hiÖu /CS còng ®îc ®a tíi ®Çu vµo cña m¹ch
OR thø hai ®Ó t¹o tÝn hiÖu OE cïng víi /RD nh»m chèt d÷ liÖu ®· biÕn ®æi
xong ë ®Çu ra.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
10
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
+ V× khi biÕn ®æi xong, ACD0809 dïng tÝn hiÖu ra ch©n EOC ®Ó b¸o cho
VXL biÕt m· nhÞ ph©n t¬ng øng víi møc cao cña tÝn hiÖu ®Çu vµo ®· ®îc t¹o
ra. V× vËy ta kÕt nèi EOC víi ®Çu vµo ng¾t ngoµi /INT1 cña 8051.
- + 8 bit d÷ liÖu thêng ®îc ghÐp trùc tiÕp víi Bus d÷ liÖu hÖ thèng v×
b¶n th©n bé ®Öm ra lµ 3 tr¹ng th¸i, còng cã thÓ ghÐp qua 8255.
3.Vi m¹ch giao tiÕp song song PPI 8255:
Vi m¹ch 8255 lµ mét vi m¹ch ®îc sö dông phæ biÕn ®Ó giao tiÕp trong
c¸c hÖ VXL 8 – 16 bit. Sö dông 8255A lµm cho viÖc thiÕt kÕ ®Ó ghÐp nèi bé
VXL víi c¸c thiÕt bÞ ngo¹i vi ®¬n gi¶n ®i nhiÒu, ®é mÒm dÎo cña thiÕt kÕ sÏ
t¨ng lªn vµ linh kiÖn phô trî ®i kÌm còng gi¶m ®i nhiÒu. Do cã kh¶ n¨ng lËp
tr×nh ®îc nªn nã cã thÓ võa dïng nh cæng nhËn sè liÖu còng nh xuÊt sè liÖu tuú
néi dung cña tõ ®iÒu khiÓn mµ ngêi lËp tr×nh ®a vµo.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
11
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
a. S¬ ®å ch©n vµ s¬ ®å chøc n¨ng cña 8255A.
S¬ ®å chøc n¨ng vµ s¬ ®å ch©n cña 8255A ®îc thÓ hiÖn díi h×nh vÏ sau:
PA
PA
PA3
PA2
RD1
CS\0\
GN
AD1
A0
PC7
PC6
PC5
PC4
PC0
PC1
PC2
PC3
PB0
PB1
PB2
1
40
8255A
20
21
PA
PA
4
PA
5
PA
6
WR\
7
RESET
D0
D1
D2
D3
D4
D5
D6
D7
Vc
cPB7
PB6
PB5
PB4
PB3
D0 – D7
PA0 – PA7
8255A
RD\
WR\
RESET
A0
A1
CS\
PB0 – PB7
PC0 – PC7
Trong ®ã:
Ch©n 1 ÷ 4, 37 ÷ 40 (PA0 – PA7): lµ c¸c ®êng xuÊt nhËp cã tªn lµ cæng A.
Ch©n 18 ÷ 25 (PB0 – PB7): lµ c¸c ®êng nhËp xuÊt cã tªn cæng B.
Ch©n 10 ÷ 13, 14 ÷ 17 (PB0 – PB7): lµ c¸c ®êng nhËp xuÊt cã tªn cæng C.
Ch©n 27 ÷ 34 (D0 – D7): lµ c¸c ®êng d÷ liÖu (data) ho¹t ®éng hai chiÒu,
dÉn tÝn hiÖu ®iÒu khiÓn tõ vi xö lý ra c¸c thiÕt bÞ bªn ngoµi ®ång thêi nhËn c¸c
d÷ liÖu tõ c¸c thiÕt bÞ ®iÒu khiÓn bªn ngoµi vµo vi xö lý.
Ch©n 35 (Reset input): ngâ vµo xãa, ch©n reset ph¶i ®îc nèi víi tÝn hiÖu
reset out cña vi xö lý ®Ó kh«ng lµm ¶nh híng ®Õn m¹ch ®iÒu khiÓn. Khi reset,
c¸c cæng cña 8255A lµ c¸c ngâ vµo, ®ång thêi tÊt c¶ c¸c d÷ liÖu trªn thanh ghi
bªn trong 8255A ®Òu bÞ xãa, 8255A trë vÒ tr¹ng th¸i ban ®Çu s¨n sµng lµm
viÖc.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
12
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
Ch©n 6 (CS\): tÝn hiÖu ngâ vµo chip select (CS\) ®îc ®iÒu khiÓn bëi vi xö
lý, dïng ®Ó lùa chän 8255A lµm viÖc khi vi xö lý giao tiÕp víi nhiÒu thiÕt bÞ.
Ch©n 5 (RD\): ngâ vµo ®äc d÷ liÖu (Read Input).
Ch©n 36 (WR\) : ngâ vµo ghi d÷ liÖu (Write Input).
Ch©n 8,9 (A1, A0): ngâ vµo ®Þa chØ (Address Input), dïng nhËn ®Þa chØ
vµo ®Ó lùa chän thanh ghi vµ c¸c cæng.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
13
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
• B¶ng ®Þa chØ lùa chän thanh ghi vµ c¸c cæng:
A1
A0
Cæng vµ thanh ghi
0
0
Cæng A
0
1
Cæng B
1
0
Cæng C
1
1
Thanh ghi ®iÒu khiÓn
Ch©n 26 (Vcc) : nguån 5 VDC.
Ch©n 7 (GND) : GND 0 VDC.
b. CÊu tróc bªn trong vµ ho¹t ®éng cña 8255A.
§iÒu khiÓn
nhãm A
PA7 –
PA0
Port A
PC7 – PC4
Port C
D7 –
D0
(4 bit cao)
§Öm
bus d÷
liÖu
Nhãm A
PC3 – PC0
Port C
§iÒu khiÓn
nhãm B
RD\
Logic
®iÒu
khiÓn
ghi/®äc
WR\
CS\
A0
A1
(4 bit thÊp)
PB7 – PC0
Port B
Nhãm B
S¬ ®å khèi cÊu tróc bªn trong cña vi m¹ch 8255A.
Ho¹t ®éng cña vi m¹ch 8255A:
Tõ s¬ ®å khèi cÊu tróc bªn trong cña vi m¹ch 8255A ta thÊy c¸c cæng
cña 8255A ®îc chia thµnh 2 nhãm:
Nhãm A gåm cæng A vµ 4 bit cao cña cæng C.
Nhãm B gåm cæng B vµ 4 bit thÊp cña cæng C.
CÊu h×nh lµm viÖc cña 2 nhãm sÏ do néi dung cña thanh ghi ®iÒu khiÓn
quyÕt ®Þnh.
Vi m¹ch 8255 giao tiÕp víi vi xö lý th«ng qua c¸c ®êng sau :
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
14
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
- §êng d÷ liÖu: gåm 8 ®êng d÷ liÖu (D0 - D7). M· lÖnh, c¸c d÷ liÖu ®Òu
®îc truyÒn ®i trªn ®êng nµy.
- §êng ®Þa chØ: gåm 2 ®êng (A0 – A1) dïng ®Ó lùa chän cæng hoÆc
thanh ghi ®iÒu khiÓn nh ®· tr×nh bµy ë trªn.
- §êng ®iÒu khiÓn: gåm c¸c ®êng RD\, WR\, CS\, Reset dïng ®Ó ®iÒu
khiÓn viÖc ho¹t ®éng cña 8255A.
§Ó sö dông c¸c cæng lµm c«ng cô giao tiÕp, ngêi sö dông ph¶i göi tõ
®iÒu khiÓn ra thanh ghi ®iÒu khiÓn ®Ó 8255A ®Þnh cÊu h×nh lµm viÖc cho c¸c
cæng ®óng nh yªu cÇu cña ngêi lËp tr×nh.
c. Tõ ®iÒu khiÓn:
Tõ ®iÒu khiÓn lµ d÷ liÖu ®îc göi tíi thanh ghi ®iÒu khiÓn (CWR) cña
8255. Gi¸ trÞ cña tõ ®iÒu khiÓn sÏ x¸c ®Þnh cÊu h×nh lµm viÖc cho c¸c cæng cña
8255A, ®ã lµ viÖc lùa chän chøc n¨ng nhËp hay xuÊt cña c¸c cæng.
Trong tõ ®iÒu khiÓn cã mét bit ®Ó ph©n biÖt hai chøc n¨ng ®iÒu khiÓn
kh¸c nhau lµ:
+ §Þnh nghÜa chÕ ®é c¸c cöa (bit D7 cña tõ ®iÒu kiÓn lµ 1).
+ LËp/xo¸ c¸c bit cña Port C (bit D7cña tõ ®iÒu khiÓn lµ 0).
• §Þnh nghÜa chÕ ®é c¸c cæng
Khi D7 =1, 8255A sÏ sö dông th«ng tin trong CWR ®Ó ®Þnh nghÜa chÕ ®é
c¸c cöa. Néi dung cña CWR x¸c ®Þnh chøc n¨ng cña 24 ®êng ghÐp nèi víi
thiÕt bÞ ngo¹i vi. PhÇn mÒm cña hÖ thèng sÏ ®Þnh nghÜa chÕ ®é cña PA, PB mét
c¸ch ®éc lËp; cßn PC cã thÓ ®îc ®Þnh nghÜa ®éc lËp hay chia lµm hai phô thuéc
vµo chÕ ®é cña PA vµ PB.
1D6D5D4D3D2D1D0
Nhãm A
Nhãm B
Mode select
00 = mode 0
01 = mode 1
1x = mode 2Cæng A
1 = Input
0 = OutputPCH (4 bit
cao)
1=Input
0=Output
PCL (4 bit thÊp)
1 = Input
0 = OutputPB
1 = Input
0 = OutputMode
select
1 = mode 0
0 = mode 1
Trong chÕ ®é nµy cã thÓ cã 3 chÕ ®é lµm viÖc kh¸c nhau tuú thuéc vµo
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
15
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
néi dung cña hai bit D6D5, cô thÓ lµ:
+ ChÕ ®é 0(Vµo ra c¬ së): D6D5 = 00,ë chÕ ®é nµy 8255A cho kh¶ n¨ng
xuÊt/nhËp d÷ liÖu ®¬n gi¶n qua c¶ 3 cæng A, B, C mét c¸ch ®éc lËp.
+ ChÕ ®é 1 : D6D5 =01, ®©y lµ chÕ ®é vµo ra cã chèt (Strobe), nghÜa lµ cã
sù ®èi tho¹i gi÷a ngo¹i vi vµ hÖ VXL th«ng qua c¸c bit cña cæng C. Trong chÕ
®é nµy, víi nhãm A. th× PA dïng ®Ó trao ®æi sè liÖu vµ nöa cao cña PC (PC 4 ÷
PC7) ®Ó ®èi tho¹i gi÷a ngo¹i vi vµ VXL. Cßn ë nhãm B th× PB dïng ®Ó trao ®æi
sè liÖu vµ PCL ®Ó ®èi tho¹i.
+ ChÕ ®é 2: D6D5 =1x. Cæng A dïng vµo/ra hai chiÒu, c¸c bit PC 3 ÷ PC7
dïng lµm tÝn hiÖu ®èi tho¹i. Cæng PB cã thÓ lµm viÖc nh ë chÕ ®é 1.
• LËp/xo¸ bit:
NÕu D7=0 th× CWR lµ lÖnh ®Ó lËp/xo¸ bit cña Port C. LÖnh nµy cho phÐp
lËp/xo¸ bÊt kú bit nµo cña C mét c¸ch ®éc lËp.
0D6D5D4D3D2D1D0
1: LËp
0: Xo¸
Kh«ng dïng=000
Cöa CD3
D2
bit 1
bit 2
bit 3
bit 4
bit 5
bit 6
bit 70
0
0
0
0
1
0
1
1
0
1
0
1
1
1
1
D1 bit 0
1
0
1
0
1
0
1
0
d. GhÐp nèi 8255A víi VXL8051.
+ Víi hÖ thèng ®¬n gi¶n cã thÓ phèi ghÐp trùc tiÕp 8255A víi VXL. §Çu
vµo /CS ®îc nèi vµo mét trong c¸c /CSi cña gi¶i m· ®Þa chØ 74LS138 (sÏ ®Ò cËp
sau).
+ C¸c tÝn hiÖu /RD, /WR cña 8255 còng ®îc kÕt nèi t¬ng øng víi c¸c tÝn
hiÖu ®iÒu khiÓn viÖc xuÊt/nhËp d÷ liÖu cña 8051.
+ §Çu vµo Reset (ch©n 35) cã thÓ kÕt nèi víi ch©n Reset cña 8051 nÕu
muèn 8255A cïng Reset víi hÖ thèng khi Ên nót reset hoÆc cã thÓ ®Ó ë møc
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
16
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
tÝch cùc thÊp.
+ Hai tÝn hiÖu vµo ®Þa chØ A 1A0 ®îc nèi trùc tiÕp vµo Bus ®Þa chØ hÖ
thèng. A1A0 ®îc gi¶i m· bªn trong m¹ch 8255A ®Ó chän c¸c cöa vµo/ra A, B,
C vµ CWR nh ®· ®Ò cËp ë trªn.
+ C¸c ch©n sè liÖu cña 8255 cã thÓ kÕt nèi trùc tiÕp vµo Bus sè liÖu cña
hÖ thèng mµ kh«ng cÇn ®Öm 3 tr¹ng th¸i, v× b¶n th©n c¸c cæng P 0 cña 8051 ®Òu
cã ®Öm 3 tr¹ng th¸i råi.
e. GhÐp nèi 8255A víi thiÕt bÞ ngo¹i vi:
PhÇn ghÐp nèi víi thiÕt bÞ ngo¹i vi cña 8255A th«ng qua 24 ®êng sè liÖu
vµ ®iÒu khiÓn ë c¸c cæng A, B, C. C¸c ®êng ghÐp nèi nµy ®îc ®Þnh nghÜa b»ng
ch¬ng tr×nh nh giíi thiÖu ë trªn. B»ng c¸ch chän chÕ ®é lµm viÖc thÝch hîp vµ
chÝnh x¸c vi m¹ch 8255A cã thÓ ®¸p øng ®îc nh÷ng nhu cÇu ghÐp nèi tinh vi.
AD0-AD7
P1
§Öm
BUS
S/L
74245
D0-D7
PA
A0
A1
P2
8051
A14
A15
ALE/P
P3.0÷P3.
5
Chèt
§/C
ThÊp
74373
Gi¶i
m·
®/c
(3/8)
CS
8255A
PB
PC
(P3.7) RD
(P3.6 WR
RD
WR
4. ThiÕt kÕ khèi hiÓn thÞ:
ë ®©y ta dïng khèi hiÓn thÞ lµ dïng khèi hiÓn thÞ tinh thÓ láng LCD:
Khèi hiÓn thÞ nµy cã u ®iÓm lµ:
- Mµn h×nh ®ang dÇn cã gi¸ thµnh h¹
- Kh¶ n¨ng hiÓn thÞ sè, ký tù vµ ®å häa tèt h¬n nhiÒu so víi ®Ìn LED.
- Sö dông thªm bé ®iÒu khiÓn lµm t¬i LCD vµ nh vËy gi¶i phãng CPU
khái c«ng viÖc nµy .Cßn ®èi víi LED lu«n cÇn CPU hoÆc b»ng c¸ch nµo ®ã ®Ó
duy tr× viÖc hiÓn thÞ d÷ liÖu.
- DÔ dµng lËp tr×nh c¸c kÝ tù ,®å häa.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
17
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
Chøc n¨ng c¸c ch©n cña LCD
VCC
: ch©n nèi nguån 5V
VSS
: ch©n ®Êt
VEE
: ch©n ®iÒu khiÓn ®é t¬ng ph¶n cña LCD.
RS : ch©n nµy dïng ®Ó chän thanh ghi.NÕu RS=0 th× thanh ghi m·
lÖnh ®îc chän cßn nÕu RS=1 th× thanh ghi d÷ liÖu ®îc chän vµ cho phÐp ngêi
dïng göi d÷ liÖu hiÓn thÞ lªn LCD
R/W : ch©n vµo ®äc ghi cho phÐp ngêi dïng ®äc/ghi th«ng tin tõ /lªn
LCD R/W=0 th× ®äc, cßn R/W=0 th× lµ ghi lªn LCD.
E
: ch©n cho phÐp ®îc LCD sö dông ®Ó chèt th«ng tin hiÖn cã trªn
ch©n d÷ liÖu .Khi d÷ liÖu ®îc cÊp ®Õn th× mét xung cao xuèng thÊp ®îc ¸p ®Õn
ch©n E ®Ó LCD chèt d÷ liÖu trªn ch©n d÷ liÖu.Xung nµy ph¶i réng tèi thiÓu lµ
450ns.
D0-D7 : §©y lµ 8 ch©n d÷ liÖu trªn 8 bÝt ,®îc dïng ®Ó göi th«ng tin lªn
LCD hoÆc ®äc néi dung cña c¸c thanh ghi trong LCD.
Ta cã thÓ göi c¸c m· lÖnh ®Õn ®Ó ®iÒu khiÓn hiÓn thÞ trªn LCD ,c¸c m·
lÖnh nµy ®îc cho trong tµi liÖu kü thuËt cña LCD.
Trong hÖ thèng ,khi ghÐp nèi th× c¸c ch©n cña LCD cã thÓ ghÐp qua
8051 hoÆc cã thÓ ghÐp qua c¸c ch©n cña cæng giao tiÕp 8255 tïy theo së thÝch
cña ngêi sö dông.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
18
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
5.Khèi vµo d÷ liÖu:
Khèi vµo d÷ liÖu mµ ta sö dông ®ã lµ bµn phÝm sè 16 phÝm ®îc dïng réng
r·i.Nguyªn t¾c ho¹t ®éng cña bµn phÝm thùc chÊt lµ nguyªn t¾c ho¹t ®éng cña
ma trËn phÝm .Ch¬ng tr×nh ®Ó ch¹y bµn phÝm lµ ch¬ng tr×nh dïng thuËt to¸n
"bÉy phÝm " nghÜa lµ liªn tôc quÐt hµng cña bµn phÝm ,®ång thêi khi ph¸t hiÖn
cã phÝm nhÊn ,cét t¬ng øng =0 th× bé Vi xö lý cña ta hoµn toµn cã thÓ x¸c ®Þnh
®îc hµng vµ cét cña phÝm ®îc Ên vµ tõ ®ã cho m· cña phÝm.
6. C¸c vi m¹ch phô trî kh¸c:
a. M¹ch gi¶i m· 74LS138:
Nã bao gåm 14 ch©n, trong ®ã:
Y0 ÷ Y7 lµ c¸c ®êng ra ®Þa chØ, tÝch cùc ë
møc thÊp.
A,B,C lµ 3 ®êng ®Þa chØ vµo, tÝch cùc cao.
E1, E2 lµ c¸c ®Çu vµo cho phÐp lµm viªc,
tÝch cùc ë møc thÊp.
E3 lµ c¸c ®Çu vµo cho phÐp lµm viªc, tÝch
cùc ë møc cao.
Ta cã b¶ng ch©n chøc n¨ng cña 74LS138
nh sau:
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
19
ThiÕt kÕ hÖ vi xö lý 8 bÝt
Bïi §øc Th¾ng-T§H1-K47
C B A /E1
/E2 E1 /Y0
/Y1
/Y2
/Y3
/Y4
/Y5
/Y6
/Y7
X
X
X
0
0
0
0
1
1
1
1
X
1
X
0
0
0
0
0
0
0
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1`
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
X
X
X
0
0
1
1
0
0
1
1
X
X
X
0
1
0
1
0
1
0
1
1
X
X
0
0
0
0
0
0
0
0
X
X
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
b. Vi m¹ch chèt 74LS373:
§©y lµ m¹ch cã t¸c dông chèt l¹i sè liÖu ë ®Çu
vµo khi cã tÝn hiÖu tÝch cùc, ®Çu ra sÏ kh«ng bÞ biÕn
®æi khi tÝn hiÖu ®Çu vµo ®· mÊt. Nã chØ thay ®æi khi
tÝn hiÖu chèt tÝch cùc trë l¹i. Bªn ngoµi vá còng cã tÝn
hiÖu /OE cho phÐp ho¹t ®éng. Khi cã yªu cÇu chèt
ch©n LE sÏ ®îc tÝch cùc.
Trong ghÐp nèi víi 89C51:
+ Ch©n /OE (sè 1) cña 74LS373 ®îc nèi ®Êt.
+ Ch©n LE(sè 11) cña 74LS373 ®îc nèi víi
ch©n ALE (sè 30) cña 89C51.
Bµi tËp dµi: ThiÕt kÕ hÖ Vi xö lý 8 bÝt
20
- Xem thêm -