You are on page 1of 22

n Vi iu Khin Nhm 12

Thit k b o tc ng c hin th bng led 7 on

I C s l thuyt
1 Gii thiu tng quan v h Vi iu khin 8051 AT89C51 l mt vi iu khin 8 bit, ch to theo cng ngh CMOS cht lng cao, cng sut thp vi 4 KB PEROM (Flash Programeable and erasable read only memory). Cc c im ca 8951 c tm tt nh sau: - 4KB b nh, c th lp trnh li nhanh, c kh nng ghi xa ti 1000 chu k - Tn s hoat ng t 0 Hz n 24 MHz - 3 mc kha b nh lp trnh - 2 b Timer/Counter 16 bit - 128 Byte RAM ni - 4 Port xut/nhp (I/O) 8 bit - Giao tip ni tip - 64 KB vng nh m ngoi - 64 KB vng nh d liu ngoi - X l Boolean (hot ng trn bit n) - 210 v tr nh c th nh v bit - 4s cho hot ng nhn hoc chia a S khi v s chn ca AT89S52

n Vi iu Khin Nhm 12

INT1\ SERIAL PORT INT0\ TEMER0 TEMER1 TEMER2 8032\8052

128 byte RAM 8032\8052


INTERRUPT CONTROL

OTHER REGISTER

128 byte RAM

ROM 0K: 8031\8032 4K:8951 8K:8052

TEMER2 8032\8052 TEMER1 TEMER1

CPU BUS CONTROL I/O PORT

OSCILATOR

SERIAL PORT

EA\ RST

ALE\ PSEN\

P0 P1 P2 P3 Address\Data

TXD RXD

Hnh 1 S khi ca AT89S52

n Vi iu Khin Nhm 12

Hnh 2 S chn ca AT89S52 b Chc nng cc chn ca AT89S52 + Port 0 (P0.0 P0.7 hay chn 32 39): Ngoi chc nng xut nhp ra, port 0 cn l bus a hp d liu v a ch (AD0 AD7), chc nng ny s c s dng khi AT89S52 giao tip vi thit b ngoi c kin trc bus.

Hnh 3 Port 0 + Port 1 (P1.0 P1.7 hay chn 1 8): c chc nng xut nhp theo bit v byte. Ngoi ra, 3 chn P1.5, P1.6, P1.7 c dng np ROM theo chun ISP, 2 chn P1.0 v P1.1 c dng cho b Timer 2.

n Vi iu Khin Nhm 12

Hnh 4 Port 1 + Port 2 (P2.0 P2.7 hay chn 21 28): l mt port c cng dng kp. L ng xut nhp hoc l byte cao ca bus a ch i vi cc thit k dng b nh m rng.

Hnh 5 Port 2 + Port 3 (P3.0 P3.7 hay chn 10 17): mi chn trn port 3 ngoi chc nng xut nhp ra cn c mt s chc nng c bit sau: Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 Tn RXD TXD INT0 INT1 T0 T1 Chc nng chuyn i D liu nhn cho port ni tip D liu truyn cho port ni tip Ngt bn ngoi 0 Ngt bn ngoi 1 Ng vo ca Timer/Counter 0 Ng vo ca Timer/Counter 1

n Vi iu Khin Nhm 12

P3.6 P3.7

WR RD

Xung ghi b nh d liu ngoi Xung c b nh d liu ngoi

