BÁO CÁO BÀI TẬP LỚN MÔN HỌC VI XỬ LÝ

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 15

BO CO BI TP LN MN HC VI X L

(nhm 6_in t 11_k49_h bch khoa h ni) Tn ti : ng h in t Cc thnh vin trong nhm : NGUYN HONG AN(nhm trng) L THANH BNH NGUYN VIT NG (nhm ph) PHM MINH C BI LU QUNH NGHIM XUN QUYN Tm tt ti : Thit k chic ng h in t hin th thi gian thng qua vi iu khin 89S052 s dng ngn ng lp trnh Assembly (ci ny vn phi vit tip). Chc nng ca sn phm : Hot ng nh mt chic ng h in t bnh thng hin th bng LED 7 thanh : Hin th gi, pht, giy. Hin th ngy, thng, nm. Hn gi. Chnh gi. C 4 phm chc nng : Phm th nht : C chc nng RESET vo chn 9 ca IC Phm th hai : Chn ch hin th ( gi, pht, giy_ngy, thng, nm_chnh gi_hn gi). Vo chn INTO Ban u khi cp ngun cc LED s hin th gi, pht, giy. Nhn ln 1 s chuyn sang ch hin th ngay, thng, nm. Nhn ln 2 s chuyn sang ch hiu chnh gi. Nhn ln th 3 s chuyn sang ch hn gi. Phm th ba :Vo chn INT1. C chc nng tng gi tr hin th ln mt n v khi nhn vo. Phm th t :vo chn P1.0 o Tt chung hn gi. o Chuyn ch chnh : ngy -> thng -> nm, gi-> pht. 1 LED n 7 thanh v 2 LED 4( 7 thanh) : LED n hin ch cho cc ch : 8 LED do hai thanh 4 LED ghp li : o Dng hin th : gi, pht, giy_ngy, thng, nm_gi hn_gi chnh. o Gia mi gi tr c du ghch ngang phn cch. S khi :

2 1 1 1

3 7 9 3

V C C D 2

LE D

R 3 R E S

4 10 2 8 1 7 22 16 5 11 3 9

2 2 2 6 1 1 1 led7thanh 1

U 4 4m a c h 1 0 8 5 4 2

V C C V C C

U 1 3 3 3 3 3 3 3 3 1 2 3 4 5 6 7 8 V C C 9 8 7 6 5 4 3 2 40 P P P P P P P P P P P P P P P P 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 .0 .1 .2 .3 .4 .5 .6 .7 .0 .1 .2 .3 .4 .5 .6 .7 /A /A /A /A /A /A /A /A 21 D P0 2 . 0 / A 28 2 D P1 2 . 1 / A 29 3 D P 2 2 . 2 / A 12 04 D P 3 2 . 3 / A 12 15 D P 4 2 . 4 / A 12 26 D P 5 2 . 5 / A 12 37 D P 6 2 . 6 / A 12 48 DP 7 2 .7 /A 1 5 10 P 3 . 0 / R X 1 D1 P 3 . 1 / T X 1D 2 P 3 . 2 / I N T103 P 3 . 3 / I N T114 P 3 . 4 / T 01 5 P 3 . 5 / T 11 6 P 3 . 6 / W R1 7 P 3 .7 /R D 2 3 4 5 6 7 8 9 V C C

U 2 20 1 1 1 1 1 1 1 1 A A A A A A A A 0 1 2 3 4 5 6 7 B B B B B B B B 0 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1

VCC

S W 1 U 3 . g f e d c b a 5 10 9 1 2 4 6 7

1 1 9 D IR O E

R 7 V C C

3 8

vcc

10

N C

74H C 245

GND LS 1 S P E A K E R < T itle > S unday, M ay 06,2007 S heet 1

R E S

C 2

LE D 7S E G M E N T C A3 P

Y 1

19 30 1 8 X T A L 1 A L E / P R O2 9 G X TA L2 P S E N 31 9 E A /V P P R S T

S W 3 S W 4 D 1

V C C

R 2 C 1

S W 2

A T89C 51 20

R 1 R RE E S S

GND

LE D + T itle S iz e D o c u m e n t N u m b e r A <D oc> D a te : of 1

VCC

