báo cáo đồ án vđk
TRANSCRIPT
-
8/8/2019 bo co n vk
1/13
Bo co n mn vi iu khin nhm 13Lp CDT K9Khoa C Kh
ti: iu khin tc ng c hin th trn mnhnh my tnh
Nhm thc hin: Cao Xun HaNguyn Vn ThoNguyn Quang Huy
-
8/8/2019 bo co n vk
2/13
Phn I: C S L thuyt
Nm 1981 h vi iu khin 8051 c hng intel gii thiu. H vi
iu khin ny gm 128 byte RAM, 4 byte ROM, hai b nh thi, mtcng ni tip v bn cng vo/ra song song( rng 8bit ). Cho n bygi th c rt nhiu cc bin th ca 8051 do cc hng khc trn thgii sn xut. Vi iu khin AT89S52 l mt trong nhng bin th ca8051. V trong bi ny chng ta dng vi iu khin AT89S52 iukhin tc ca ng c.
Gii thiu v AT89S52
Cu trc dng s khi tng qut
CPU
B nhchngtrnh
B nh
d liu
Vo/rasongsong
Vo/ra
ni tipNgt
B nhinh
thi/b m
Time1
Timer0
P3
P2
P1
P0
-
8/8/2019 bo co n vk
3/13
Cu trc busBus a ch ca h vi iu khin 8051 gm 16 dng tn hiu ( thng
gi l bus a ch 16 bit ). Vi s lng bt a ch nh trn, khng giannh ca chip c m rng ti a 65536 a ch. Bus d liu ca h vi
iu khin 8051 gm 8 ng tn hiu ( thng gi l bus d liu 8 bit )v th 8051 l h vi iu khin 8bit. Vi rng ca bus d liu nh vy,cc chip ca h 8051 c th x l cc ngun d liu 8bit trog mt chu klnh, nu ln hn 8 bt th dc chia thnh nhiu d liu 8bit x l.
CPU ( Central processing Unit )
CPU l n v x l trung tm, l b no ca ton b h thng viin t c tch hp trn chip vi iu khin. CPU ca cu to chnh l
mt n v x l s hc v logic ALU ( Arithmethic Logic Unit ) l nithc hin tt c cc php ton s hc v php logic cho qu trnh x l.
B nh chng trnh ( Program Memory )
Khng gian b nh chng trnh ca AT89 l 64K, tuy nhin hu htcc vi iu khin AT89 trn th trng ch tch hp sn trn chip mtlng b nh chng trnh nht nh v chim di a ch t 0000h tr i.AT89s52 c 4k b nh chng trnh loi Flash tch hp sn bn trongchip. y l b nh cho php ghi/xa nhiu ln. B nh chng trnhc dng cha m chng trnh np vo chip. Mi lnh c m ha
bi mt hoc vi byte, dung lng ca b nh chng trnh phn nh slng lnh m b nh c th cha c. b nh u tin ca b nhchng trnh l 0x0000 chnh l a ch RESET ca 8051. Ngay sau khireset( do tt/bt ngun, do mc in p ti chn reset b ko ln 5V),CPU s chy n thc hin lnh dt ti a ch ny trc tin, lun lunl nh vy. phn cn trng trong khng gian chng trnh khng cdng. Nu mun m rng b nh chng trnh ta phi dng b nhngoi. Khi dng b nh ngoi th b nh trong ca chip s khng c
dng na v n chim di a ch ngay t 0x0000.
B nh d liu ( Data Memory )8051 c b nh d liu l 64ka ch, cng l dung lng b nh
d liu ln nht trong h 8051. y chnh l ni cha cc bin trung giantrong qu trnh chip hot ng ca.
-
8/8/2019 bo co n vk
4/13
i vi cc chip c b nh SRAM128 byte th a ch ca ccbyte SRAM ny c nh s t 00H n 7FH. i vi cc chip c bnhSRAM256 byte th a ch ca cc byte trong SRAM c nh st 00H n FFh. SRAM c a ch t 00H 7FH l vng RAM thp v
phn c a ch t 80H FFH l vng RAM cao.
Cng vo/ra song song( I/O Port )
8051 c 4 cng vo/ra song song l P0,P1,P2,P3. Tt c cc cng nyu l cng vo/ra c hai chiu 8bit. Cc bit ca mi cng l mt chntrn chip, nh vy mi cng s c 8 chn trn chip.
Cng P0 khng c in tr treo cao bn trong, mch li to mccao ch c khi s dng cng ny vi tnh nng l bus dn knh a ch/dliu. nh vy vi chc nng ra thng thng th P0 l cng ra cn vichc nng vo th P0 l cng vo cao tr. Nu mun s dng P0 lmcng vo/ra thng thng ta phi thm in tr bn ngoi. Gi tr in tr
bn ngoi thng l 4k 10k.Cc cng p1, p2, p3 u c in tr bn trong, do c th dng
vi cc chc nng cng vo/ra thng thng m khng cn thm in trngoi. Thc cht in tr bn ngoi cc FET khng phi in tr tuyn
STT Tn chip B nh SRAM B nh EEROM1 AT89C51 128byte 02 AT89C52 256byte 03 AT89C2051 128byte 04 AT89S51 128byte 05 AT89S52 256byte 06 AT89S52 256byte 2048byte
-
8/8/2019 bo co n vk
5/13
tnh thng thng nhng kh nng to dng ra ca mch li khi u ra mc cao( hoc khi l u vo ) rt nh, ch khong 100 micro Ampe.
Cng vo ra ni tip ( Serial Port )
Cng ny thng ch c s sng khi giao tip vi my tnh hocgiao tip vi vi iu khin khc. Cng ni tip c hai thanh ghi SCON,SBUF v PCON. Thanh ghi PCON khng nh a ch bit v c bt 7 lSMOD quy nh tc truyn ca cng ni tip ( tc gp i nuSMOD = 1 v khng gp i nu SMOD = 0).
Ngt ( Interrupt)8051 ch c mt s t cc ngun ngt hay gi l nguyn nhn ngt.
Mi ngt c mt vector ngt ring l mt a ch c nh nm trong b
nh chng trnh. Khi sy ra ngt th CPU s t ng chuyn n thchin lnh ti a ch ny.Cc ngun ngt
STT Tn ngt M t C ngt Thanh ghicha c ngt
Vectorngt
1 INT0 Ngt ngoi 0khi co tn hiu
tch cc theokiu chn chn P3.2
IE0 TCON 0x0003
2 Timer0 Ngt trntimer0 khi gitr timer0trn t gi trmax v gi trmin
TF0 TCON 0x000B
3 INT1 Ngt ngoi 1khi c tn hiu
tch cc theokiu chn chn P3.3
IE1 TCON 0x0013
4 Timer2 Ngt trntimer1 khi gitr timer1trn t maxn min
TF1 TCON 0x001B
5 Por nitip
Khi vi iukhin nhnhoc truyn
xong 1byte
TI, RI SCON 0x0023
-
8/8/2019 bo co n vk
6/13
Thanh ghi cho php ngt IE (interrupt Enable)
Bit K hiu a chbit
M t
IE.7 EA AFH Cho php hoc cm ton bIE.6 AEH Khng c nh nghaIE.5 ET5 ADH Cho php ngt t timer2
IE.4 ES ACH Cho php ngt t port ni tipIE.3 ET1 ABH Cho php ngt t timer1IE2 EX1 AAH Cho pht ngt ngoi 1IE1 ET0 AH9 Cho php ngt t timer0IE.0 EX0 A8H Cho php ngt ngoi 0
cho php mt ngt ngoi th bit tng ng vi ngt v bitEA phi c t bng 1. Thanh ghi IE l thanh nh a ch bit nn cth dng cc lnh tc ng bit tc ng ring l ln tng bit m khnglm anh hng n cc gi tr bit khc. C ngt hot ng c lp vivic cho php ngt, iu c ngha l c ngt s t ng t ln bng 1khi c s kin gy ngt sy ra bt k s kin c c cho php ngthay khng. Do vy, trc khi cho php mt ngt ta nn xa c ngt m bo sau khi cho php cc s kin gy ngt trong qu kh khngth gy ngt na.
8051 c hai ngt ngoi l INT0 v INT1. Ngt ngoi c hiu lngt c gy ra bi s kin mc logic 0 ( mc in p thp gn v 0V)
hoc sn xung ( s chuyn mc in p t mc cao v mc thp ) syra chn ngt tng ng ( P3.2 vi ngt ngoi 0 v P3.3 vi ngt ngoi1). Vic la chn kiu ngt c thc hin bng cc bit IT ( InterruptType ) nm trong thanh ghi TCON. y l thanh ghi iu khin timernhng 4 bit LSB ( bit 0 - 3) c dng cho cc ngt ngoi.
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
Khi ITx = 1 th ngt ngoi tng ng c chn kiu l ngt theo
sn xung, ITx = 0 th ngt theo mc thp. Cac bit IE l cc bit c ngtngoi ch c tac dng trong trng hp ngt theo sn xung. khi kiu
-
8/8/2019 bo co n vk
7/13
ngt theo sn xung c chn th ngt s sy ra duy nht mt ln khic sn xung ca tn hiu, sau khi tn hiu mc thp hoc sn lnhay mc cao cng khng sy ra ngt cho n khi c sn xung tiptheo. C ngt IE s c khi c sn xung v t ng b xa khi CPU bt
u x l ngt. Nu kiu ngt mc thp c chn th ngt s sy rabt k khi no tn hiu ti chn ngt mc thp v c ngt IE khngc s dng. Thng thng th ngi ta chn ngt theo sn xung.
B nh thi/ b m (Timer/Counter)
AT89S52 c 3 b nh thi 16bit l Timer0, Timer1, Timer2. Gi trm max l 65536. Cc b nh thi hot ng c lp vi nhau. Sau khicho php hot ng th c c thm mt xung ti u vo m th gi tr
ca Timer tng thm mt n v. Khi tng n gi tr max th timer tng c a v gi tr min ( thng thng min = 0 ). S kin gi ltrn timer v c th gy ra ngt nu trn timer c cho php ( bit ETx =1). Vic cho Timer hot ng hay dng c thc hin b cc bt TRtrong thanh ghi TCON ( nh a ch tng bit ).
TRx = 1 th Timer hot ng, TRx = 0 th Timer khng hot ng dvn c xung vo. Khi dng m, gi tr ca timer gi nguyn. Cac bitTFx l cc c bo trn ca timer, khi s kin trn say ra c trn s tng c t bng 1 v nu ngt trn timer c cho php th ngt ssy ra. Khi CPU x l ngt trn timer c ngt TFx tng ng s t ngc xa bng phn mm. Gi tr m 16bit ca timer c lu trongthanh ghi THx ( byte cao) v thanh TLx ( byte thp ). Hai thanh ghi nyc th ghi c bt k lc no. Tuy nhin nn dng timer ( TRx = 0) trckhi ghi/c cc thanh ghi cha gi tr m. cc timer c th hot ngtheo nhiu ch c quy inh bi cc bit trong thanh TMOD.
xc nh thi gian ngi ta chn ngun xung nhp (clock) a vom trong timer l xung nhp bn trong( dnh cho CPU). Ngun xungclock ny thng c tn s n nh, do t s m ca timer ta c thxc nh thi gian thc.
m cc s kin bn ngoi ta chn xung vung a vo timer(0V/5V). Cc tn hiu ny s c ni vi cc bit cng dn knh thmcc tnh nng T0/T1/T2. Khi c s thay i mc xung th timer s tngthm mt dn v cho n lc trn. V lc ny ngi ta gi timer lcounter.
Giao tip vi my tnh
Nh ni trn th AT89S52 c th giao tip vi bn ngoi qua cng
ni tip. Do mc logic vi iu khin v cng COM ca my tnh khc
-
8/8/2019 bo co n vk
8/13
nhau nn chng ta phi s dng vi mch MAX232 chun ha mclogic ny.
So snh in p ca cc mc logic gia RS232C v TTL
i tng Mc logic Mc in pCng COM(mc RS232C)
1 -12V n -3V0 +3V n +12
AT89S52( mc TTL) 1 +5V0 0V
Vi mch MAX232 cha hai b chuyn i mc logic TTL sangRS232C v ngc li.
-
8/8/2019 bo co n vk
9/13
-
8/8/2019 bo co n vk
10/13
B giao tip vi my tnh
IC MAX 232 thc hin bin i s - tng t giao tip vi my tnhqua cng CON 9 (Cng ny c 9 chn)
B dao ng to xung
Thch anh ( crystal) dao ng vi tn s 12MHz cp xung cho
AT89S52
-
8/8/2019 bo co n vk
11/13
B iu khin tc ng c
Thay i tc ca ng c bng cch thay i dng in vo ng cthng qua iu chnh bin tr R2
Mch nguyn l
-
8/8/2019 bo co n vk
12/13
-
8/8/2019 bo co n vk
13/13
TR0=1; EX1=1;while(dem