Hnh 6 Port 3 + RST (Reset chn 9): mc tch cc ca chn ny l mc 1, reset ta phi a mc 1 (5V) n chn ny vi thi gian ti thiu 2 chu k my (tng ng 2s i vi thch anh 12MHz. + XTAL 1, XTAL 2(chn 19,18): AT89S52 c mt b dao ng trn chip, n thng c ni vi mt b dao ng thch anh c tn s ln nht l 33MHz, thng thng l 12MHz. + EA (External Access): EA thng c mc ln mc cao (+5V) hoc mc thp (GND). Nu mc cao, b vi iu khin thi hnh chng trnh t ROM ni. Nu mc thp, chng trnh ch c thi hnh t b nh m rng. + ALE (Address Latch Enable): ALE l tn hiu cht a ch vo mt thanh ghi bn ngoi trong na u ca chu k b nh. Sau cc ng port 0 dng xut hoc nhp d liu trong na chu k sau ca b nh. + PSEN (Program Store Enable): PSEN l iu khin cho php b nh chng trnh m rng v thng c ni vi n chn /OE (Output Enable) ca mt EPROM cho php c cc bytes m lnh. PSEN s mc thp trong thi gian c lnh. Cc m nh phn ca chng trnh c c t EPROM qua Bus v c cht vo thanh ghi lnh ca b vi iu khin gii m lnh. Khi thi hnh chng trnh trong ROM ni, PSEN s mc th ng (mc cao). + Vcc, GND: AT89S52 dng ngun mt chiu c di in p t 4V 5.5V c cp qua chn 40 (Vcc) v chn 20 (GND)

n Vi iu Khin Nhm 12

2 Gii thiu v Encoder Encoder mc ch dng qun l v tr gc ca mt a quay, a quay c th l bnh xe, trc ng c, hoc bt k thit b quay no cn xc nh v tr gc. Encoder c chia lm 2 loi, absolute encoder v incremental encoder. Tm dch l encoder tuyt i v encoder tng i. Nu dch st ngha, khi ta c absolute encoder, c ngha l encoder tuyt i, tc l tn hiu ta nhn c, ch r rng v tr ca encoder, chng ta khng cn x l g thm, cng bit chnh xc v tr ca encoder. Cn incremental encoder, l loi encoder ch c 1, 2, hoc ti a l 3 vng l. Ta hnh dung th ny, nu by gi ta c mt l trn mt ci a quay, th c mi ln a quay 1 vng, ta s nhn c tn hiu, v ta bit a quay mt vng. Nu by gi ta c nhiu l hn, ta s c c thng tin chi tit hn, c ngha l a quay 1/4 vong, 1/8 vng, hoc 1/n vng, ty theo s l nm trn incremental encoder. C mi ln i qua mt l, chng ta phi lp trnh thit b o m ln 1. Do vy, encoder loi ny c tn incremental encoder (encoder tng ln 1 n v).

Nguyn l hot ng c bn ca encoder, LED v l Nguyn l c bn ca encoder, l mt a trn xoay, quay quanh trc. Trn a c cc l (rnh). Ngi ta dng mt n led chiu ln mt a. Khi a quay, ch khng c l (rnh), n led khng chiu xuyn qua c, ch c l (rnh), n led s chiu xuyn qua. Khi , pha mt bn kia ca a, ngi ta t mt con mt thu. Vi cc tn hiu c, hoc khng c nh sng chiu qua, ngi ta ghi nhn c n led c

n Vi iu Khin Nhm 12

chiu qua l hay khng. Khi trc quay, gi s trn a ch c mt l duy nht, c mi ln con mt thu nhn c tn hiu n led, th c ngha l a quay c mt vng. y l nguyn l rt c bn ca encoder. Tuy nhin, nhng vn c t ra l, lm sao xc nh chnh xc hn v tr ca a quay (mn hn) v lm th no xc nh c a ang quay theo chiu no? chnh l vn chng ta tm hiu v encoder. Hnh sau s minh ha nguyn l c bn ca hot ng encoder.

Ta thy trong hnh, c mt a mask, khng quay, l a c nh, thc ra l che khe hp nh sng i qua, gip cho vic c encoder c chnh xc hn m thi. Ta khng cp n a mt n ny y. Hot ng ca hai loi encoder ny nh th no? 1) Absolute encoder Vn chng ta s quan tm y, chnh l vn v mn ca encoder, c ngha l lm th no bit a quay 1/2 vng, 1/4 vng, 1/8 vng hay 1/n vng, ch khng phi ch bit a quay c mt vng. Quay li bi ton c bn v bit v s bit, chng ta xem xt vn theo mt cch hon ton ton hc nh: Vi mt s nh phn c 2 ch s, chng ta s c 00, 01, 10, 11, tc l 4 trng thi. iu c ngha l vi 2 ch s, chng ta c th chia a encoder thnh 4 phn bng nhau. V khi quay, chng ta s xc nh c chnh xc n 1/4 vng.

n Vi iu Khin Nhm 12

Tng t nh vy, nu vi mt s c n ch s, chng ta s xc nh c chnh xc n 1/(2^n) vng. Th lm sao xc nh 2^n trng thi ny ca a encoder? Ta xem hnh sau:

y, ti a ra v d vi a encoder c 2 vng a. Ta s thy rng, vng trong cng, c mt rnh rng bng 1/2 a. Vng pha ngoi, s c 2 rnh nm i din nhau. Nh vy, chng ta cn 2 n led pht xuyn qua 2 vng l, v 2 n thu. Gi s vng l th nht (trong cng), n c ang nm v tr c l h, th tn hiu nhn c t con mt thu s l 1. V vng l th hai, th chng ta ang v tr khng c l, nh vy con mt thu vng 2 s c c gi tr 0. V nh vy, vi s 10, chng ta xc nh c encoder ang nm gc phn t no, cng c ngha l chng ta qun l c chnh xc ca a quay n 1/4 vng. Trong v d trn, nu n LED c c 10, th v tr ca LED phi nm trong gc phn t th hai, pha trn, bn tri.