Chng trnh Assembly : #include <sfr51.inc> org 0000H ljmp main org 0003H ljmp ngat0 org 0013H ljmp ngat1 org 0100H main: mov 30H,#00000011B;0 mov 31H,#10011111B;1 mov 32H,#00100101B;2 mov 33H,#00001101B;3 mov 34H,#10011001B;4 mov 35H,#01001001B;5 mov 36H,#01000001B;6 mov 37H,#00011111B;7 mov 38H,#00000001B;8 mov 39H,#00001001B;9 mov 40H,#11111101B;;cac o nho ghi lai gio,phut,giay mov 41H,#00H;chuc gio mov 42H,#00H;don vi gio mov 43H,#10H;dau - o giua gio va phut mov 44H,#00H;chuc phut mov 45H,#00H;dv phut mov 46H,#10H;dau - o giua phut va giay mov 47H,#00H;chuc giay mov 48H,#00H;dv giay ;cac o nho ghi lai gio hen mov 51H,#00H;gio mov 52H,#00H mov 53H,#10H mov 54H,#00H;phut mov 55H,#01H mov 56H,#10H mov 57H,#00H mov 58H,#00H mov 61H,#2;ngay mov 62H,#0 mov 63H,#10H mov 64H,#0;thang mov 65H,#2

mov 66H,#10H mov 67H,#8;nam mov 68H,#8 mov 6AH,#20 mov 6BH,#2 mov 6CH,#88 mov 6EH,#1 mov 71H,#1H;led 1 sang mov 72H,#2H;led 2 sang mov 73H,#4H;led 3 sang mov 74H,#8H;led 4 sang mov 75H,#10H;led 5 sang mov 76H,#20H;led 6 sang mov 77H,#40H;led 7 sang mov 78H,#80H;led 8 sang mov 79H,#0;bien dieu khien chuong khi nao tang 1 gio thi chuing keu 1 tieng mov r2,#1;bien dieu khien chuong mov r4,#0;bien chon che do mov r5,#1;bien chon chinh gio hay phut mov r3,#1 mov r6,#20;bien lap de dem giay --- 20 x 50ms = 1s mov IE,#85H;cho phe ngat ngoai 0 va 1 setb tcon.0;cho phep ngat ngoai 0 = suon am setb tcon.2;cho phep ngat ngoai 1 = suon am mov tmod,#11H;timer0 va timer1 --- che do 1 mov th0,#high(-48820);nap gia tri ban dau cho timer0 mov tl0,#low(-48820);timer0 co tac dung dem giay setb tr0;khoi dong timer0 setb tf1;ngung timer1 (cho co tran bang 1) LOOP: lcall sosanhgiohen lcall dochuong lcall tatchuong cjne r4,#0,eeee;r4=0 thi hien gio , khac 0 nhay den eeee de so sanh tiep lcall hiengio sjmp kkk eeee:cjne r4,#1,ooo;r4=1 thi hien ngay lcall chiangay lcall hienngay lcall chuyengiophutngay sjmp kkk

ooo: cjne r4,#2,ppp ;r4=2 thi hien chinh gio,phut lcall hienchinhgio lcall chuyengiophutngay sjmp kkk ppp: cjne r4,#3,kkk;r4=3 thi hien chinh gio hen lcall hienhengio lcall chuyengiophutngay kkk:jnb tf0,loop;neu co tran timer0 = 0 thitip tuc hien thi clr tr0;ngung timer0 clr tf0;xoa c0 tran timer0 de chuan bi dem tiep mov th0,#high(-50000);nap lai gia tri ban dau cho timer0 mov tl0,#low(-50000) setb tr0;khoi dong lai timer0 djnz r6,loop;r6 chua bang 0 thi quay lai loop hien thi tiep mov r6,#20;neu r6 = 0 thi nap lai r6=20 inc 48H;khi do ta tang len 1 giay mov a,48H cjne a,#10,LOOP;khi 48H(dv_giay) khac 10 thi quay lai loop de hien thi mov 48H,#0;neu 48H = 10 thi cho no=0 inc 47H;roi tang 47H(chuc giay) len 1 mov a,47H cjne a,#6,LOOP;khi 47H khac 6 thi quay lai hien thi mov 47H,#0;neu 47H = 6 thi cho no bang 0 inc 45H;roi tang 45H(dv_giay) ...... mov a,45H cjne a,#10,LOOP mov 45H,#0 inc 44H;44H(chuc phut) mov a,44H cjne a,#6,LOOP mov 44H,#0 inc 42H;42H(dv_gio) mov 79H,#21 mov a,42H cjne a,#4,SSV10;so sanh 42H voi 4 --- neu khac thi tiep tuc so sanh voi 10 sjmp SSCG;neu bang thiso sonh chuc gio(41H co bang 2 khong ?) SSV10: cjne a,#10,thoat_tang mov 42H,#0 inc 41H;neu dv_gio bang 10 thi cho no = 0 roi tang 41H(chuc gio) SSCG: mov a,41H cjne a,#2,thoat_tang;neu 41H khac 2 thi quay lai hien thi mov a,42H

