mach dem san phan dung 8051
TRANSCRIPT
Cho cc bc, hm nay mnh vit bi ny nhm gip cc bc c th lm c mt mch m sn phm, thy c nhiu bc ln mng tm kim ti liu cc qu v a s mi ngi trn mng t khi chia s ht cho mi ngi, hm nay mnh s ni mt cch chi tit nht c th cc bn c th d dng hn trong vic lm mch m sn phm ny.
y l mt mch m sn phm ng dng vi iu khin mcs_51 dng thu pht hng ngoi, tng s lng sn phm ln bng k thut m xung, s dng phng php qut led hin th s m v c kh nng dng bng truyn By gi chng ta bt u nh: Gii thiu s qua cho cc bc bit trong mch c nhng g nh : lm mch ny th chng ta c 3 khi chnh l khi pht hng ngoi , khi thu hng ngoi, khi hin th v d nhin l khng th thiu b x l trung tm ri ng khng, cc bc dng vi iu khin h 8051 nh ( y mnh dng con 89c51) Khi pht hng ngoi: dng timer0 pht xung 38khz mt chn ca 89c51 y mnh chn chn p1.5, cn vn pht nh th no th mnh s ni sau. Cn y l s mch pht:
y mnh dng cch ghp darlington khuch i tn hiu a ra t chn p1.5 v tn hiu t 89c51 rt b nn chng ta cn khuch i dng cho n sng led, Q1,Q2 cc bc dng loi NPN nh y mnh dng con C1815. Ni s qua cho cc bc hiu nguyn l hot ng ca n nh: chng ta pht dng xung vung c tn s l 38khz tc l chn p1.5 ca 89c51 s lin tc o chiu c ln 1 ri li xung 0, khi p1.5 ln 1 th Q1 dn lc c dng Vcc chy t cc C xung E ca Q1, v cc E ca Q1 ni vi cc B ca Q2 nn khi Q1 dn th cc B ca Q2 c dng nn Q2 cng dn v c dng chy t Vcc qua cc C v xung E ca Q2 ri qua led pht hng ngoi qua in tr ri xung mass, lc ny led pht hng ngoi sng cn khi chn p1.5 xung mc 0 th Q1 v Q2 khng dn nn led pht hng ngoi tt. khi thu hng ngoi : c chc nng l pht hin s mt xung ( c sn phm i qua ) v a v con 89c51 x l tng s m ln 1 n v y l s mch thu:
Cc bc ni theo s nh, cho my bc thng s lun n: R15 l 2k2, R16 chn 1K R16 c kh nng chng nhiu na nu nh c nhiu th cc bc ch vic thay con tr R16 c gi tr nh hn l c nhng m mnh ngh chc l khng cn nhiu u v ngy x mnh dng ti 22k v rt nhiu nn gi gim xung 1k v thy rt tt cc bc yn tm, R17 chn 100, bin tr R18 chn 100k, t C4 v C5 chn khong 10uF. Nguyn l hot ng: khi c sn phm i qua th led thu hng ngoi b che khut lc ny c dng i t Vcc qua led thu hng ngoi ri qua cc B ca Q3 lc ny Q3 dn, cc C ca Q3 xung mc thp lc ny t C4 x in qua diode qua Q3 v xung mass lc ny chn s 2 ca LM555 c kch v to ra mt xung chn s 3 a v cho ic89c51 x l. (chn s 3 ca LM555 c ni vo chn P3.2 ca 89c51 tc l chn 12 ) Bin tr R18 dng iu chnh tc nhn dng sn phm i qua, khi c sn phm i qua th led thu hng ngoi b che khut ta c s mt xung nh sau.
Khi hin th : dng hin th s lng sn phm i qua. y l s khi hin th:
Q4 v Q5 dng loi PNP y mnh dng A1015. Cn R13, R14 th cc bc chn khong 10k cn tr R5 n R12 th cc bc chn sao cho led sng nh (nn chn gi tr nh thi ) cn bc no m s tn tr th lm th ny b R5 n R12 i ta c ni thng n vo Port0 ca 89c51 thay vo l ta s gn cho n mt con tr cc C ca Q4 v Q5 l khong 220 cc bc c chn sao cho led sng l c. y mnh dng led Anot chung ( loi Anot chung ny chn chung c ni ln ngun ) Led 7on cc bc v gii m n nh. y l hnh dng ca led
Cc bc dng VOM thang o in tr nh nht ri a que vo chn s 3 hoc chn s 8 que cn li ln lt a vo cc chn 1,2,4,5,6,7,9,10 xem u l a, u l b ( lu l VOM trn th trng c loi ca trung quc th que l cc m v que en l cc dng cc bc ch nh nu l loi ny th phi lm ngc li a que en vo chn s 3 hoc 8 cn que kia th o cc chn cn li ) Cn y mnh gii m ra c : 1:e 2:d 3:Vcc 4:c 5:dp 6:b 7:a 8:Vcc 9:f 10:g Cc bc ni chn ca led vo port0 nh th ny nh: a ni vo chn P0.7 ( tc l chn 32 ca 89c51 ) ln lt cho ti dp ni vo chn P0.0 (tc l chn 39 ca 89c51) Nh vy l xong phn cng by gi chng ta th cho n hin th ln s 0 nh. Quy tc l nh th ny khi ta cho php dng i qua con led th led tch cc v mun cho ch no sng th ta cho ch v 0 gi s mun cho led n v sng ln s 0 th ta iu khin sao cho chn p1.7 ln mc 1 v chn p1.6 v mc 0 nh vy l led n v c cho php v mun hin th ln s 0 th ta cn lm cho cc thanh led a,b,c,d,e,f sng cho n sng th cc chn ny s v mc 0 (c th nh con led mnh gii m th mnh iu khin con 89c51 cho chn 1,2,4,6,7,9, ca led v mc 0 vy l s c s 0 hin th trn led n v ) nh vy th mun hin th s 0 th P0 cn xut ra gi tr l 00000011 tc l 03H tng t s 1 l chn "b,c" sng v port0 cn xut ra gi tr l 10011111 tc l F9H tng t ta c c bng s nh sau: 0 = 03H; 1 = 9FH; 2 = 25H; 3 = 0DH; 4 = 99H; 5 = 49H; 6 = 41H; 7 = 1FH; 8 = 01H ; 9 = 09H y l mch tng qut :
Phn cng nh th l n by gi chng ta i vit chng trnh cho n nh: vit chng trnh cc bn cn nm c mnh cn lm g ci : chng ta ang lm mt mch m sn phm v chng ta qun l s m trong R7 nn chng trnh chnh chng ta c nhim v l np cc gi
tr ban u cho php ngt, tch s BCD v hin th ra LED. Trong mch ny chng ta s dng 3 ngun ngt l ngt timer0 dng pht xung cho mch pht, ngt ngoi 0 dng tng s lng sn phm v ngt timer1 dng dng bng truyn.Chng trnh pht xung: s dng ngt timer0 ch 2 ( timer0 ch 2 c kh nng t np li gi tr ban u nn chng ta ch cn np mt ln l ). Chng ta dng thch anh 12MHz nn ta c 1 chu k my = 1s, chng ta pht tn s 38khz vy ta c T=1/f = 1/38 = 0.026ms = 26 s Ton =Toff = 26/2 = 13 nh vy cn np cho timer0 gi tr l -13.Trong chng trnh ngt timer0 ta ch vic o trng thi chn p1.5 l c v ta c on chng trnh ngt timer0 l: T0_ISR: CPL P1.5 RETIT0_ISR: CPL P1.5 RETI Chng trnh m sn phm: chng ta s dng ngt ngoi 0. Khi pht hin mt xung ( c sn phm i qua) chn P3.2 xung mc thp v lc ny xy ra ngt ngoi 0. Trong chng trnh ngt ngoi 0 chng ta tng s m ln 1 n v v so snh n vi gi tr l 100 khi n t n 100 th reset n v 0 ta c on chng trnh ngt ngoi 0: EX0_ISR: INC R7 ; tng s m ln 1 n v CJNE R7,#100,EXIT ;so snh R7 vi 100 nu cha = 100 th nhy ti EXIT cn nu bng 100 th xa n v 0 MOV R7,#0 EXIT: RETI Cn bc no mun dng bng truyn th trong chng trnh ngt ngoi 0 ta so snh s m vi cc gi tr nh sn chng hn nh cc gi tr 20,40,60,80,100, khi s m bng cc gi tr ny th cho dng bng truyn trong 5s ri cho bng truyn hot ng tr li. ta c li on chng trnh ngt ngoi 0 nh sau: ta c li on chng trnh ngt ngoi 0 nh sau:
E0_ISR: INC R7 ; tng R7 ln 1 CJNE R7,#20,TIEP ; so snh R7 vi 20, nu cha bng th nhy ti nhn TIEP cn nu bng ri th gi chng trnh TIEPTUC ACALL TIEPTUC ; gi chng trnh TIEPTUC TIEP: CJNE R7,#40,TIEP1 ; so snh R7 vi 40 ACALL TIEPTUC ; gi chng trnh tip tc TIEP1: CJNE R7,#60,TIEP2 ; so snh R7 vi 60 ACALL TIEPTUC ; gi chng trnh TIEPTUC TIEP2: CJNE R7,#80,TIEP3 ; so snh R7 vi 80 ACALL TIEPTUC ; gi chng trnh TIEPTUC TIEP3: CJNE R7,#100,EXIT ; so snh R7 vi 100 MOV R7,#0 ; xa R7 v 0 ACALL TIEPTUC ; gi chng trnh TIEPTUC EXIT: RETI ; quay v t ngt Trong chng trnh TIEPTUC chng ta s cho dng bng truyn nhng y mnh ch lm m phng nn mnh thay ci ng c iu khin bng truyn l mt con led khi led sng th bo hiu l ang dng bng truyn. Trong main chng ta np cc gi tr ban u cho php ngt v tch s BCD ri hin th ln LED dng phng php qut led ( ni s qua v phng php qut led cho mt s bc cha bit hiu: chng ta ni cc chn a,b,c,d,e,f,g,dp ca led chc v led n v li vi nhau, v ta gi tn hiu ra led hin th gi tr cn hin th v d nhin l nu chng ta cho php c hai led th c hai led u hin th mt s, cho nn trong mt lc chng ta ch cho php mt led sng. v d khi mun hin th s 15 th ta cn led chc hin th s 1 cn led n v hin th s 5 vy th u tin ta gi tn hiu cho sng s 1 ri tt led n v v cho php led chc, delay mt khong thi gian ri gi tip tn hiu cho sng s 5 ri tt led chc v cho php led n v) qut led ngha l cho trong mt trng thi ch c mt led c sng c nh th led chc sng s 1 v tt led n v, delay mt khong thi gian ri tt led chc v cho led n v sng s 5 ri delay mt khong thi gian, tc sng led l khong 24hnh/s nh th th mt chng ta c khng th nhn bit c s thay i v c cm gic l n ang hin th s 15. Gii thut tch s m trong R7 nh th ny: chng ta np cho B mt gi tr l 10 v ly R7 chuyn vo A ri ly A chia cho B nh th phn nguyn s nm trong A ( tc l s chc lu trong A ) cn phn d nm trong B ( tc l
s n v nm trong B), nh vy l ta tch c s chc v s n v ra, chng ta chuyn s hng chc ra port0 ri cho led chc tch cc v tt led n v, ri chuyn B v A ri xut n ra port0 v cho php led n v sng v tt led chc. Cn y l code hon chnh: ORG 0000H ; im vo reset LJMP MAIN ; gi chng trnh chnh ORG 000BH ; vecter timer 0 LJMP T0_ISR ; gi chng trnh ngt timer 0 ORG 0003H ; vecter ngt ngoi 0 LJMP E0_ISR ; gi chng trnh ngt ngoi 0 ORG 001BH ; vecter timer 1 LJMP T1_ISR ; gi chng trnh ngt timer 1 ORG 0030H ; im vo chng trnh chnh MAIN: MOV TMOD, #12H ; timer 0 ch 2 v timer 1 ch 1 MOV TH0,#(-13) ; sau 13 Ms th xy ra ngt timer 0 ( tn s 38Khz) SETB TR0 ; cho php timer 0 chy SETB EA ; cho php ngt ton b SETB ET0 ; cho php ngt timer 0 SETB EX0 ; cho php ngt ngoi SETB IT0 ; ngt cnh xung CLR P1.4 ; xa p1.4 v 0 (tt led bo hiu dng bng truyn) MOV R7,#0 ; np cho R7 gi tr ban u (R7 cha s m) MOV R5,#50 ; np cho R5 gi tr 50 (mc ch to khong thi gian ngng bng truyn) LOOP: MOV A,R7 ; chuyn s m trong R7 vo A MOV B,#10 ; np cho B gi tr 10 DIV AB ; chia A cho B MOV DPTR,#LUT ; ch con tr DPTR vo bng LUT MOVC A,@A+DPTR ;chuyn gi tr chn trong bng LUT vo thanh ghi tch lyA MOV P0,A ; xut A ra port 0 CLR P1.7 ; cho php led chc sng SETB P1.6 ; tt led n v ACALL DELAY ; gi chng trnh delay MOV A,B ; chuyn B vo A
MOV DPTR,#LUT ; ch con tr DPTR vo bng LUT MOVC A,@A+DPTR ;chuyn gi tr chn trong bng LUT vo thanh ghi tch lyA MOV P0,A ; xut A ra port 0 CLR P1.6 ; cho php led n v sng SETB P1.7 ; tt led chc ACALL DELAY ; gi chng trnh delay SJMP LOOP ; quay li chng trnh chnh RET T0_ISR: CPL P1.5 ; o trng thi p1.5 ( mc ch to xung vung ) RETI ; quay li t ngt E0_ISR: INC R7 ; tng R7 ln 1 CJNE R7,#20,TIEP ; so snh R7 vi 20, nu cha bng th nhy ti nhn TIEP cn nu bng ri th gi chng trnh TIEPTUC ACALL TIEPTUC ; gi chng trnh TIEPTUC TIEP: CJNE R7,#40,TIEP1 ; so snh R7 vi 40 ACALL TIEPTUC ; gi chng trnh tip tc TIEP1: CJNE R7,#60,TIEP2 ; so snh R7 vi 60 ACALL TIEPTUC ; gi chng trnh TIEPTUC TIEP2: CJNE R7,#80,TIEP3 ; so snh R7 vi 80 ACALL TIEPTUC ; gi chng trnh TIEPTUC TIEP3: CJNE R7,#100,EXIT ; so snh R7 vi 100 MOV R7,#0 ; xa R7 v 0 ACALL TIEPTUC ; gi chng trnh TIEPTUC EXIT: RETI ; quay v t ngt DELAY: MOV R6,#200 DJNZ R6,$ RET ; 3 dng lnh ny l delay 400Ms TIEPTUC: SETB P1.4 ; cho n sng ( bo hiu dng bng truyn ) SETB ET1 ; cho php ngt timer 1 MOV TH1,#HIGH(-50000) MOV TL1,#LOW(-50000) ; hai dng lnh ny l np gi tr cho timer 1 ( sau 50000 Ms th xy ra ngt timer 1) SETB TR1 ; cho timer 1 chy RET ; kt thc chng trnh tip tc T1_ISR: DJNZ R5,THOAT ; gim R5 i 1 v so snh n vi 0 nu cha bng 0 th thot cn nu bng 0 th lm tip
CLR P1.4 ; tt n ( bo hiu cho bng truyn hot ng tr li ) CLR ET1 ; cm ngt timer 1 CLR TR1 ; dng timer 1 MOV R5,#50 ; np li cho R5 gi tr 50 THOAT: RETI ; tr v t ngt LUT: DB 03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,09H END ph lm mt ri ng khng v y l thnh qu ca chng ta