n Vi iu Khin Nhm 12

Kt qu, nu a encoder c n 10 vng l, th chng ta s qun l c n 1/ (2^10) tc l n 1/1024 vng. Hay ngi ta ni l phn gii ca encoder l 1024 xung trn vng (pulse per revolution - ppr). Sau y l v d abosulte encoder 8 vng l:

Vy cch thit k absolute encoder nh th no? Ta lun ch rng, thit k encoder tuyt i, ngi ta lun v sao cho bit th N (i vi encoder c N vng l) nm trong cng, c ngha l l ln nht c gc rng 180 , nm trong cng. Bi v chng ta thy rng, bit0 (nu xem l s nh phn) s thay i lin tc mi 1/2^N vng quay, v th, chng ta cn rt nhiu l. Nu t trong th khng th no v c, v trong bn knh nh hn. Ngoi ra, nu t trong, th v kt cu c kh, n qu gn trc, v qu nhiu l, s rt yu. V hai im ny, nn bit0 lun t ngoi cng, v bitN-1 lun t trong cng nh hnh trn.

n Vi iu Khin Nhm 12

Kt qu, nu a encoder c n 10 vng l, th chng ta s qun l c n 1/ (2^10) tc l n 1/1024 vng. Hay ngi ta ni l phn gii ca encoder l 1024 xung trn vng (pulse per revolution - ppr). 2) Incremental encoder Nhn thy mt iu rng, encoder tuyt i rt c li cho nhng trng hp khi gc quay l nh, v ng c khng quay nhiu vng. Khi , vic x l encoder tuyt i tr nn d dng cho ngi dng hn, v ch cn c gi tr l chng ta bit ngay c v tr gc ca trc quay. Tuy nhin, nu ng c quay nhiu vng, iu ny khng c li, bi v khi , chng ta phi x l m s vng quay ca trc. Ngoi ra, ta thy, nu thit k encoder tuyt i, chng ta cn qu nhiu vng l, v dn ti gii hn v kch thc ca encoder, bi v vic gia cng chnh xc cc l qu nh l khng th thc hin c. Cha k rng vic thit k mt dy n led v con mt thu cng nh hng rt ln n kch thc gii hn ny. Tuy nhin, iu ny c khc phc bng incremental encoder mt cch kh n gin. Chnh v vy, ngy nay, a s ngi ta s dng incremental encoder trong nhng ng dng hin i. Hot ng ca incremental encoder Tht n gin, incremental encoder, s tng 1 n v khi mt ln ln xung ca cnh xung. Ta xem hnh encoder sau:

Ta thy rng, c mi ln quay qua mt l, th encoder s tng mt n v trong bin m.

n Vi iu Khin Nhm 12

Tuy nhin, mt vn l lm sao bit c encoder quay ht mt vng? Nu c m v hn nh th ny, th chng ta khng th bit c khi no n quay ht mt vng. Cha k, mi ln c nhng rung ng no m ta khng qun l c, encoder s b sai mt xung. Khi , nu hot ng lu di, sai s ny s tch ly, ngy hm nay sai mt xung, ngy hm sau sai mt xung. n cui cng, c th ng c quay 2 vng ri cc bn mi m c 1 vng. trnh iu tai hi ny xy ra, ngi ta a vo thm mt l nh v m s vng quay ca encoder. Nh vy, cho d c lch xung, m chng ta thy rng encoder i ngang qua l nh v ny, th chng ta s bit l encoder b m sai u . Nu v mt rung ng no , m chng ta khng thy encoder i qua l nh v, vy th t s xung, v vic i qua l nh v, chng ta s bit r hin tng sai ca encoder. y l hnh encoder c l nh v:

Tuy nhin, mt vn ln na l, lm sao chng ta bit encoder ang xoay theo chiu no? Bi v cho d xoay theo chiu no, th tn hiu encoder cng ch l cc xung n l v xoay theo hai chiu u ging nhau. Chnh v vy, ngi ta t thm mt vng l gia vng l th 1 v l nh v nh hnh sau:

n Vi iu Khin Nhm 12