cjne a,#4,thoat_tang;neu 41H =2 thi so sanh 42H(dv_gio) voi 4 mov 41H,#0 mov 42H,#0;neu dv_gio bang 4 thi ta cho gio =00 roi quay lai loop lcall tangngay;het 24H thi tang ngay len thoat_tang: ljmp LOOP hiengio:;CTC con cho phep hien gio,phut giay jb tf0,nhay0;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) mov p1,#00001001B;cho p1 gia tri de hien chu g mov b,#41H;nap gia tri 41H (dia chi cua o nho chuc gio) vao thanh ghi B lcall hiencacled nhay0: ret hienngay:;CTC hien thi ngay jb tf0,nhay1;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) cjne r3,#1,thang mov p1,#00010011B;cho p1 gia tri de hien chu n thang: cjne r3,#2,nam mov p1,#00011111B nam: cjne r3,#3,ntn mov p1,#11010101B ntn: mov b,#61H;61H-dia chi cua chuc ngay lcall hiencacled nhay1: ret hienchinhgio:;CTC hien chinh gio co nhap nhay jb tf0,nhay2;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) cjne r5,#1,sst mov p1,#01100011B;cho p1 gia tri de hien chu C sst:cjne r5,#2,nst mov p1,#00110001B nst: mov b,#41H mov r1,#71H;dia chi cua o nho cho phep sang led 1(ngoai cung ben trai) lap1: mov r0,b;r0=#41H mov a,@r0;chuyen noi dung o nho 41H vao thanh ghi A lcall hienled;goi ham hien led inc b;tang B de hien gia tri cua o nho tiep theo(dv_giay;chuc_phut;...) inc r1;tang r1 denap cho no dia chi cua o nho cho phep sang led ke tiep mov a,b

cjne a,#60H,lap1;khi nao B=60H thi thoat ; neu chua = thi tiep tuc hien thi nhay2: ret hienhengio:;CTC cho phep hien thi gio hen jb tf0,nhay3;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) cjne r5,#1,minute mov p1,#10010001B;chu H sjmp mmmm minute: mov p1,#00110001B mmmm:mov b,#51H;dia chi cua o nho chuc gio lcall hiencacled nhay3: ret hiencacled:;CTC cho hien lan luot 8 led jb tf0,nhay4;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) mov r1,#71H;dia chi cua o nho cho phep sang led dau tien lap: mov r0,b;copy dia chi cua o nho chua gio(phut,giay) vao r0 mov a,@r0;=>A chua gia tri cua so can hien thi lcall hienled inc b;tang B de hien gia tri cua o nho tiep theo(dv_giay;chuc_phut;... inc r1;tang r1 denap cho no dia chi cua o nho cho phep sang led ke tiep mov a,r1 cjne a,#79H,lap;neu r1 = 79 thi thoat,neu khac thi tiep tuc hien led nhay4: ret hienled:;CTC cho phep hien led jb tf0,nhay5;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) add a,#30H;A chua gia tri cua so can hien;sau khi cong 30H thi se la dia chi cua o nho luu so do mov r0,a;=>r0 chua dia chi cua so can hien tren led mov p0,@r0;=>dua gia tri luu trog o nho co dia chi r0 vao p0 de hien led mov p2,@r1;cho phep hien 1 led da dinh san trong cac o nho tu 71H den 78H lcall delay nhay5: ret delay: mov r7,#200 gg:jb tf0,nhay6;neu thay tf0=1 thi thoat(de khoi dong lai bo dem) djnz r7,gg nhay6: ret

