Top Banner
Phn 1: Lý thuyết thiết kế I.Gii thiu khái quát v89C51 1.phn cng: Đặc đim và chc năng hot động ca các IC hMSC-51 hn tn tương tnhau, đây ta gii thiu 89c51 vi các đặc đim chính sau: - 4KB EPROM ni - 128 byte RAM ni - 4 port xut / nhp (I/O port) 8 bit - 2 bđịnh thi 16 bit - Giao tiếp ni tiếp - 64kb Rom ngi - 64kb Ram ngi - 210 vtrí nhđể định vbit, mi vtrí mt bit - 4us cho hot động nhân hoc chia 1. cu trúc bên trong ca IC 89C51. + Thành phn chính ca vi điu khin 8051 la bxlý trung tâm hay con gi là CPU. CPU bao gm: - Thamh ghi tích luA
28

Do an Mach Dong Ho Rtc Dung Ds12c887 1529

Nov 23, 2015

Download

Documents

tuandktd
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • Phn 1: L thuyt thit k I.Gii thiu khi qut v 89C51 1.phn cng: c im v chc nng hot ng ca cc IC h MSC-51 hn tn tng t nhau, y ta gii thiu 89c51 vi cc c im chnh sau:

    - 4KB EPROM ni - 128 byte RAM ni - 4 port xut / nhp (I/O port) 8 bit - 2 b nh thi 16 bit - Giao tip ni tip - 64kb Rom ngi - 64kb Ram ngi - 210 v tr nh nh v bit, mi v tr mt bit - 4us cho hot ng nhn hoc chia

    1. cu trc bn trong ca IC 89C51.

    + Thnh phn chnh ca vi iu khin 8051 la b x l trung tm hay con gi l CPU. CPU bao gm:

    - Thamh ghi tch lu A

  • - Thanh ghi tch lu B, dng cho php nhn v chia - n v logic hc ALU - T trng thi chng trnh PSW - 4 bank thanh ghi - Con tr ngn xp - Ngi ra cn c b nh chng trnh, b gii ma lnh, b iu khin thi

    gian v logic + n v x l trung tm nhn trc tip xung t b dao ng + Chng trnh ang chy c th cho dng li nh mt khi iu khin bn trong. Cc ngun ngt c th l cc bin c bn ngi, s trn b m nh thi hoc cng c th l giao din ni tip. + 2 b nh thi 16 bit hot ng nh mt b m. + Cc cng port 0, port 1, port 2, port 3 c s dng vo mc ch iu khin, cng port 3 c thm cc ng dn iu khin dng trao i vi mt b nh bn ngi, hoc u ni giao din ni tip cng nh cc ng dn ngt bn ngi. + Giao din ni tip c cha mt b truyn v mt b nhn khng ng b lm vic c lp vi nhau. Tc truyn qua cng ni tip c th t trong di rng v c n nh bng mt b nh thi. + Trong vi diu khin 8051 cn c hai thnh phn quan trng khc l b nh v cc thanh ghi +B nh cn c Ram v Rom dng lu d liu v m lnh. + Cc thanh ghi s dng lu d thng tin trong qu trnh x l. Khi CPU lm vic, n lm thay ni dung ca cc thanh ghi

    2. S chn 89c51: - port 0: c hai chc nng t chn 32 n chn 39 trong cc thit k nh.(khng dng b nh m rng). c hai chc nng nh cc ng I/O. i vi cc thit k c ln( vi b nh m rng) n c kt hp knh gia cc Bus. - Port 1: l port I/O trn cc chn t chn s 1 n chn

    s 8. c th dng cc thit b ngi nu cn. Port 1 khng c chc nng khc v th chng ta ch c dng trong cc thit b ngi.

    - Port 2: l port cng dng kp trn cc chn 21 n 28 c dng nh cc ng xut nhp hoc byte cao ca bus a ch i vi cc thit k m rng.

    - Port 3: l port cng dng kp trn cc chn 10 n chn 17. Cc chn ca port ny c nhiu chc nng, cc cng dng chuyn i c lin h vi cc c tn c bit ca 8051/8031 nh bng sau:

    U1

    AT89C51

    9

    1819

    202930

    31

    40

    12345678

    2122232425262728

    1011121314151617

    3938373635343332

    RST

    XTAL2XTAL1

    GNDPSEN

    ALE/PROGEA/VPP

    VCC

    P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7

    P2.0/A8P2.1/A9

    P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15

    P3.0/RXDP3.1/TXD

    P3.2/INT0P3.3/INT1

    P3.4/T0P3.5/T1

    P3.6/WRP3.7/RD

    P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7

  • Bit Tn Chc nng chuyn i P3.0 RXD D liu nhn cho port ni tip P3.1 TXD D liu pht cho port ni tip P3.2 INTO Ngt 0 bn ngi P3.3 INT1 Ngt 1 bn ngi P3.4 T0 Ng vo ca timer/courter 0 P3.5 T1 Ng vo ca timer/courter 1 P3.6 WR Xung ghi b nh d liu ngi P3.7 RD Xung c b nh d liu ngi

    + Chn PSEN: l chn 29, c 4 tn hiu iu khin, l tn hiu cho php b nh chng trnh m rng v thng c ni ln chn OE ca mt Eprom cho php c cc byte m lnh. PSEN mc thp trong thi gian ly lnh. Cc m nh phn ca chng trnh c c t Eprom qua bus v c cht vo thanh ghi lnh ca 8051 gii m lnh. Khi thi hnh chng trnh trong Rom ni PSEN s th ng (mc cao). + Chn ALE: (cht) Tn hiu ra ALE trn chn 30 tng hp vi cc thit b lm vic vi cc x l 8585,8088,8051 dng ALE mt cch tng t cho lm vic gii cc knh cc Bus a ch v d liu khi port 0 c dng trong ch chuyn i ca n: va l Bus d liu va l byte thp ca a ch, ALE l tn hiu cht a ch vo vo mt thanh ghi bn ngi trong na u ca chu k b nh. Sau cc ng port 0 dng xut hoc nhp d liu trong na sau ca chu k b nh. Cc xung tn hiu ALE c tc bng 1/6 ln tn s dao ng trn chp v c th c lm xung nhp cho cc h thng. Nu xung trn 8051 l 12MHZ th ALE c tn s 2MHZ. Ch ngoi tr khi thi hnh lnh Movx, mt xung ALE b mt. Chn ny cng c lm ng vo cho xung lp trnh cho Eprom trong 8051. + Chn EA: (truy xut ngi):Tn hiu vo EA trn chn 31 thng c mc ln mc cao(+5V) hoc mc thp(GND). Nu mc cao, 8051 thi hnh chng trnh t Rom ni trong khong a ch thp(4K). Nu mc thp chng trnh chi c thi hnh t b nh m rng. Khi dng 8031, EA lun c ni mc thp v khng c b nh chng trnh trn chp. Nu EA c ni mc thp b nh bn trong chng trnh 8051 s b cm v thi hnh chng trnh Eprom m rng. Ngi ta cn dng chn EA lm chn cp in p 21V khi lp trnh cho Eprom trong 8051. + Chn RST(reset): Khi tn hiu ny c a ln mc cao(t nht phi 2 chu k my), cc thanh ghi trong 8051 c ti nhng gi tr thch hp khi ng h thng. + Cc ng vo b dao ng trn chip:

  • Nh thy cc hnh trn,8051 c b dao ng trn chip. N thng c ni vi thch anh gia hai chn 18 v 19. Cc t gia cng cn thit nh v. Tn s thch anh thng thng l 12MHZ + Cc chn ngun: 8051 vn hnh vi ngun n +5V(VCC) c ni vo chn 40 v chn 20 c ni GND

    II. Gii thiu v IC thi gian thc DS12C887: 1. S chn ch sau:

    AD0-AD7: Bus a hp a ch/d liu. NC: B trng. MOT: La chn loi Bus. CS: Ng vo la ch RTC AS: cht a ch. R/ W: Ng vo c ghi. DS: Cht d liu. RESET: Ng vo reset. IRQ: Nh ra yu cu ngt. SQW: Ng ra sng vung. VCC: Ngun cung cp +5V. GND: Mass

    2. Chc nng cc chn: - GND, VCC: ngun cung cp cho thit b nhng chn trn. Vcc l in p

    ng vo +5v. Khi in p 5v c cung cp ng chun, thit b c truy cp y v d liu c th c v ghi. Khi Vcc thp hn 4.25v, qu trnh c v ghi b cm tuy nhin chc nng gi thi gian vn c tip tc khng b nh hng bi in p b st gim bn ngi. Khi Vcc rt xung thp hn 3v, Ram v b nh gi c chuyn sang ngun nng lng bn trong.

    - MOT: l chn c tnh linh hot la chn gia hai loi Bus. Khi c ni ln Vcc, Bus nh thi Motorola c la chn. Khi c ni xung GND

    U1

    DS12887

    1923

    24

    12

    4567891011

    14

    17

    1

    18

    15

    13

    IRQSQW

    VCC

    GND

    AD0AD1AD2AD3AD4AD5AD6AD7

    AS

    DS

    MOT

    RST

    R/W

    CS

  • hoc khng ni, Bus nh thi Intel c la chn. Chn c in tr ko xung bn trong c gi tr khong 20K.

    - SQW: c th xut tn hiu ra t 1 trong 13 loi c cung cp t 15 trng thi c chia bn trong ca RTC. Tn s ca chn SQW c th thay i bng cch lp trnh thanh ghi A. Tn hiu SQW c th m hoc tt khi ta s dng bit SQWE trong thanh ghi B. Tn hiu SQW khng xut hin khi khi Vcc thp hn 4.25v

    - AD0-AD7: Bus a hp tit kim chn bi v thng tin a ch v thng tin d liu c dng chung ng tn hiu. Cng ti nhng chn, a ch c sut trong sut phn th 1 ca chu k Bus v c dng cho d liu trong phn th 2 ca chu k. a hp a ch/ d liu khng lm chm thi gian truy cp ca DS12C887 khi bus chuyn t a ch sang d liu xp ra trong sut thi gian truy cp Ram ni. a ch phi c gi tr trc khi xut hin sn xung ca AS/ALE ti thi im m DS12C887 cht a ch t AD0 ti AD7. D liu phi c hin th v gi n nh trong sut phn sau ca DS hoc xung WR. Trong chu k c ca DS12C887 ng ra 8 bit ca d liu trong sut phn sau ca DS hoc xung RD. Chu k c c thc hin xong v Bus tr v trng thi tng tr cao cng nh khi DS bt u xung thp trong trng hp nh thi Motorola hoc khi RD ln cao trong trng hp nh thi Intel.

    - AS: xung dng cung cp xung cht a ch trong vic phc hp Bus. Sn xung ca AS/ ALE lm cho a ch b cht li bn trong ca DS12C887. Sn ln tip theo khi xut hin trn Bus AS s b x a ch bt chp chn CS c c chn hay khng. Lnh truy cp c th gi ti bn c hai cch.

    - DS: chn DS/ RD c hai kiu s dng tu thuc vo mc ca chn MOT. Khi chn MOT c ni ln Vcc, Bus nh thi Motorola c la chn. Trong kiu ny DS l xung dng trong sut phn sau ca chu k Bus v c gi l Data Strobe. Trong sut chu k c, DS bo hiu thi gian m DS12C887 oc iu khin bus i. Trong chu k c, xung qut ca DS l nguyn nhn lm DS12C87 cht d liu c ghi. Khi chn MOT c ni xung GND, Bus nh thi Intel c la chn. Trong kiu ny, chn DS c gi l Read(RD) xc nh chu k thi gian khi DS12C887 iu khin bus c d liu. Tn hiu RD c cng nh ngha vi tn hiu OE trong b nh ring.

    - R/ W: c hai cch hot ng. Khi chn MOT c kt ni ln Vcc cho ch nh thi Motorola, R/ W ang ch ch ra hoc l chu k hin ti l chu k c hoc ghi. Chu ky i hi chn R/ W phi mc cao khi chn DS mc cao. Chu k i hi chn R/W mc thp trong sut qu trnh cht tn hiu ca DS. Khi chn MOT c ni GND cho ch nh thi Intel,

  • tn hiu R/ W l tn hiu hot ng mc thp c gi l WR. Trong ch ny chn R /W c nh ngha nh tn hiu Write Enable trong Ram chung.

    - CS: tn hiu la chn phi oc xc nh mc thp chu k bus DS12C887 c s dng. CS phi c gi trong trng thi hot ng rtong sut DS v AS ca ch nh thi Motorola v trong sut RD v WR ca ch nh thi Intel. Chu k bus khi chn v tr m khng chn CS s cht a ch nhng s khng c bt k s truy cp no. Khi Vcc thp hn 4.25Volts, chc nng bn trong ca DS12C887 ngn chn s truy cp bng cchkhng cho php lla chn nh vo CS. Hnh ng ny nhm bo v c d liu ca ng h thi gian thc bn trong cung nh d liu Ram trong sut qu trnh mt ngun.

    - IRQ: l ng ra hot ng mc thp, c th s dng ng vo ngt ti b vi x l.Ng ra IRQ\ mc thp khi bit l nguyn nhn lm ngt v ph hp vi bit cho php ngt c t(set). x chn IRQ\ chng trnh ca b vi x l thng thng c t thanh ghi C. Chn Reset cng b x trong lc ngt. Khi khng c trng tgi ngt no c s dng, trng thi IRQ\ mc tng tr cao. Nhiu thit b ngtc th ni ti IRQ\ Bus l mt ng ra m v yu cu mt in tr ko ln bn ngi.

    - RESET: khng hiu lc i vi lch, ng h hoc Ram. ch cp ngun, chn reset c th b ko xung trong thi gian cho php n nh ngun cung cp.

    3. Cu trc bn trong ca DS12C887.

  • a.s a ch ca Real time clock

    S a ch ca DS12C887 c trnh by bao gm 113 byte Ram thng dng, 11 byte Ram m thnh phn bao gm ng h thi gian thc, lch, d liu bo gi v 4 byte c s dung cho vic iu khin v thng bo tnh trng. Tt c 128 byte c th c ghi hoc c trc tip t nhnh trng hp sau:

    - Thanh ghi C v D l hai thanh ghi ch c - Bit th 7 ca thanh ghi A l bit ch c. - Bit cao ca byte th hai l bit ch c

    Thi gian v c bng cch c cc byte b nh hin co. Thi gian, lch v bo gi c t hoc gn gi tr bng cch ghi gi tr byte Ram thch hp. Ni dung ca 10 byte cha thi gian lch v bo gi u c th hin th hai dng nh phn hoc BCD. Trc khi ghi ln cc thanh ghi thi gian , lch v bo gi bn trong, bit SET thanh ghi B phi c t mc 1 ngn nga s cp nht c th xy ra trong qu trnh ghi . Thm vo na l ghi ln 10 thanh ghi ch thi gian, lch v bo gi mt nh dng la chn(BCD hay nh phn), bit chn kiu d liu DM ca thanh ghi B phi c t mc logic thch hp. Tt c 10 byte thi

  • gian lch v bo gi phi s dng cng kiu d liu. Bit c t thanh ghi B nn c x sau khi bit kiu d liu c ghi cho php ng h thi gian thc cp nht byte thi gian v lch. Vo lc u ng h thi gian cp nht mt kiu c la chn. Kiu d liu khng th thay i m khng khi ng li 10 byte d liu. Bng sau trnh by nh dng nh phn v BCD ca thi gian lch v bo gi. Bit la chn kiu hin th 24-12 khng th thay i m khng khi ng li thanh ghi gi. Khi nh dng kiu 12 gi c chn bit cao ca byte gi tng ng vi PM khi n c t mc logic 1. Byte thi gian lch v byte bo gi lun c truy cp bi v chng c m gp i, mi giy mt ln 11byte c nng cp v c kim tra tnh trng bo gi. Nu lnh c d liu thi gian v lch din ra trong qu trnh cp nht, mt vn pht sinh l c th thi gian gi, pht, giy c th khng chnh xc, xc xut c kkhng chnh xc d liu thi gian v lch l rt thp. Sau y ta tm hiu cc thanh ghi iu khin trong DS12C887. - Thanh ghi A: MSB LSB BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 UIP DV2 DV1 DV0 RS3 RS2 RS1 RS0 + UIP: l bt trng thi m c th theo di c, khi bit UIP mc 1, qu trnh cp nht s sm xy ra. Khi bit UIP mc 0, qu trnh cp nht s khng xy ra t nht 244Us. Nhng thng tin v thi gian lch v bo gi trong Ram c y cho vic truy cp khi bit UIP mc 0. Bit UIP l bit ch c v khng b nh hng bi chn reset. Khi ghi bit SET thanh ghi B ln mc 1 ngn chn qu trnh cp nht v x bit trng thi UIP. + DV2, DV1, DV0: 3bit trn c s dng bt tt b dao ng v ci t li qu trnh m xung. Khi c t 010 th l s kt hp duy nht bt b dao ng ln v cho php RTC gi thi gian. Khi c t 11X s cho php b dao ng nhng gi qu trnh m xung mc reset. Qu trnh cp nht tip theo s sm din ra sau 500ms sau khi kiu 010 c ghi vo DV1, DV2, DV3. + RS3, RS2, RS1,RS0: 4bit loi la chn la chn 1 trong 13 loi ca b chia 15 trng thi hoc khng cho php xut tn hiu chia ra ngi. Loi c la chn c th pht ra sng vung(chn SQW) hoc ngt theo chu k. Ngi s dng c th s dng mt trong nhng cch sau:

    - Cho php ngt vi bit PIE - Cho php xut ng ra chn SQW vi bit SQWE. - Cho php c hai hot ng cng mt lc v cng mt loi. - Khng kch hot c hai.

    Bng sau lit k chu k ngt vi tn s sng vung m c th la chn vi bit RS. C 4 bit c ghi v khng b nh hng bi chn reset.

  • - Thanh ghi B: BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 SET PIE AIE UIE SQWE DM 24/12 DSE

    - SET: Khi bit SET mc 0, thng thng qu trnh cp nht bng cch tng bin m 1 ln mt giy. Khi bit SET c ln vo mc 1 mi qu trnh cp nht u b cm, v chng trnh c th bt u khi ng byte thi gian v lch m khng c qu trnh cp nht no xy ra trong qu trnh khi ng, chu k c c th thc thi cng mt kiu. SET l bit c ghi v khng chu nh hng bi Reset hoc cc chc nng bn trong ca DS12C887.

    - PIE: Bit cho php ngt theo chu k, l bit c ghi, n cho php bit c ngt theo chu k trong thanh ghi C iu khin chn IRQ\ xung mc thp tu thuc vo t l phn b ca RS3 n RS0 thanh ghi A.

    - AIE: Bit cho php ngt bo gi, l bit c ghi m khi c t ln 1 n cho php bit c bo gi(AF) thanh ghi C cho php ngt IRQ\. Tn hiu ngt bo gi din ra tt c cc giy khi c 3 byte bo gi cha m bo gi c th hin nh phn nh sau 11XXXXXX. Cc chc nng bn trong ca DS12C887 khng b nh hng bi chn AIE.

    - UIE: Bt cho php kt thc qu trnh ngt cp nht, l bit c ghi m cho php bit c kt thc qu trnh cp nht thanh ghi C cho php ngt IRQ\. Chn Reset mc 0 hoc chn SET mc 1 s x bit UIE.

    - SQWE: l bit cho php xut sng vung, c t ln mc 1, mt tn hiu sng vung c tn s c t v tr c la chn ca bit RS3 n RS0 s iu khin sng ra ti chn SQW. Khi bit SQWE c t mc thp, chn SQW s c gi mc thp. SQWE l bit c ghi v c x khi Reset. SQWE c t ln 1 khi c cp Vcc.

    - DM: Bit kiu d liu qui nh khi no l thng tin lch v thi gian nh dng nh phn hoc BCD. Bit DM c t bi chng trnh c th nh dng thch hp v c th c khi c yu cu. Bit ny khng b thay i khi Reset. Mc 1 ca DM s hin th d liu nh phn, mc 0 hin th d liu BCD.

    - 24/ 12: Bit xc nh kiu byte gi. Khi mc 1 n hin th kiu 24 gi, bit 0 hin th 12 gi. Bit ny khng nh hng bi cc chc nng bn trong hoc chn reset.

    - DSE: Bit cho php nh cng khai. Bit ny cng khng b nh hng bi chc nng bn trong hoc chn reset.

    - Thanh ghi C: MSB LSB BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 IRQF PF AF UF 0 0 0 0

  • - IRQF: Bit c yu cu ngt c t ln 1 khi nhng iu di y ng:

    PF=PIE=1 AF=AIE=1 UF=UIE=1 u c ngha l IRQF=(PF.PIE)+(AF.AIE)+(UF.UIE). Bt c lc no bit IRQF c t ln 1, chn IRQ\ c t xung mc thp. Bit c PF,AF v UF c x khi thanh ghi C c chng trnh c hoc chn reset mc thp.

    - Thanh ghi D: BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 VRT 0 0 0 0 0 0 0 VRT: Bit thi gian v Ram hp l, biu th tnh trng ca pin c kt ni chn VBAT. Bit ny khng phi l bit ghi c v lun c gi tr l 1 khi c, nu hin th mc 0, ngun nng lng pin bn trong cn v c hai mc d liu thi gian thc ln d liu Ram u b nghi ng. Bit ny khng b nh hng bi chn reset. III. IC gi m 74LS247 L loi IC dng gii m s nh phn 4 bit (s BCD) sang m 7 on. IC gm 16 chn, hot ng vi ngun 5V. A,B,C,D: 4 ng vo RBI, LT, BI/RBO c ni ln ngun. a,b,cg l chn ra led 7 on.

    Led 7on y ta dng loi Ant chung.

  • Phn 2: Thit k v thi cng

    I.S nguyn l v s mch in:

  • D3

    LED

    100

    D

    LED1

    LOA

    1K

    U2

    76421

    3

    5

    910

    ABCDE

    CA

    DP

    FG

    TANG

    E

    1K

    VCC

    C

    G

    LED2

    AD1AD4

    A1015

    F

    BCD1

    BCD1

    U2

    76421

    3

    5

    910

    ABCDE

    CA

    DP

    FG

    LS1

    SPEAKER

    8K2

    U2

    76421

    3

    5

    910

    ABCDE

    CA

    DP

    FG

    VCC

    AD6

    150

    LOA

    1K

    AD4

    G

    WRITE

    A

    A1015

    VCC

    B

    R2

    RESISTOR SIP 9

    1 23456789

    F

    C

    TANG

    G

    READ

    AD5

    NGAT

    150

    BA

    LED1

    1K

    D

    AD3

    VCC

    E

    VCC

    VCC

    LED

    U2

    76421

    3

    5

    910

    ABCDE

    CA

    DP

    FG

    ALE

    A1015 A1015

    VCC

    D

    AD0

    AD3

    VCC

    LED6

    AD0

    AD0

    LED4

    10UF

    12MVCC

    F

    AD4

    LED5

    A

    10K

    READ

    BCD4

    F

    BCD4

    WRITE

    C

    D

    VCC

    A

    VCC

    CB

    AD7

    LED5

    AD7

    EF

    B

    LED4

    AD3

    A1015

    G

    AD2

    150

    VCC

    D

    LED3

    GF

    BCD3

    CHUYENVCC

    E

    33P

    ALE

    VCC

    B

    AD6

    BCD3

    VCC 1

    3

    2OUT

    GN

    DIN

    Q2NPN

    1K

    VCC

    CHUYEN

    AD6

    B

    VCC

    AD2

    U2

    76421

    3

    5

    910

    ABCDE

    CA

    DP

    FG

    C

    G

    150

    D

    A

    3.3V

    VCC

    C

    LED

    LED2

    E

    AD1 BCD2

    VCC

    F

    GIAM

    U2

    76421

    3

    5

    910

    ABCDE

    CA

    DP

    FG

    U1

    DS12887

    19

    23

    2412

    4567891011

    14

    17

    1

    18

    15

    13

    IRQ

    SQW

    VC

    CG

    ND

    AD0AD1AD2AD3AD4AD5AD6AD7

    AS

    DS

    MOT

    RST

    R/W

    CS

    DE

    LED3

    NGAT

    AD2

    U3AT89C51

    9

    1819

    202930

    31

    40

    12345678

    2122232425262728

    1011121314151617

    3938373635343332

    RST

    XTAL2XTAL1

    GN

    DPSEN

    ALE/PROG

    EA/VPP

    VC

    C

    P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7

    P2.0/A8P2.1/A9

    P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15

    P3.0/RXDP3.1/TXD

    P3.2/INT0P3.3/INT1

    P3.4/T0P3.5/T1

    P3.6/WRP3.7/RD

    P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7

    AD5

    G

    A

    BCD2

    VCC

    150

    VCC

    GIAM

    33P

    VCC

    AD7

    AD5

    A

    U4

    74LS47

    7126

    453

    1312111091514

    168

    D0D1D2D3

    BI/R

    BO

    RB

    ILT

    ABCDEFG

    VC

    CG

    ND

    AD1

    LED6A1015

    E

    B

    C

    150

  • S mch hin th

    S mch x l

    II. Lu gii thut.

    BEGIN

    MAIN

    BT BIN HN GI

    BEGIN

    LCALL ENABLE_RTC

    LCALL

  • ENABLE_RTC

    CHN THANH GHI TRONG RTC

    DOC_DATA

    CHN GI TR THCH HP GHI VO THANH

    GHI TRONG VXL

    CHN NH CHA GI TR GI PHT GIY TRONG VXL

    LY GI TR GI PHT GIY T RTC

    A VO VXL

    HEX_BCD

    CHUYN 10 VO THANH GHI B

    LY A CHIA B

    BYTE THP L GI TR HNG N V

    BYTE CAO L GI TR HNG CHC

    CHUYN VO RTC QUA THANH GHI R0 CA VXL

    CHUYN TNG NH CHA GI,PHT,GIY

    VO THANH GHI A

    HIN TH

    CHN LED 1

    ORL VI GI TR THCH HP BT

    LED

    LED K TIP

    NGT

    HIN TH 1

  • S S S S S S S S

    P3.2=0LOOP1

    P3.2=0

    HIN TH 1

    THOT NGT

    P3.3=0

    P3.4=0

    P3.5=0

    TNG GI TR PHT

    GIM GI TR PHT

    CHUYN 1 TNG GI TR PHT

    P3.3=0

    A=0 TNG PHT A=60

    INC A

    HEX_TO_BCD

    LOOP 1 GIM GI TR PHT

    P3.4=0

    A=59 GIM PHT A=0

  • S S S S S

    TNG GI TR GI

    P3.3=0

    A=0 TNG GI A=24

    INC A

    HEX_TO_BCD

    LOOP 2 GIM GI TR GI

    P3.4=0

    A=23 GIM GI A=0

    DEC A

    HEX_TO_BCD

  • S S S S S

    CHUYN 1

    P3.5=0

    A=0 RETURN1

    LOOP 2

    R2=0

    LOOP 2

    P3.2=0

    HIN TH 2

    THOT NGT

    P3.3=0

    P3.4=0

    P3.5=0

    TNG GI TR GI

    GIM GI TR GI

    CHUYN2

    CHUYN 2

    P3.5=0 LOOP 1

  • S III. Chng trnh. $MOD51 ORG 00H LJMP MAIN ORG 03H LJMP NGAT ORG 30H MAIN: MOV R3,#1 ;BIEN HEN GIO CHAN LE BEGIN: LCALL ENABLE_RTC LED5 BIT P1.1 LED6 BIT P1.0 MOV IE,#81H MOV R2,#0 MOV 20H,#0 ;O NHO CHUA GIAY MOV 21H,#0 ;O NO CHUA PHUT MOV 22H,#0 ;O NHO CHUA GIO MOV 23H,#0 ;O NHO DON VI CUA GIAY MOV 24H,#0 ;O NHO CHUC CUA GIAY MOV 25H,#0 ;O NHO DON VI CUA PHUT MOV 26H,#0 ;O NHO CHUC CUA PHUT MOV 27H,#0 ;O NHO DON VI CUA GIO MOV 28H,#0 ;O NHO CHUC CUA GIO LCALL DOC_DATA ;LCALL CHOPTAT ;2 LED DON CHOP TAT THEO NHIP GIAY LCALL HEX_BCD LCALL HIEN_THI SJMP BEGIN ;****************************************** DOC_DATA: MOV R0,#0 MOV R1,#20H X12: MOVX A,@R0 MOV @R1,A MOV R7,#0 MOV R7,20H ;****************************************** ;DOAN CHUONG TRINH DE HEN GIO ;****************************************** CJNE R3,#00,GIO_CHAN LJMP GIO_LE GIO_CHAN: CJNE R7,#00,THOAT_1 MOV R7,#00 MOV R7,21H

    CJNE R7,#00,THOAT_1 MOV R7,#00

    A=0 RETURN2

    R2=0

  • MOV R7,22H CJNE R7,#22,AA LJMP CHUONG_CHAN AA: CJNE R7,#20,BB LJMP CHUONG_CHAN BB: CJNE R7,#18,CC LJMP CHUONG_CHAN CC: CJNE R7,#16,DD LJMP CHUONG_CHAN DD: CJNE R7,#14,EE LJMP CHUONG_CHAN EE: CJNE R7,#12,FF LJMP CHUONG_CHAN FF: CJNE R7,#10,GG LJMP CHUONG_CHAN GG: CJNE R7,#8,HH LJMP CHUONG_CHAN HH: CJNE R7,#6,THOAT LJMP CHUONG_CHAN X11: LJMP X12 THOAT_1: LJMP THOAT GIO_LE: MOV R7,#00 MOV R7,22H CJNE R7,#21,II LJMP CHUONG_LE II: CJNE R7,#19,JJ LJMP CHUONG_LE JJ: CJNE R7,#17,KK LJMP CHUONG_LE KK: CJNE R7,#15,LL LJMP CHUONG_LE LL: CJNE R7,#13,MM LJMP CHUONG_LE MM: CJNE R7,#11,NN LJMP CHUONG_LE NN: CJNE R7,#9,OO LJMP CHUONG_LE OO: CJNE R7,#7,THOAT CHUONG_LE: ;GIO LE THI BAO CHUONG LE CLR P1.3 LCALL DELAY_CHUONG ;THOI GIAN CHUONG REO SETB P1.3

    MOV R3,#1 LJMP THOAT CHUONG_CHAN: ;GIO CHAN THI BAO CHUONG CHAN CLR P1.4 LCALL DELAY_CHUONG ;THOI GIAN CHUONG REO SETB P1.4

    MOV R3,#00 ;************************************************* THOAT: INC R0 INC R0

  • INC R1 CJNE R0,#06,X11 RET ;******************************************** ENABLE_RTC: MOV R0,#0AH MOV A,#0AFH MOVX @R0,A MOV R0,#0BH MOV A,#0EH MOVX @R0,A RET ;******************************************** ;DOAN CHUONG TRINH DOC TU RTC VAO VXL ;******************************************** DOC: MOV R0,#0 MOV R1,#20H X1: MOVX A,@R0 MOV @R1,A INC R0 INC R0 INC R1 CJNE R0,#06,X1 RET ;********************************************* ;********************************************* ;CHUYEN TU SO HEX SANG BCD ;********************************************* HEX_BCD: MOV A,20H MOV B,#10 DIV AB MOV 23H,B MOV 24H,A MOV A,21H MOV B,#10 DIV AB MOV 25H,B MOV 26H,A MOV A,22H MOV B,#10 DIV AB MOV 27H,B MOV 28H,A RET ;********************************************* ;********************************************* ;DOAN CHUONG TRINH QUET LED ;********************************************* HIEN_THI: MOV A,23H ORL A,#0F0H MOV P2,A CLR LED6

  • SETB LED5 LCALL DELAY MOV A,24H ORL A,#0F0H MOV P2,A CLR LED5 SETB LED6 LCALL DELAY MOV A,25H ORL A,#70H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,26H ORL A,#0B0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,27H ORL A,#0D0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,28H ORL A,#0E0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY RET ;*************************************************** ;*************************************************** ;DOAN CHUONG TRINH NGAT DE CHINH GIO PHUT ;CO LONG VAO CHUONG TRINH CHON LED DE LED NHAP NHAY ;*************************************************** NGAT: MOV R0,#0BH MOV A,#80H MOVX @R0,A LCALL HIEN_THI1 JNB P3.2,NGAT LOOP1: LCALL HIEN_THI1 JNB P3.2,THOAT_NGAT JNB P3.3,TANG_GIATRI_PHUT JNB P3.4,GIAM_GIATRI_PHUT JNB P3.5,CHUYEN1 LJMP LOOP1 THOAT_NGAT: LCALL HIEN_THI JNB P3.2,THOAT_NGAT MOV R0,#0 MOV A,20H

  • MOVX @R0,A LCALL HEX_BCD LCALL HIEN_THI MOV R0,#0AH MOV A,#0AFH MOVX @R0,A MOV R0,#0BH MOV A,#0EH MOVX @R0,A RETI CHUYEN1: LCALL HIEN_THI JNB P3.5,CHUYEN1 INC R2 MOV A,R2 CJNE A,#2,RETURN MOV R2,#0 RETURN: LJMP LOOP2 TANG_GIATRI_PHUT: LCALL HIEN_THI MOV A,21H INC A CJNE A,#60,CONT_1 MOV A,#0 CONT_1: MOV 21H,A MOV R0,#2 MOVX @R0,A LCALL HEX_BCD LJMP LOOP1 GIAM_GIATRI_PHUT: LCALL HIEN_THI MOV A,21H CJNE A,#0,CONT_3 MOV A,#60 CONT_3: DEC A MOV 21H,A MOV R0,#2 MOVX @R0,A LCALL HEX_BCD LJMP LOOP1 LOOP2: LCALL HIEN_THI2 JNB P3.2,THOAT_NGAT JNB P3.3,TANG_GIATRI_GIO JNB P3.4,GIAM_GIATRI_GIO JNB P3.5,CHUYEN2 LJMP LOOP2 CHUYEN2: LCALL HIEN_THI2 JNB P3.5,CHUYEN2 INC R2 MOV A,R2 CJNE A,#2,RETURN2

  • MOV R2,#0 RETURN2: LJMP LOOP1 TANG_GIATRI_GIO: LCALL HIEN_THI MOV A,22H INC A CJNE A,#24,CONT_22 MOV A,#0 CONT_22: MOV 22H,A MOV R0,#4 MOVX @R0,A LCALL HEX_BCD LJMP LOOP2 GIAM_GIATRI_GIO: LCALL HIEN_THI MOV A,22H CJNE A,#0,CONT_42 MOV A,#24 CONT_42: DEC A MOV 22H,A MOV R0,#4 MOVX @R0,A LCALL HEX_BCD LJMP LOOP2 ;************************************************** ;************************************************** ;DOAN CHUONG TRINH LAM CHO PHUT CHOP TAT ;************************************************** HIEN_THI1: MOV A,23H ORL A,#0F0H MOV P2,A CLR LED6 SETB LED5 LCALL DELAY MOV A,24H ORL A,#0F0H MOV P2,A CLR LED5 SETB LED6 LCALL DELAY MOV A,25H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY LCALL PHUTTAT MOV A,26H ORL A,#0F0H

  • MOV P2,A SETB LED6 SETB LED5 LCALL DELAY LCALL PHUTTAT MOV A,27H ORL A,#0D0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,28H ORL A,#0E0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY LCALL DELAY_THOIGIANLEDSANG RET PHUTTAT: MOV A,23H ORL A,#0F0H MOV P2,A CLR LED6 SETB LED5 LCALL DELAY MOV A,24H ORL A,#0F0H MOV P2,A CLR LED5 SETB LED6 LCALL DELAY MOV A,25H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,26H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,27H ORL A,#0D0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY

  • MOV A,28H ORL A,#0E0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY RET ;*********************************************** ;*********************************************** ;DOAN CHUONG TRINH LAM CHO GIO CHOP TAT ;*********************************************** HIEN_THI2: MOV A,23H ORL A,#0F0H MOV P2,A CLR LED6 SETB LED5 LCALL DELAY MOV A,24H ORL A,#0F0H MOV P2,A CLR LED5 SETB LED6 LCALL DELAY MOV A,25H ORL A,#70H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,26H ORL A,#0B0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,27H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY LCALL GIOTAT MOV A,28H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY LCALL GIOTAT LCALL DELAY_THOIGIANLEDSANG

  • RET GIOTAT: MOV A,23H ORL A,#0F0H MOV P2,A CLR LED6 SETB LED5 LCALL DELAY MOV A,24H ORL A,#0F0H MOV P2,A CLR LED5 SETB LED6 LCALL DELAY MOV A,25H ORL A,#70H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,26H ORL A,#0B0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,27H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY MOV A,28H ORL A,#0F0H MOV P2,A SETB LED6 SETB LED5 LCALL DELAY RET ;************************************************** ;;************************************************* ;DOAN CHUONG TRINH DE 2LED DON CHOP TAT ;************************************************** CHOPTAT: CLR P1.2 LCALL DELAY_CHOPTAT SETB P1.2 LCALL DELAY_CHOPTAT RET ;**************************************************

  • ;************************************************** ;DOAN CHUONG TRINH DELAY 2.5MS DE QUET LED ;************************************************** DELAY: PUSH 00H PUSH 01H MOV R1,#5 DEL: MOV R0,#250 DJNZ R0,$ DJNZ R1,DEL POP 01H POP 00H RET ;************************************************** ;************************************************** ;DOAN CHUONG TRINH TAO THOI GIAN BAT CHUONG BAO LAU ;************************************************** DELAY_CHUONG: MOV R7,#250 LAP3: MOV R6,#250 ;LCALL CHOPTAT LCALL DOC LCALL HEX_BCD LCALL HIEN_THI DJNZ R6,$ DJNZ R7,LAP3 RET ;*************************************************** DELAY_THOIGIANLEDSANG: MOV R7,#5 LAP1: MOV R6,#10 LCALL DOC LCALL HEX_BCD LCALL HIEN_THI DJNZ R6,$ DJNZ R7,LAP1 RET ;************************************************** DELAY_CHOPTAT: MOV R7,#36 LAP2: MOV R6,#100 LCALL DOC LCALL HEX_BCD LCALL HIEN_THI DJNZ R6,$ DJNZ R7,LAP2 RET

    END

    III. Phn 3: Phn kt

  • I. Ti liu tham kho: - Gio trnh Vi X L(trng H CNTP.HCM)-Phm Quang Tr. - www.diendandientu.com.vn - www.alldatasheet.com

    II. Li kt: Lm c mt sn phm thc t v c gi tr th tht l thch th.Mt ln na em xin cm n cc thy c gio khoa c-in t v thy Trn Nguyn Bo Trn rt nhiu. chc cc thy c di do sc kho v lun l ngn uc sng ch dn cho chng em trn con ng pha trc.