Ch rng, v tr gc ca cc l vng 1 v cc l vng 2 lch nhau. Cc cnh ca l vng 2 nm ngay gia cc l vng 1 v ngc li. Chng ta s kho st tip vn encoder trong phn tn hiu xung hiu r hn v encoder. Tuy nhin, ta s thy mt iu rng, thay v lm 2 vng encoder, v dng 2 n LED t thng hng, th ngi ta ch cn lm 1 vng l, v t hai n LED lch nhau. Kt qu, ta s thng thy cc encoder c dng nh hnh 2:

y l dng encoder ph bin nht hin nay.

n Vi iu Khin Nhm 12

Hnh trn l hnh xung incremental encoder. Ta thy rng nu nh khi xung A ang t mc cao xung mc thp, m lc B ang mc thp, th chng ta s xc nh c chiu chuyn ng ca encoder theo chiu mi tn mu cam. Nu A ang t mc cao xung mc thp, m B ang mc cao, th chng ta s bit encoder ang quay theo chiu mu nu.

3 Gii thiu v IC n p 7805 Vi nhng mch in khng i hi n nh ca in p qu cao, s dng IC n p thng c ngi thit k s dng v mch in kh n gin. Cc loi n p thng c s dng l IC 78xx - 79xx, vi xx l in p cn n p. V d 7805 n p 5V,7808 n p 8V, 7812 n p 12V hay n p in p m c 7905 n p in p -5V, 7912 n p -12V. Vic dng cc loi IC n p 78xx tng t nhau hay i vi 79xx cng tng t, di y l minh ha cho IC n p 7805 + H 78xx l h cho n nh in p u ra l dng. Cn xx l gi tr in p u ra nh 5V, 6V... + H 79xx l h n nh in p u ra l m. Cn xx l gi tr in p u ra nh : -5V,-6V S kt hp ca hai con ny s to ra c b ngun i xng. V mt nguyn l n hot ng tng i ging nhau. By gi ta xt tng IC 78, 79 78xx 78xx l loi dng IC dng n nh in p dng u ra vi iu kin u vo lun lun ln hn u ra 3V Ty loi IC 78 m n n p u ra l bao nhiu. v d : 7806 - 7809...

n Vi iu Khin Nhm 12

+ 78xx gm c 3 chn : 1 : Vin - Chn ngun u vo 2 : GND - Chn ni t 3 : Vo - chn ngun u ra.

Nh chng ta bit :Mch n p dng Diode Zener nh trn c u im l n gin nhng nhc im l cho dng in nh ( 20mA ) . c th to ra mt in p c nh nhng cho dng in mnh hn nhiu ln ngi ta mc thm Transistor khuych i v dng nh s di y

mch trn in p ti im 3 c th thay i v cn gn xoay chiu nhng in p ti im Rt khng thay i v tng i phng. Nguyn l n p : Thng qua in tr R2 v D1 gim c nh in p chn Rt ca Transistor Q1, gi s khi in p chn E n Q1 gim => khi in p UBE tng => dng qua n Q1 tng => lm in p chn E ca n tng , v ngc li ... Mch n p trn n gin v hiu qu nn c s dng rt rng di v ngi ta

n Vi iu Khin Nhm 12

sn xut cc loi IC h LA78.. thay th cho mch n p trn, IC LA78.. c s mch nh phn mch c mu xanh ca s trn

Ch : in p t trc IC78xx phi ln hn in p cn n p t 2V n 3V * Nhng dng seri ca 78XX LA7805 IC n p 5V LA7806 IC n p 6V LA7808 IC n p 8V LA7809 IC n p 9V LA7812 IC n p 12V LA7815 IC n p 15V LA7818 IC n p 18V LA7824 IC n p 24V y l dng cho in p ra tng ng vi dng l 1A. Ngoi ra cn cc seri khc chu c dng 78xx +5V --> +24V. Dng 1A 78Lxx Chuyn i in p dng t +5V --> +24V. Dng 0.1A 78Mxx Chuyn i in p dng t +5V --> +24V. Dng 0.5A 78Sxx Chuyn i in p dng t +5V --> +24V. Dng 0.2A * Cch xc nh chn: 78xx l ic c 3 chn v cc seri khc nhau th n chung th t chn. Cc bn xem di y!

79xx

n Vi iu Khin Nhm 12

Cng nh h 78 th h 79 c hot ng tng t nhng in p u ra l m (-) tri ngc vi h 78. cng c nhiu loi mc n p u ra nh dng 78 : 7905, 7906... vi dng chi l 1A v 0.1A