chinhgio:;CTC tang gio inc 42H;tang dv_gio mov a,42H cjne a,#4,ddd;neu 42H=4 thi...( xem lai doan chuong trinh chinh LOOP) sjmp ccc ddd: cjne a,#10,ttt inc 41H mov 42H,#0 ccc:mov a,41H cjne a,#2,ttt mov a,42H cjne a,#4,ttt mov 41H,#0 mov 42H,#0 ttt: mov 47H,#0;cho giay = 0 mov 48H,#0 ret chinhphut:;CTC tang phut => xem LOOP de biet ve cac lenh trong CTC nay inc 45H mov a,45H cjne a,#10,t2 inc 44H mov 45H,#0 mov a,44H cjne a,#6,t2 mov 44H,#0 t2: mov 47H,#0 mov 48H,#0;cho giay = 0 ret chinhgiohen:;CTC chinh gio hen => tuong tu nhu chinh gio (chi khac la gia tri cua cac o nho) inc 52H mov a,52H cjne a,#4,ddd1 sjmp ccc1 ddd1: cjne a,#10,ttt1 inc 51H mov 52H,#0 ccc1:mov a,51H cjne a,#2,ttt1

mov a,52H cjne a,#4,ttt1 mov 51H,#0 mov 52H,#0 ttt1: ret chinhphuthen:;CTC chinh phut hen inc 55H mov a,55H cjne a,#10,t21 inc 54H mov 55H,#0 mov a,54H cjne a,#6,t2 mov 54H,#0 t21: ret sosanhgiohen:;CTC xem khi nao thi den gio hen mov a,41H subb a,51H jnz thoat3 mov a,42H subb a,52H jnz thoat3 mov a,44H subb a,54H jnz thoat3 mov a,45H subb a,55H jnz thoat3 mov a,47H subb a,57H jnz thoat3 mov a,48H subb a,58H jnz thoat3 inc r2 ;neu dung gio phut giay=00 thi tang r2(bien dieu khien chuon) thoat3: ret dochuong:;CTC do chuong dai khi r2 khac 1 va do chuong ngan khi 79H khac 1 jb tf0,thoat5 mov a,79H cjne a,#0,eeff

sjmp ass eeff: lcall khoidongtimer1 cpl p3.0 dec 79H ass: cjne r2,#1,thoat4 sjmp thoat5 thoat4: jnb tf1,thoat5 cpl p3.0 lcall khoidongtimer1 thoat5: ret khoidongtimer1:;CTC cho phep xac dinh tan so chuong reo(=500Hz) clr tr1 clr tf1 mov th1,#high(-1250) mov tl1,#low(-1250) setb tr1 ret tatchuong:;CTC : khi nao p1.0 = 0 thi ngat chuong jb p1.0,khongtat clr tr1 mov r2,#1 setb tf1 khongtat: ret chuyengiophutngay:;CTC : khi nao p1.0 = 0 thi cho phep chuyen tu chinh phut sang chinh gio va nguoc lai jb p1.0,kc2 ;:ngoai ra cho phep chuyen tu chinh ngay => thang => nam => ngay mov a,6EH cjne a,#1,kc3 mov 6EH,#0 cjne r4,#1,kc0 inc r3 cjne r3,#4,kc0 mov r3,#1 kc0:cjne r4,#2,kc1 inc r5 cjne r5,#3,kc1 mov r5,#1 kc1:cjne r4,#3,kc3