Xc nh chn th n khng ging vi 78 n c theo th t nh hnh sau y!

ng dng ca 78 v 79 vo b ngun

Trong cc b ngun th 78 v 79 c s dng rt nhiu trong cc mch ngun to in p u ra mong mun c bit nhng thit b ny cn in p u vo c nh ko thay i ln xung! y l mch nguyn l ca 78 v 79

n Vi iu Khin Nhm 12

4 Gii thiu v IC LM317 y l con IC chuyn i in p "dung" c di hot ng output kh rng trong khong + 1,5v n +37v v dng ra qu 1,5A .n rt thng dng.xc nh chn cng nhn t tri wa phi mt c ch LM317 chn s 1 l chn iu khin chn s 2 l chn output chn s 3 l input.

Thng s ca LM317: - in p u vo Vi = 40v - Nhit vn hnh t 0 - 125 C - Cng sut tiu th ln nht 20W - Dng ra ln nht 1.5A - khi dng nn m bo thng s Vi - Vo = 5V - ch dng qua chn iu khin phi nh hn 100uA thng th chn output c mc 1 cu phn p gm 1 in tr v 1 bin tr( dng iu chnh p ra) ni mass. im gia ca cu phn p c mc hi tip v chn iu khin.

n Vi iu Khin Nhm 12

cho Vo ra n nh hn mn hn ta nn mc song song t c cc tnh khong 1 n 150 uF

4 Gii thiu nguyn l hot ng ca mch. B vi iu khin c kt ni vi encoder 32 l nh mt dy nhn xung. Trn ng c c mt bnh quay trn c c sn 32 rnh u nhau, vi mi mt vng quay ca ng c encoder s to ra c 32 xung cp cho vi iu khin vo chn T0, xung ny c m nh b m s kin trn chn T0 (s xung c lu ti Timer0). Mt Timer khi to to thi gian 1s (Timer1) nh hm ngt, sau mi giy nht nh, s xung nhn c c np vo Timer0 s c chuyn i tng ng ra s vng v cho ta hin th kt qu trn led 7 thanh

II Trnh t v ni dung thit k. 1. Phn lp trnh


#include<at89x52.h> #include<stdio.h> #include<math.h> sbit sbit sbit sbit L1 L2 L3 L4 = = = = P2^0; P2^1; P2^2; P2^3; //m led 7 thanh

unsigned char

M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

unsigned int vong,dem; unsigned char nghin,tram,chuc,dvi; void { unsigned int unsigned int i; j; delay_ms(unsigned int time)

for(i = time;i>0;i--) for(j=0;j<125;j++); } void clear_led(void) { P0=0xff; P2=0; } void hien_thi() {

n Vi iu Khin Nhm 12
nghin = vong/1000; L1 = 1; L2=L3=L4=0; P0=M[nghin]; delay_ms(2); clear_led(); tram = (vong%1000)/100; L2 = 1; L1=L3=L4=0; P0=M[tram]; delay_ms(2); clear_led(); chuc = ((vong%1000)%100)/10; L3 = 1; L1=L2=L4=0; P0=M[chuc]; delay_ms(2); clear_led(); dvi = ((vong%1000)%100)%10; L4 = 1; L1=L2=L3=0; P0=M[dvi]; delay_ms(2); clear_led(); } void main() { TMOD=0x15; IE=0x88; IP=0x08; dem = vong= 0; TH0 = TL0 = 0; TH1 = 0X3C; TL1 = 0XAF; TR0 = TR1 = 1; while(1) { hien_thi(); } } void ngatT1() interrupt 3 { TR1=0;

n Vi iu Khin Nhm 12
TF1=0; TH1=0X3C; TL1=0XAF; dem++; if(dem==20) { EA=0; dem=0; TR0=0; vong=((TH0*256+TL0)*60)/32; TH0=TL0=0; TR0=1; EA=1; } TR1=1; }

2. S nguyn l

n Vi iu Khin Nhm 12

3. Mch in

n Vi iu Khin Nhm 12

IV Kt lun 1. u im
_Thit b n gin nh gn, sai s thp (khong 3%) _B m s kin trn chn T0 nh Timer0 16 bit, vy ta c th m c lng xung nh hn hoc bng 65535. v vy ta c th o c tc ca mt s ng c c tc ln(theo l thuyt l c di 12000v/p)

2. Nhc im
Do s vng c m nh encoder thng qua cc rnh trn bnh quay ca ng c nn khi ng c quay vi tc qu nhanh s gy nhiu (s xung m khng chun) v gy sai s.

You might also like