inc r5 cjne r5,#3,kc3 mov r5,#1 sjmp kc3 kc2: mov 6EH,#1 kc3: ret tangngay:;CTC tang ngay inc 6AH;tang ngay mov a,6BH;gan cho A thang cjne a,#2,kt4;kiem tra thang co bang 2 0?;neu khac thi nhay toi kt4 dekiem tra than co bang 4 0? sjmp kt2;nhay den kiem tra thang hai co nhuan khong? kt4:cjne a,#4,kt6;kiem tra thang 4;neu khac thi kiem tra thang co bang 6 0? sjmp kt30;nhay den kt30 de kiem tra ngay ( thang 4,6,9,11 co 30ngay kt6:cjne a,#6,kt9 sjmp kt30 kt9:cjne a,#9,kt11 sjmp kt30 kt11:cjne a,#11,kt31;luc nay sau khi thay thang khac 2,4,6,9,11 thi nhay toi kt31 sjmp kt30 kt31:mov a,6AH;doan chuong trinh kt31 cho phep kiem tra nay cua cac thang 1,3,5,7,8,10,12 c0 = 31 0? cjne a,#32,tkt inc 6BH mov 6AH,#1 sjmp tkt kt30:mov a,6AH cjne a,#31,tkt inc 6BH mov 6AH,#1 sjmp tkt kt2: mov a,6CH;gan A = nam mov b,#4;b=4 div ab;chia a cho b,phan du luu vao b mov a,b;cho a=b cjne a,#0,konhuan;nhay toi konhuan neu a khac 0 mov a,6AH cjne a,#30,tkt inc 6BH mov 6AH,#1 sjmp tkt konhuan: mov a,6AH

cjne a,#29,tkt inc 6BH mov 6AH,#1 tkt: mov a,6BH cjne a,#13,thkt mov 6BH,#1 inc 6CH mov a,6CH cjne a,#100,thkt mov 6CH,#0 thkt: ret chinhngay:;cho phep chinh lai ngay cua 1 thang bat ki (tu 1=>12) ;cac thang 4,6,9,11 thi den 30 thi nhay ve 1 ;thang 2 thi kiem tra co nhuan 0?,neu nhuan thi tang den 29 roi ve1;neu 0 thi den28 ;cac thang con lai thi dem den 31 inc 6AH mov a,6BH cjne a,#2,kkt4 sjmp kkt2 kkt4:cjne a,#4,kkt6 sjmp kt30 kkt6:cjne a,#6,kkt9 sjmp kt30 kkt9:cjne a,#9,kkt11 sjmp kt30 kkt11:cjne a,#11,kkt31 sjmp kkt30 kkt31:mov a,6AH cjne a,#32,ktkt mov 6AH,#1 sjmp ktkt kkt30:mov a,6AH cjne a,#31,ktkt mov 6AH,#1 sjmp ktkt kkt2: mov a,6CH mov b,#4 div ab mov a,b cjne a,#0,knhuan mov a,6AH cjne a,#30,ktkt

mov 6AH,#1 sjmp ktkt knhuan: mov a,6AH cjne a,#29,ktkt mov 6AH,#1 ktkt: ret chinhthang: inc 6BH mov a,6BH cjne a,#13,jjj mov 6BH,#1 jjj: ret chinhnam: inc 6CH mov a,6CH cjne a,#100,jj1 mov 6CH,#0 jj1: ret chiangay:;CTC chia ngay mov a,6AH mov b,#10 div ab mov 61H,a mov 62H,b mov a,6BH mov b,#10 div ab mov 64H,a mov 65H,b mov a,6CH mov b,#10 div ab mov 67H,a mov 68H,b ret ngat0:;CTC ngat ngoai 0 : khi nao co suon am o p3.2 thi kich hoat CTC nay ;CTC cho phep lua chon che do hien thi inc r4 mov r5,#1

mov 6DH,#1 cjne r4,#4,quit mov r4,#0 quit: reti ngat1:;CTC cho phep tang gia tri cua cac o nho (gio phut ngay thang nam) khi co suon am vao p3.2 cjne r4,#1,ff1 cjne r3,#1,aa1 lcall chinhngay aa1:cjne r3,#2,aa2 lcall chinhthang aa2:cjne r3,#3,yyy lcall chinhnam ff1:cjne r4,#2,fff cjne r5,#1,aaa lcall chinhgio aaa: cjne r5,#2,fff lcall chinhphut fff: cjne r4,#3,yyy cjne r5,#1,bbb lcall chinhgiohen bbb: cjne r5,#2,yyy lcall chinhphuthen yyy: reti end Phn cng cng vic : NGUYN HONG AN : Chnh gi Chnh pht Chnh gi hn Chnh pht hn L THANH BNH:

Tng ngy NGUYN VIT NG Chnh ngy Chnh thng

PHM MINH C: X l ngt NGHIM XUN QUYN: Hin gi Hin ngy Hiu chnh gi Hin hn gi Delay BI LU QUNH: So snh gi hn chung Khi ng timer 1 Tt chung

Chnh nm Chia ngy

You might also like