Chuong 11_Lap Trinh Ngat - Smith.N Studio

Embed Size (px)

Citation preview

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    1/18

    Ch-ng 11

    Lp trnh cc ngt

    Mt ngt l mt s kin bn trong hoc bn ngoi lm ngt b vi iu khin bo cho n bit rng thit b cn dch v ca n. Trong ch-ng ny ta tm hiu

    khi nim ngt v lp trnh ngt.11.1 Cc ngt ca 8051.11.1.1 Cc ngt ng-c vi thm d.

    Mt b vi iu khin c th phc v mt vi thit b, c hai cch thc hiniu ny l s dng cc ngt v thm d (polling). Trong ph-ng php s dngcc ngt th mi khi c mt thit b bt k cn n dch v ca n th n bao cho bvi iu khin bng cch gi mt tn hiu ngt. Khi nhn -c tn hiu ngt th b viiu khin ngt tt c nhng g n ang thc hin chuyn sang phc v thit b.Ch-ng trnh i cng vi ngt -c gi l trnh dch v ngt ISR (Interrupt ServiceRoutine) hay cn gi l trnh qun l ngt (Interrupt handler). Cn trong ph-ngphp thm d th b vi iu khin hin th lin tc tnh trng ca mt thit b chov iu kin tho mn th n phc v thit b. Sau n chuyn sang hin th tnhtrng ca thit b k tip cho n khi tt c u -c phc v. Mc d ph-ng phpthm d c th hin th tnh trng ca mt vi thit b v phc v mi thit b khi cciu kin nht nh -c tho mn nh-ng n khng tn dng ht cng dng ca bvi iu khin. im mnh ca ph-ng php ngt l b vi iu khin c th phc v-c rt nhiu thit b (tt nhin l khng ti cng mt thi im). Mi thit b cth nhn -c s ch ca b vi iu khin da trn mc -u tin -c gn cho n.i vi ph-ng php thm d th khng th gn mc -u tin cho cc thit b v nkim tra tt c mi thit b theo kiu hi vng. Quan trng hn l trong ph-ng phpngt th b vi iu khin cng cn c th che hoc lm l mt yu cu dch v ca

    thit b. iu ny li mt ln na khng th thc hin -c trong ph-ng php thmd. L do quan trng nht l ph-ng php ngt -c -u chung nht l v ph-ngphp thm d lm lng ph thi gian ca b vi iu khin bng cch hi d tng thitb k c khi chng khng cn n dch v. Nhm trnh .. th ng-i ta s dngph-ng php ngt. V d trong cc b nh thi -c bn n ch-ng 9 ta dnglnh JNB TF, ch v i cho n khi b nh thi quay tr v 0. Trong v d ,trong khi ch i th ta c th lm vic -c g khc c ch hn, chng hn nh- khis dng ph-ng php ngt th b vi iu khin c th i lm cc vic khc v khi cTF bt ln n s ngt b vi iu khin cho d n ang lm bt k iu g.11.1.2 Trnh phc v ngt.

    i vi mi ngt th phi c mt trnh phc v ngt ISR hay trnh qun l

    ngt. khi mt ngt -c gi th b vi iu khin phc v ngt. Khi mt ngt -c gith b vi iu khin chy trnh phc v ngt. i vi mi ngt th c mt v tr cnh trong b nh gi a ch ISR ca n. Nhm cc v tr nh -c dnh ring gi cc a ch ca cc ISR -c gi l bng vc t ngt (xem hnh 11.1).11.1.3 Cc b-c khi thc hin mt ngt.

    Khi kch hot mt ngt b vi iu khin i qua cc b-c sau:1. N kt thc lnh ang thc hin v l-u a ch ca lnh k tip (PC) vo ngn

    xp.

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    2/18

    2. N cng l-u tnh trng hin ti ca tt c cc ngt vo bn trong (ngha l khngl-u vo ngn xp).

    3. N nhy n mt v tr c nh trong b nh -c gi l bng vc t ngt ni l-ugi a ch ca mt trnh phc v ngt.

    4. B vi iu khin nhn a ch ISR t bng vc t ngt v nhy ti . N bt uthc hin trnh phc v ngt cho n lnh cui cng ca ISR l RETI (tr v t

    ngt).5. Khi thc hin lnh RETI b vi iu khin quay tr v ni n b ngt. Tr-c htn nhn a ch ca b m ch-ng trnh PC t ngn xp bng cch ko hai bytetrn nh ca ngn xp vo PC. Sau bt u thc hin cc lnh t a ch .

    L-u b-c 5 n vai tr nhy cm ca ngn xp, v l do ny m chng taphi cn thn khi thao tc cc ni dung ca ngn xp trong ISR. c bit trong ISRcng nh- bt k ch-ng trnh con CALL no s ln y vo ngn xp (Push) v sln ly ra t n (Pop) phi bng nhau.11.1.4 Su ngt trong 8051.

    Thc t ch c 5 ngt dnh cho ng-i dng trong 8051 nh-ng nhiu nh snxut -a ra cc bng d liu ni rng c su ngt v h tnh c lnh ti thit lp li

    RESET. Su ngt ca 8051 -c phn b nh- sau:1. RESET: Khi chn RESET -c kch hot t8051 nhy v a ch 0000. y l

    a ch bt li ngun -c bn ch-ng 4.2. Gm hai ngt dnh cho cc b nh thi:1 cho Timer0 v 1 cho Timer1. a ch

    ca cc ngt ny l 000B4 v 001B4 trong bng vc t ngt dnh cho Timer0 vTimer1 t-ng ng.

    3. Hai ngt dnh cho cc ngt phn cng bn ngoi chn 12 (P3.2) v 13 (P3.3) cacng P3 l cc ngt phn cng bn ngoi INT0 v INT1 t-ng ng. Cc ngtngoi cng cn -c coi nh-EX1 v EX2 v tr nh trong bng vc t ngt cacc ngt ngoi ny l 0003H v 0013H gn cho INT0 v INT1 t-ng ng.

    4. Truyn thng ni tip c mt ngt thuc v c thu v pht. a ch ca ngt nytrong bng vc t ngt l 0023H.Ch rng trong bng 11.1 c mt s gii hn cc byte dnh ring cho mi

    ngt. V d, i vi ngt INT0 ngt phn cng bn ngoi 0 th c tng cng l 8 bytet a ch 0003H n 000AH dnh cho n. T-ng t nh- vy, 8 byte t a ch000BH n 0012H l dnh cho ngt b nh thi 0 l TI0. Nu trnh phc v ngt imt vi mt ngt cho m ngn t va khng gian nh -c. Nu khng vath mt lnh LJMP-c t vo trong bng vc t ngt ch n a ch ca ISR, tr-ng hp ny th cc byte cn li -c cp cho ngt ny khng dng n. D-i yl cc v d v lp trnh ngt minh ho cho cc iu trnh by trn y.

    T bng 11.1 cng thy mt thc t rng ch c 3 byte ca khng gian b

    nh ROM -c gn cho chn RESET. l nhng v tr a ch 0, 1 v 2 ca ROM.V tr a ch3 thuc v ngt phn cng bn ngoi 0 vi l do ny trong ch-ng trnhchng ta pha t lnh LJMPnh- l lnh u tin v h-ng b x l lnh khi bngvc t ngt nh- ch ra trn hnh 11.1.

    Bng 11.1: Bng vc t ngt ca 8051.

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    3/18

    Ngt a ch ROM ChnBt li ngun (RESET) 0000 9Ngt phn cng ngoi (INT0) 0003 12 (P3.2)Ngt b Timer0 (TF0) 000BNgt phn cng ngoi 1 (INT1) 0013 13 (P3.3)Ngt b Timer1 (TF1) 001B

    Ngt COM ni tip (RI v TI) 0023

    11.1.5 Cho php v cm ngt.Khi bt li ngun th tt c mi ngt u b cm (b che) c ngha l khng c

    ngt no s -c b vi iu khin p ng nu chng -c kch hot. Cc ngt phi-c kch hot bng phn mm b vi iu khin p ng chng. C mt thanh ghi-c gi l cho php ngt IE (Interrupt Enable) chu trch nhim v vic cho php(khng che) v cm (che) cc ngt. Hnh 11.2 trnh by thanh ghi IE, l-u rng IE lthanh ghi c th nh a ch theo bt.

    T hnh 11.2 ta thy rng D7 ca thanh ghi IE -c gi l bt cho php tt c

    cc ngt EA (Euable All). Bt ny phi -c thit lp ln 1 phn cn li ca thanhghi hot ng -c. Bt D6 ch-a -c s dng. Bt D54 -c dnh cho 8051, cn btD4 dng cho ngt ni tip v.v11.1.6 Cc b-c khi cho php ngt.

    cho php mt ngt ta phi thc hin cc b-c sau:1. Bt D7 ca thanh ghi IE l EA phi -c bt ln cao cho php cc bt cn li

    ca thanh ghi nhn -c hiu ng.2. Nu EA=1 th tt c mi ngt u -c php v s -c p ng nu cc bt

    t-ng ng ca chng trong IE c mc cao. Nu EA= 0 th khng c ngt no s-c p ng cho d bt t-ng ng ca n trong IE c gi tr cao.

    hiu im quan trong ny hy xt v d 11.1.

    Hnh 11.2: Thanh ghi cho php ngt IE.

    EA IE.7 Nu EA= 0 th mi ngt b cmNu EA = 1 th mi ngun ngt -c cho php hoc b cm

    bng cc bt hoc xo bt cho php ca n.-- IE.6 D phng cho t-ng laiET2 IE.5 Cho php hoc cm ngt trn hoc thu ca Timer2 (8051)

    ES IE.4 Cho php hoc cm ngt cng ni tipET1 IE.3 Cho php hoc cm ngt trn ca Timer1EX1 IE.2 Cho php hoc cm ngt ngoi 1ET0 IE.1 Cho php hoc cm ngt trn ca Timer0EX0 IE.0 Cho php hoc cm ngt ngoi 0* Ng-i dng khng phi ghi 1 vo bt d phng ny. Bt ny c th dng cho

    cc b vi iu khin nhanh vi c tnh miV d 11.1:

    EA -- ET2 ES ET1 EX1 ET0 EX0

    D0D7

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    4/18

    Hy ch ra nhng lnh a) cho php ngt ni tip ngt Timer0 v ngt phncng ngoi 1 (EX1) v b) cm (che) ngt Timer0 sau c) trnh by cch cm tt cmi ngt ch bng mt lnh duy nht.Li gii:a) MOV IE, #10010110B ; Cho php ngt ni tip, cho php ngt Timer0 v cho php ngt phn cng ngoi.

    V IE l thanh ghi c th nh a ch theo bt nn ta c th s dng cc lnh

    sau y truy cp n cc bt ring r ca thanh ghi:

    SETB IE.7 ; EA = 1, Cho php tt c mi ngtSETB IE.4 ; Cho php ngt ni tipSETB IE.1 ; Cho php ngt Timer1SETB IE.2 ; Cho php ngt phn cng ngoi 1

    (tt c nhng lnh ny t-ng -ng vi lnh MOV IE, #10010110B trn y).

    b) CLR IE.1 ; Xo (che) ngt Timer0c) CLR IE.7 ; Cm tt c mi ngt.

    11.2 Lp trnh cc ngt b nh thi.Trong ch-ng 9 ta ni cch s dng cc b nh thi Timer0 v Timer1

    bng ph-ng php thm d. Trong phn ny ta s s dng cc ngt lp trnh chocc b nh thi ca 8051.11.2.1 C quay v 0 ca b nh thi v ngt.

    Trong ch-ng 9 chng ta ni rng c b nh thi TF -c t ln cao khib nh thi t gi tr cc i v quay v 0 (Roll - over). Trong ch-ng trnh nychng ta cng ch ra cch hin th c TF bng lnh JNB TF, ch. Khi thm d cTF th ta phi i cho n khi c TF -c bt ln. Vn vi ph-ng php ny l bvi iu khin b tri buc khi c TF -c bt ln v khng th lm -c bt k vic

    g khc. S dng cc ngt gii quyt -c vn ny v trnh -c s tri buc cab vi iu khin. Nu b ngt nh thi trong thanh ghi IE -c php th mi khi nquay tr v 0 c TF -c bt ln v b vi iu khin b ngt ti bt k vi c g nang thc hin v nhy ti bng vc t ngt phc v ISR. Bng cch ny th b viiu khin c th lm nhng cng vic khc cho n khi no n -c thng bo rngb nh thi quay v 0. Xem hnh 11.3 v v d 11.2.

    Hnh 11.3: Ngt b nh thi TF0 v TF1.Hy nhng im ch-ng trnh d-i y ca ch-ng trnh trong v d 11.2.

    1. Chng ta phi trnh s dng khng gian b nh dnh cho bng vc t ngt. Dovy, ta t tt c m khi to ti a ch 30H ca b nh. Lnh LJMPl lnh u

    1 000BH

    TF0

    Jumps to

    Timer 0 Interruptor

    1 001BH

    TF1

    Jumps to

    Timer 1 Interruptor

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    5/18

    tin m 8051 thc hin khi n -c cp ngun. Lnh LJMP li b iu khintrnh khi bng vc t ngt.

    2. Trnh phc v ISR ca b Timer0 -c t trong b nh bt u t a ch000BH v v n qu nh cho vo khng gian nh dnh cho ngt ny.

    3. Chng ta cho php ngt b Timer0 vi lnh MOV IE, #1000 010H trongch-ng trnh chnh MAIN.

    4. Trong khi d liu cng P0 -c nhn vo v chuyn lin tc sang cng vic P1th mi khi b Timer0 tr v 0, c TF0 -c bt ln v b vi iu khin thot rakhi vng lp BACK v i n a ch 000BH thc hin ISR gn lin vi bTimer0.

    5. Trong trnh phc v ngt ISR ca Timer0 ta thy rng khng cn n lnh CLRTF0 tr-c khi lnh RETI. L do ny l v 8051xo c TF bn trong khi nhyn bng vc t ngt.

    V d 11.2:Hy vit ch-ng trnh nhn lin tc d liu 8 bt cng P0 v gi n n

    cng P1 trong khi n cng lc to ra mt sng vung chu k 200ms trn chn P2.1.Hy s dng b Timer0 to ra sng vung, tn s ca 8051 l XTAL =11.0592MHz.Li gii:

    Ta s dng b Timer0 ch 2 (t ng np li) gi tr np cho TH0 l100/1.085ms = 92.

    ; - - Khi khi to vo chng trnh main trnh dng khng gian.; a ch dnh cho bng vc t ngt.

    ORG 0000HCPL P2.1 ; Nhy n bng vc t ngt.

    ;; - - Trnh ISR dnh cho Timer0 to ra sng vung.

    ORG 0030H ; Ngay sau a ch bng vc-t ngtMAIN: TMOD, #02H ; Chn b Timer0, ch 2 t np li

    MOV P0, #0FFH ; Ly P0 lm cng vo nhn d liuMOV TH0, # - 92 ; t TH0 = A4H cho 92MOV IE, #82H ; IE = 1000 0010 cho php Timer0SETB TR0 ; Khi ng b Timer0

    BACK: MOV A, P0 ; Nhn d liu vo t cng P0MOV P1, A ; Chuyn d liu n cng P1SJMP BACK ; Tip tc nhn v chuyn d liu

    ; Chng no b ngt bi TF0END

    Trong v d 11.2 trnh phc v ngt ISR ngn nn n c th t va vo

    khng gian a ch dnh cho ngt Timer0 trong bng vc t ngt. Tt nhin khngphi lc no cng lm -c nh- vy. Xt v d 11.3 d-i y.V d 11.3:

    Hy vit li ch-ng trnh v d 11.2 to sng vung vi mc cao ko di1085ms v mc thp di 15ms vi gi thit tn s XTAL = 11.0592MHz. Hy sdng b nh thi Timer1.Li gii:

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    6/18

    V 1085ms l 1000 1085ms nn ta cn s dng ch 1 ca b nh thiTimer1.

    ; - - Khi khi to trnh s dng khng gian dnh cho bng vc t ngt.ORG 0000HLJMP MAIN ; Chuyn n bng vc t ngt.

    ;; - - Trnh ISR i vi Timer1 to ra xung vung

    OR6 001BH ; a ch ngt ca Timer1 trong bng vc t ngtLJMP ISR-T1 ; Nhy n ISR

    ;; - - Bt u cc chng trnh chnh MAIN.

    ORG 0030H ; Sau bng vc t ngtMAIN: MOV TMOD, #10H ; Chn Timer1 ch 1

    MOV P0, #0FFH ; Chn cng P0 lm u vo nhn d liuMOV TL1, #018H ; t TL1 = 18 byte thp ca - 1000MOV TH1, #0FCH ; t TH1 = FC byte cao ca - 1000MOV IE, #88H ; IE = 10001000 cho php ngt Timer1SETB TR1 ; Khi ng b Timer1

    BACK: MOV A, P0 ; Nhn d liu u vo cng P0MOV P1, A ; Chuyn d liu n P1SJMP BACK ; Tip tc nhn v chuyn d liu

    ;; - - Trnh ISR ca Timer1 phi c np li v ch 1ISR-T1: CLR TR1 ; Dng b Timer1

    CLR P2.1 ; P2.1 = 0 bt u xung mc thpMOV R2, #4 ; 2 chu k my MC (Machine Cycle)

    HERE: DJNZ R2, HERE ; 4 2 MC = 8 MCMOV TL1, #18H ; Np li byte thp gi tr 2 MCMOV TH1, #0FCH ; Np li byte cao gi tr 2 MCSETB TR1 ; Khi ng Timer1 1 MCSETB P2.1 ; P2.1 = 1 bt P2.1 tr li caoRETI ; Tr v chng trnh chnhEND

    L-u rng phn xung mc thp -c to ra bi 14 chu k mc MC v miMC =1.085ms v 141.085ms =15.19ms.V d 11.4:

    Vit mt ch-ng trnh to ra mt sng vung tn s50Hz trn chn P1.2.V d ny t-ng t v d 9.12 ngoi tr ngt Timer0, gi sXTAL =11.0592MHz.Li gii:

    ORG 0LJMP MAINORG 000BH ; Chng trnh con phc v ngt cho Timer0CPL P1.2MOV TL0, # 00MOV TH0, # 0DCHRETIORG 30H

    ; ------------ main program for initializationMAIN: MOV TMOD, # 00000001B ; Chn Timer0 ch 1

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    7/18

    MOV TL0, # 0DCHMOV IE, # 82H ; Cho php ngt Timer0SETB TR0

    HERE: SJMP HEREEND

    11.3 Lp trnh cc ngt phn cng bn ngoi.B vi iu khin 8051 c hai ngt phn cng bn ngoi l chn 12 (P3.2) v

    chn 13 (P3.3) dng cho ngt INT0 v INT1. Khi kch hot nhng chn ny th 8051b ngt ti bt k cng vic no m n ang thc hin v n nhy n bng vc tngt thc hin trnh phc v ngt.

    11.3.1 Cc ngt ngoi INT0 v INT1.Ch c hai ngt phn cng ngoi trong 8051 l INT0 v INT1. Chng -c b

    tr trn chn P3.2 v P3.3 v a ch ca chng trong bng vc t ngt l 0003H v0013H. Nh- ni mc 11.1 th chng -c ghp v b cm bng vic s dngthanh ghi IE. Vy chng -c kch hot nh- th no? C hai mc kch hot cho ccngt phn cng ngoi: Ngt theo mc v ngt theo s-n. D-i y l m t hotng ca mi loi.11.3.2 Ngt theo mc.

    ch ngt theo mc th cc chn INT0 v INT1 bnh th-ng mc cao(ging nh- tt c cc chn ca cng I/O) v nu mt tn hiu mc thp -c cp tichng th n ghi nhn ngt. Sau b vi iu khin dng tt c mi cng vic n

    P1.2

    8051

    50Hz square ware

    IE0(TCON.1)

    INTO(Pin 3.2)

    Level - tringgered

    Edge - triggered

    0003ITO0

    1

    IE0(TCON.3)

    INTO(Pin 3.3)

    Level - tringgered

    Edge - triggered

    0013IT10

    1

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    8/18

    ang thc hin v nhy n bng vc t ngt phc v ngt. iu ny -c gi lngt -c kch hot theo mc hay ngt theo mc v l ch ngt mc nh khi cpngun li cho 8051. Tn hiu mc thp ti chn INT phi -c lu i tr-c khi thchin lnh cui cng ca trnh phc v ngt RETI, nu khng mt ngt khc s li-c to ra. Hay ni cch khc, nu tn hiu ngt mc thp khng -c ly i khiISR kt thc th n khng th hin nh- mt ngt khc v 8051 nhy n bng vc t

    ngt thc hin ISR. Xem v d 11.5.V d 11.5.Gi s chn INT1 -c ni n cng tc bnh th-ng mc cao. Mi khi n

    xung thp phi bt mt n LED. n LED -c ni n chn P1.3 v bnh th-ng ch tt. Khi n -c bt ln n phi sng vi phn trm giy. Chng no cngtc -c n xung thp n LED phi sng lin tc.Li gii:

    ORG 0000HLJMP MAIN ; Nhy n bng vc t ngt

    ; - - Chng trnh con ISR cho ngt cng INT1 bt n LED.

    ORG 0013H ; Trnh phc v ngt ISR cho INT1SETB P1.3 ; Bt n LEDMOV R3, # 255 ;

    BACK: DJNZ R3, BACK ; Gi n LED sng mt lcCLR P1.3 ; Tt n LEDRETI ; Tr v t ISR

    ; - - Bt u chng trnh chnh Main.ORG 30H

    MAIN: MOV IE, #10000100B ; Cho php ngt diSJMP HERE ; Ch y cho n khi c ngt

    ENDn cng tc xung s lm cho n LED sng. Nu n -c gi trng thi

    -c kch hot th n LED sng lin tc.

    Trong ch-ng trnh ny b vi iu khin quay vng lin tc trong vng lpHERE. Mi khi cng tc trn chn P3.3 (INT1) -c kch hot th b vi iu khinthot khi vng lp v nhy n bng vc t ngt ti a ch 0013H. Trnh ISR choINT1 bt n LED ln gi n mt lc v tt n tr-c khi tr v. Nu trong lc nthc hin lnh quay tr v RET1 m chn INT1 vn cn mc thp th b vi iukhin khi to li ngt. Do vy, gii quyt vn ny th chn INT1 phi -c-a ln cao ti thi im lnh RET1 -c thc hin.11.3.3 Trch mu ngt theo mc.

    INTI

    8051

    P1.3to

    LED

    Vcc

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    9/18

    Cc chn P3.2 v P3.3 bnh th-ng -c dng cho vo - ra nu cc bt INT0v INT1 trong thanh ghi IE khng -c kch hot. Sau khi cc ngt phn cng trongthanh gi IE -c kch hot th b vi iu khin duy tr trch mu trn chn INTn ivi tn hiu mc thp mt ln trong mt chu trnh my. Theo bng d liu ca nhsn xut ca b vi iu khin th chn ngt phi -c gi mc thp cho n khibt u thc hin trnh phc v ngt ISR. Nu chn INTn -c -a tr li mc cao

    tr-c khi bt u thc hin ISR th s chng c ngt no xy ra. Tuy nhin trongqu trnh kch hot ngt theo mc thp nn n li phi -a ln mc cao tr-c khithc hin lnh RET1 v li theo bng d liu ca nh sn xut th nu chn INTnvn mc thp sau lnh RETI ca trnh phc v ngt th mt ngt khc li s -ckch hot sau khi lnh RET1 -c thc hin. Do vy, bo m vic kch hotngt phn cng ti cc chn INTn phi khng nh rng thi gian tn ti tn hiu mcthp l khong 4 chu trnh my v khng -c hn. iu ny l do mt thc t lngt theo mc khng -c cht. Do vy chn ngt phi -c gi-a mc thp chon khi bt u thc hin ISR.

    Hnh 11.5: Thi gian ti thiu ca ngt theo mc thp (XTAL =

    11.0592MHz)11.3.4 Cc ngt theo s-n.

    Nh- ni tr-c y trong qu trnh bt li ngun th 8051 lm cc chnINT0 v INT1 l cc ngt theo mc thp. bin cc chn ny tr thnh cc ngttheo s-n th chng ta phi vit ch-ng trnh cho cc bt ca thanh ghi TCON. Thanhthi TCON gi cc bt c IT0 v IT1xc nh ch ngt theo s-n hay ngt theomc ca cc ngt phn cng IT0 v IT1 l cc bt D0 v D2 ca thanh ghi TCONt-ng ng. Chng c th -c biu din nh- TCON.0 v TCON.2 v thanh ghiTCON c th nh a ch theo bt. Khi bt li ngun th TCON.0 (IT0) v TCON.2(IT1) u mc thp (0) ngha l cc ngt phn cng ngoi ca cc chn INT0 v

    INT1 l ngt theo mc thp. Bng vic chuyn cc bt TCON.0 v TCON.2 ln caoqua cc lnh SETB TCON.0 v SETB TCON.2 th cc ngt phn cng ngoiINT0 v INT1 tr thnh cc ngt theo s-n. V d, lnh SETB TCON.2 lm choINT1 m -c gi l ngt theo s-n trong khi mt tn hiu chuyn t cao xungthp -c cp n chn P3.3 th tr-ng hp ny b vi iu khin s b ngt v bc-ng bc nhy n bng vc t ngt ti a ch 0013H thc hin trnh phc vngt. Tuy nhin l vi gii thit rng bt ngt -c cho php trong thanh ghi IE.

    1 chu trnh my

    1.085ms4 chu trnh my (4MC)

    41.085ms

    n chn INT0hoc INT1

    Ghi ch: Khi bt li ngun (RESET) th c hai chn INT0 v INT1 u mcthp to cc ngt ngoi theo mc.

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    10/18

    Hnh 11.6: Thanh ghi TCON. Bt TF1 hay TCON.7 l c trn ca b Timer1. N -c lp bi phn cng khi

    b m/b nh thi 1 trn, n -c xo bi phn cng khi b x l ch n trnhphc v ngt.

    Bt TR1 hay TCON.6 l bt iu khin hot ng ca Timer1. N -c thit lpv xo bi phn mm bt/tt Timer1.

    Bt TF0 hay TCON.5 t-ng t nh- TF1 dnh cho Timer0. Bt TR0 hay TCON.4 t-ng t nh- TR1 dnh cho Timer0. Bt IE1 hay TCON.3 c ngt ngoi 1 theo s-n. N -c thit lp bi CPU khi

    s-n ngt ngoi (chuyn t cao xung thp) -c pht hin. N -c xa biCPU khi ngt -c x l. L-u : C ny khng cht nhng ngt theo mc thp.

    Bt IT1 hay TCON.2 l bt iu khin kiu ngt. N -c thit lp v xo bi

    phn mm xc nh kiu ngt ngoi theo s-n xung hay mc thp. Bt IE0 hay TCON.1 t-ng t nh- IE1 dnh cho ngt ngoi 0. Bt IT0 hay TCON.0 t-ng t nh- bt IT1 dnh cho ngt ngoi 0.

    Xt v d 11.6, ch rng s khc nhau duy nht gia v d ny v v d 11.5l trong hng u tin ca MAIN khi lnh SETB TCON.2 chuyn ngt INT1 vkiu ngt theo s-n. Khi s-n xung ca tn hiu -c cp n chn INT1 th nLED s bt ln mt lc. n LED c thi gian sng ph thuc vo tr bn trongISR ca INT1. bt li n LED th phi c mt s-n xung xung khc -c cpn chn P3.3. iu ny ng-c vi v d 11.5. Trong v d 11.5 do bn cht ngttheo mc ca ngt th n LED cn sng chng no tn hiu chn INT1 vn cn mc thp. Nh-ng trong v d ny bt li n LED th xung chn INT1 phi -c-a ln cao ri sau b h xung thp to ra mt s-n xung lm kch hot ngt.V d 11.6:

    Gi thit chn P3.3 (INT1) -c ni vi mt my to xung, hy vit mtch-ng trnh trong s-n xung ca xung s gi mt tn hiu cao n chn P1.3ang -c ni ti n LED (hoc mt ci bo). Hay ni cch khc, n LED -cbt v tt cng tn s vi cc xung -c cp ti chn INT1. y l phin bn ngttheo s-n xung ca v d 11.5 trnh by trn.Li gii:

    ORG 0000HLJMP MAIN

    ; - - Trnh phc v ngt ISR dnh cho ngt INT1 bt n LEDORG 0013H ; Nhy n a ch ca trnh phc v ngt INT1SETB P1.3 ; Bt n LED (hoc ci)MOV R3, #225

    BACK: DJNZ R3, HERE ; gi n LED (hoc ci) mt lcCLR P1.3 ; Tt n LED (hoc ci)RETI ; Quay tr v t ngt

    ; - - Bt u chng trnh chnhORG 30HSETB TCON.2 ; Chuyn ngt INT1 v kiu ngt theo sn xung

    TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

    D0D7

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    11/18

    MOV IE, #10001B ; Cho php ngt ngoi INT1HERE: SJMP HERE ; Dng y cho n khi b ngt

    END

    11.3.5 Trnh mu ngt theo s-n.Tr-c khi kt thc phn ny ta cn tr li cu hi vy th ngt theo s-n -c

    trch mu th-ng xuyn nh- th no? Trong cc ngt theo s-n, ngun ngoi phigi mc cao ti thiu l mt chu trnh my na m bo b vi iu khin nhnthy -c s chuyn dch t cao xung thp ca s-n xung.

    Thi hn xung ti thiu pht hin ra cc ngt theo s-n xung vi tn sXTAL =11.0592MHz

    S-n xung ca xung -c cht bi 8051 v -c gia bi thanh ghi TCON.Cc bt TCON.1 v TCON.3 gi cc s-n -c cht ca chn INT0 v INT1 t-ngng. TCON.1 v TCON.3 cng cn -c gi l cc bt IE0 v IE1 nh- ch ra trnhnh 11.6. Chng hot ng nh- cc c ngt ang -c phc v (Interrupt -in-server). Khi mt c ngt ang -c phc v bt ln th n bo cho th gii thcbn ngoi rng ngt hin nay ang -c x l v trn chn INTn ny s khng cngt no -c p ng chng no ngt ny ch-a -c phc v xong. y ging nh-tn hiu bo bn my in thoi. Cn phi nhn mnh ht im d-i y khi quantm n cc bt IT0 v IT1 ca thanh ghi TCON.1. Khi cc trnh phc v ngt ISR kt thc (ngha l trong thanh ghi thc hin lnh

    RETI). Cc bt ny (TCON.1 v TCON.3) -c xo bo rng ngt -c hon

    tt v 8051 sn sng p ng ngt khc trn chn . ngt khc -c nhn vth tn hiu trn chn phi tr li mc cao v sau nhy xung thp -cpht hin nh- mt ngt theo s-n.

    2. Trong thi gian trnh phc v ngt ang -c thc hin th chn INTn b lm ngkhng quan tm n n c bao nhiu ln chuyn dch t cao xung thp. Trongthc t n l mt trong cc chc nng ca lnh RETI xo bt t-ng ng trongthanh ghi TCON (bt TCON.1 v TCON.3). N bo cho ta rng trnh phc vngt xp kt thc. V l do ny m cc bt TCON.1 v TCON.3 -c gi l ccc bo ngt ang -c phc v c ny s ln cao khi mt s-n xung -cpht hin trn chn INT v dng mc cao trong ton b qu trnh thc hin

    ISR. N ch b xo bi lnh RETI l lnh cui cng ca ISR. Do vy, s khngbo gi cn n cc lnh xo bt ny nh- CLR TCON.1 hay CLR TCON.3tr-c lnh RETI trong trnh phc v ngt i vi cc ngt cng INT0 v INT1.iu ny khng ng vi tr-ng hp ca ngt ni tip.

    V d 11.7:S khc nhau gia cc lnh RET v RETI l g?Gii thch ti sao ta khng

    th dng lnh RET thay cho lnh RETI trong trnh phc v ngt.Li gii:

    1.085ms

    1.085ms

    1MC

    1MC

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    12/18

    Cc hai lnh RET v RETI u thc thi cc hnh vi ging nhau l ly hai bytetrn nh ngn xp vo b m ch-ng trnh v -a 8051 tr v ni b i. Tuynhin, lnh RETI cn thc thi mt nhim v khc na l xo c ngt ang -cphc v bo rng ngt kt thc v 8051 c th nhp mt ngt mi trn chnny. Nu ta dng lnh RET thay cho RETI nh- l lnh cui cng ca trnh phc vngt nh- vy l ta v tnh kho mi ngt mi trn chn ny sau ngt u tin v

    trng thi ca chn bo rng ngt vn ang -c phc v. y l tr-ng hp m ccc TF0, TF1, TCON.1 v TCON.3 -c xo bi lnh RETI.11.3.6 Vi iu b xung v thanh ghi TCON.

    By gi ta xt k v cc bt ca thanh ghi TCON hiu vai tr ca n trongvic duy tr cc ngt.11.3.6.1 Cc bt IT0 v IT1.

    Cc bt TCON.0 v TCON.2 -c coi nh- l cc bt IT0 v IT1 t-ng ng.y l cc bt xc nh kiu ngt theo s-n xung hay theo mc xung ca cc ngtphn cng trn chn INT.0 v INT.1 t-ng ng. Khi bt li ngun c hai bt ny uc mc 0 bin chng thnh ngt theo tn hiu mc thp. Lp trnh vin c th iukhin mt trong s chng ln cao chuyn ngt phn cng bn ngoi thnh ngttheo ng-ng. Trong mt h thng da trn 8051 cho th mt khi ta t v 0hoc 1 th cc bt ny s khng thay i v ng-i thit k c nh kiu ngt l ngttheo s-n hay theo mc ri.11.3.6.2 Cc bt IE0 v IE1.

    Cc bt TCON.1 v TCON.3 cn -c gi l IE0 v IE1 t-ng ng. Cc btny -c 8051 dng bm kiu ngt theo s-n xung. Ni cc khc l nu IT0 vIT1 bng 0 th c ngha l cc ngt phn cng l ngt theo mc thp, cc bt IE0 vIE1 khng dng n lm g. Cc bt IE0 v IE1 -c 8051 ch dng cht s-nxung t cao xung thp trn cc chn INT0 v INT1. Khi c chuyn dch s-n xungtrn chn INT0 (hay INT1) th 8051 nh du (bt ln cao) cc bt IEx trn thanh ghi

    TCON nhy n bng vc t ngt v bt u thc hin trnh phc v ngt ISR. Trongkhi 8051 thc hin ISR th khng c mt s-n xung no -c ghi nhn trn chnINT0 (hay INT1) ngn mi ngt trong ngt. Ch trong khi thc hin lnh RETI cui trnh phc v ngt ISR th cc bt IEx mi b bo rng mt s-n xung caoxung thp mi trn chn INT0 (hay INT1) s kch hot ngt tr li. T phn trnhby trn ta thy rng cc bt IE0 v IE1 -c 8051 s dng bn trong bo c mtngt ang -c x l hay khng. Hay ni cch khc l lp trnh vin khng phiquan tm n c bt ny.11.3.6.3 Cc bt TR0 v TR1.

    y l nhng bt D4 v D6 (hay TCON.4 v TCON.6) ca thanh ghi TCON.Cc bt ny -c gii thiu ch-ng 9 chng -c dng khi ng v dng

    cc b nh thi Timer0 v Timer1 t-ng ng. V thanh ghi TCON c th nh ach theo bt nn c th s dng cc lnh SETB TRx v CLR TRx cng nh- cclnh SETB TCON.4 v CLR TCON.4.11.3.6.4 Cc bt TF0 v TF1.

    Cc bt ny l D5 (TCON.5) v D7 (TCON.7) ca thanh ghi TCON m -c gii thiu ch-ng 9. Chng ta -c s dng bi cc b Timer0 v Timer1t-ng ng bo rng cc b nh thi b trn hay quay v khng. Mc d ta dng cc lnh JNB TFx, ch v CLR TFx nh-ng chng ta cng khng th s

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    13/18

    dng cc lnh nh- SETB TCON.5, ch v CLR TCON.5 v TCON l thanh ghic th nh a ch theo bt.11.4 Lp trnh ngt truyn thng ni tip.

    Trong ch-ng 10 chng ta nghin cu v truyn thng ni tip ca 8051.Tt c cc v d trong ch-ng y u s dng ph-ng php thm d (polling). ch-ng ny ta khm ph truyn thng da trn ngt m n cho php 8051 lm vic

    rt nhiu vic ngoi vic truyn v nhn d liu t cng truyn thng ni tip.11.4.1 Cc c RI v TI v cc ngt.Nh- ni ch-ng 10 th c ngt truyn TI (Transfer interrupt) -c bt ln

    khi bt cui cng ca khung d liu, bt stop -c truyn i bo rng thanh ghi SBUFsn sng truyn byte k tip. Trong tr-ng hp c RI (Receive Interrupt) th n -cbt ln khi ton b khung d liu k c bt stop -c nhn. Hay ni cch khc khithanh ghi SBUF c mt byte th c RI bt ln bo rng byte d liu nhn -c cnly i ct vo ni an ton tr-c khi n b mt (b ghi ) bi d liu mi nhn -c.Chng no cn ni v truyn thng ni tip th tt c mi khi nim trn y u pdng ging nh- nhau cho d s dng ph-ng php thm d hay s dng ph-ngphp ngt. S khc nhau duy nht gia hai ph-ng php ny l cch phc v qutrnh truyn thng ni tip nh- th no. Trong ph-ng php thm d th chng taphi i cho c (TI hay RI) bt ln v trong lc ch i th ta khng th lm g -cc. Cn trong ph-ng php ngt th ta -c bo khi 8051 nhn -c mt bytehoc n sn sng chuyn (truyn) byte k tip v ta c th lm cc cng vic khctrong khi truyn thng ni tip ang -c phc v.

    Trong 8051 ch c mt ngt dnh ring cho truyn thng ni tip. Ngt ny-c dng cho c truyn v nhn d liu. Nu bt ngt trong thanh gi I E (l bt IE.4)-c php khi RI v TI bt ln th 8051 nhn -c ngt v nhy n a ch trnhphc v ngt dnh cho truyn thng ni tip 0023H trong bng vc t ngt thchin n. Trong trnh ISR ny chng ta phi kim tra cc c TI v RI xem c no

    gy ra ngt p ng mt cch ph hp (xem v d 11.8).

    Hnh 11.7: Ngt truyn thng c th do hai c TI v RI gi.11.4.2 S dng cng COM ni tip trong 8051.

    Trong phn ln cc ng dng, ngt ni tip ch yu -c s dng nhn dliu v khng bao gi -c s dng truyn d liu ni tip. iu ny ging nh-vic bo chung nhn in thoi, cn nu ta mun gi in thoi th c nhiucch khc ngt ta ch khng cn n chung. Tuy nhin, trong khi nhn inthoi ta phi tr li ngay khng bit ta ang lm g nu khng thuc gi s (mt) iqua. T-ng t nh- vy, ta s dng cc ngt ni tip khi nhn d liu i n saochp cho n khng b mt:Hy xt v d 11.9 d-i y.V d 11.8:

    RI

    TI0023H

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    14/18

    Hy vit ch-ng trnh trong 8051 c d liu t cng P1 v ghi n ti cngP2 lin tc trong khi -a mt bn sao d liu ti cng COM ni tip thc hintruyn ni tip gi thit tn sXTAL l 11.0592MHz v tc baud l 9600.Li gii:

    ORG 0

    LJMP MAINORG 23HLJMP SERIAL ; Nhy n trnh phc v ngt truyn thng ni tip

    MAIN: MOVQP1, # 0FFH ; Ly cng P1 lm cng u voMOV TMOD, # 20h ; Chn Timer1, ch 2 t np liMOV TH1, # 0FDH ; Chn tc baud = 9600MOV SCON, # 50H ; Khung d liu: 8 bt d liu, 1 stop cho php RENMOV IE, # 10010000B ; Cho php ngt ni tipSETB TR1 ; Khi ng Timer1

    BACK: MOV A, P1 ; c d liu t cng P1MOV SBUF, A ; Ly mt bn sao ti SBUFMOV P2, A ; Gi n n cng P2

    SJMP BACK ; li trong vng lp;; --------------------------Trnh phc v ngt cng ni tip

    ORG 100HSERIAL: JB TI,TRANS ; Nhy n cTI cao

    MOV A, SBUF ; Nu khng tip tc nhn d liuCLR RI ; Xo cRI v CPU khng lm iu nyRETI ; Tr v t trnh phc v ngt

    TRANS: CLR TI ; Xo cTI v CPU khng lm iu nyRETI ; Tr v t ISREND

    Trong vn trn thy ch n vai tr ca c TI v RI. Thi im mt byte-c ghi vo SBUF th n -c ng khung v truyn i ni tip. Kt qu l khi btcui cng (bt stop) -c truyn i th c TI bt ln cao v n gy ra ngt ni tip-c gi khi bt t-ng ng ca n trong thanh ghi IE -c -a ln cao. Trong trnhphc v ngt ni tip, ta phi kim tra c c TI v c RI v c hai u c th gi ngthay ni cch khc l ch c mt ngt cho c truyn v nhn.V d 11.9:

    Hy vit ch-ng trnh trong 8051 nhn d liu t cng P1 v gi lin tcn cng P2 trong khi d liu i vo t cng ni tip COM -c gi n cng P0.Gi thit tn sXTAL l 11.0592MHz v tc baud 9600.Li gii:

    ORG 0LJMP MAINORG 23HLJMP SERIAL ; Ly cng P1 l cng u voORG 03H

    MAIN: MOV P1, # FFHMOV TMOD, # 20H ; Chn Timer v ch hai t np liMOV TH1, # 0FDH ;Khung d liu: 8 bt d liu, 1 stop, cho php REN

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    15/18

    MOV SCON, # 50H ; Cho php ngt ni tipMOV IE, # 10010000B ; Khi ng Timer1SETB TR1 ; c d liu t cng P1

    BACK: MOV A, P1 ; Gi d liu n cng P2MOV P2, A ; li trong vng lpSJMP BACK

    ; -------------------------Trnh phc v ngt cng ni tip.

    ORG 100HSERIAL: JB TI, TRANS ; Nhy nu Ti caoMOV A, SBUF ; Nu khng tip tc nhn d liuMOV P0, A ; Gi d lu u vo n cng P0CLR RI ; Xo vRI v CPU khng xo cnyRETI ; Tr v t ISR

    TRANS: CLS TI ; Xo cTI v CUP khng xo cny.RETI ; ; tr v t ISREND

    11.4.3 Xo c RI v TI tr-c lnh RETI. rng lnh cui cng tr-c khi tr v t ISR l RETI l lnh xo cc c

    RI v TI. y l iu cn thit bi v l ngt duy nht dnh cho nhn v truyn8051 khng bit -c ngun gy ra ngt l ngun no, do vy trnh phc v ngtphi -c xo cc c ny cho php cc ngt sau -c p ng sau khi kt thcngt. iu ny t-ng phn vi ngt ngoi v ngt b nh thi u -c 8051xocc c. Cc lnh xo cc c ngt bng phn mm qua cc lnh CLR TI v CLRRI. Hy xt v d 11.10 d-i y v n cc lnh xo c ngt tr-c lnh RETI.V d 11.10:

    Hy vit mt ch-ng trnh s dng cc ngt thc hin cc cng vic sau:a) Nhn d liu ni tip v gi n n cng P0.b) Ly cng P1 c v truyn ni tip v sao n cng P2.

    c) S dng Timer0 to sng vung tn s 5kHz trn chn P0.1 git thit tn sXTAL =11.0592MHz v tc baud 4800.Li gii:

    ORG 0LJMP MAINORG 000BH ; Trnh phc v ngt dnh cho Timer0CPL P0.1 : To xung chn P0.1RETI ; Tr v t ISRORG 23H ; Nhy n a ch ngt truyn ni tipLJMP SERIAL ; Ly cng P1 lm cng u voORG 30H

    MAIN : MOV P1, # 0FFH ; Chn Timer0 v Timer1 ch 2 t np li

    MOV TMOD, # 22H ; Chn Timer0 v Timer1 ch 2 t np liMOV TH1, # 0F6H ; Chn tc baud 4800MOV SCON, # 50H ; Khung d liu: 8 bt d liu, 1 stop, cho php RENMOV TH0, # - 92 ; To tn s5kHzMOV IE, # 10010010B ; Cho php ngt ni tipSETB TR1 ; Khi ng Timer1SETB TR0 ; Khi ng Timer0

    BACK: MOV A, P1 ; c d liu t cng P1MOV SBUF, A ; Ly mt ln bn sao d liuMOV P2, A ; Ghi n vo cng P2

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    16/18

    SJMP BACK ; li trong vng lp; ---------------------- Trnh phc v ngt cng ni tip.

    ORG 100HSERIAL: JB TI, TRANS ; Nhy nu TI vo

    MOV A, SBUF ; Nu khng tip tc nhn d liuMOV P0, A ; Gi d liu ni tip n P0CLR RI ; Xo cRI v 8051 khng lm iu ny

    RETI ; Tr v t ISRTRANS: CLR TI ; Xo cTI v 8051 khng xoRETI ; Tr v t ISR.END

    Tr-c khi kt thc phn ny hy n danh sch tt c mi c ngt -ccho trong bng 11.2. Trong khi thanh thi TCON gi4 c ngt cn hai c TI v RI trong thanh ghi SCON ca 8051.

    Bng 11.2: Cc bt c ngt.

    Ngt C Bt ca thanh ghi SFR

    Ngt ngoi 0 IE0 TCON.1Ngt ngoi 1 IE1 TCON.3Ngt Timer0 TF0 TCON.5Ngt Timer1 TF1 TCON.7Ngt cng ni tip T1 SCON.1Ngt Timer2 TF2 T2CON.7 (TA89C52)Ngt Timer2 EXF2 T2CON.6 (TA89C52)

    11.5 Cc mc -u tin ngt trong 8051.11.5.1 Cc mc -u tin trong qu trnh bt li ngun.

    Khi 8051 -c cp ngun th cc mc -u tin ngt -c gn theo bng 11.3.T bng ny ta thy v d nu cc ngt phn cng ngoi 0 v 1 -c kch hot cngmt lc th ngt ngoi 0 s -c p ng tr-c. Ch sau khi ngt INT0 -c phcv xong th INT1 mi -c phc v v INT1 c mc -u tin thp hn. Trong thc ts mc -u tin ngt trong bng khng c ngha g c m mt quy trnh thm dtrong 8051 thm d cc ngt theo trnh t cho trong bng 11.3 v p ng chngmt cch ph hp.

    Bng 11.3: Mc -u tin cc ngt trong khi cp li ngun.

    Mc -u tin cao xung thpNgt ngoi 0 INT0Ngt b nh thi 0 TF0Ngt ngoi 1 INT1Ngt b nh thi 1 TF1Ngt truyn thng ni tip (RI + TI)

    V d 11.1:

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    17/18

    Hy bnh lun xem iu g xy ra nu cc ngt INT0, TF0 v INT1 -c kchhot cng mt lc. Gi thit rng cc mc -u tin -c thit lp nh- khi bt lingun v cc ngt ngoi l ngt theo s-n xung.Li gii:

    Nu ba ngt ny -c kch hot cng mt thi im th chng -c cht v-c gi bn trong. Sau kim tra tt c nm ngt theo trnh t cho trong bng

    11.3. Nu mt ngt bt k -c kch hot th n -c phc v theo trnh t. Do vy,khi c ba ngt trn y cng -c kch hot mt lc th ngt ngoi 0 (IE0) -c phcv tr-c ht sau n ngt Timer0 (TF0) v cui cng l ngt ngoi 1 (IE1).

    Hnh 11.8: Thanh ghi mc -u tin ngt IP, bt -u tin =1 l mc -u tin cao,bt -u tin = 0 l mc -u tin thp.

    - Bt D7 v D6 hay IP.7 v IP.6- ch-a dng.- Bt D5 hay IP.5 l bt -u tin ngt Timer2 (dng cho 8052)- Bt D4 hay IP.4 l bt -u tin ngt cng ni tip- Bt D3 hay IP.3 l bt -u tin ngt Timer1- Bt D2 hay IP.2 l mc -u tin ngt ngoi 1- Bt D1 hay IP.1 l mc -u tin ngt Timer 0- Bt D0 hay IP.0 l mc -u tin ngt ngoi 0Ng-i dng khng -c vit phn mm ghi cc s1 vo cc bt ch-a dng v

    chng dnh cho cc ng dng t-ng li.11.5.2 Thit lp mc -u tin ngt vi thanh ghi IP.

    Chng ta c th thay i trnh t trong bng 11.3 bng cch gn mc -u tincao hn cho bt k ngt no. iu ny -c thc hin bng cch lp trnh mt thanh

    ghi gi l thanh ghi mc -u tin ngt IP(Interrupt Priority). Trn hnh 11.8 l cc btca thanh ghi ny, khi bt li ngun thanh thi 1Pcha hon ton cc s 0 to ratrnh t -u tin ngt theo bng 11.3. mt ngt no mc -u tin cao hn ta thchin -a bt t-ng ng ln cao. Hy xem v d 11.12.

    Mt im khc na cn -c lm sng t l mc -u tin ngt khi hai hocnhiu bt ngt trong thanh ghi IP -c t ln cao. Trong tr-ng hp ny th trongkhi cc ngt ny c mc -u tin cao hn cc ngt khc chng s -c phc v theotrnh t cho trong bng 11.3. Xem v d 11.13.V d 11.12:a) Hy lp trnh thanh ghi IP gn mc -u tin cao nht cho ngt INT1 (ngt

    ngoi 1) sau .b) Hy phn tch iu g xy ra khi INT0, INT1 v TF0 -c kch hot cng lc.

    Gi thit tt c cc ngt u l cc ngt theo s-n.Li gii:a) MOV IP, #0000 0100B ; t bt IP.2 = 1 gn INT1 mc -u tin cao nht.

    Lnh SETB IP.2 cng tc ng t-ng t bi v IP l thanh ghi c th nh ach theo bt.

    b) Lnh trong b-c a) gn mc -u tin cao hn INT1 so vi cc ngt khc, do vykhi INT0, INT1 v TF0 -c kch hot cng lc th tr-c ht INT1 -c phc v

    -- -- PT2 PS PT1 PX1 PT0 PX0

    D0D7

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 11_Lap Trinh Ngat - Smith.N Studio

    18/18

    tr-c ri sau n INT0 v cui cng l TF0. iu ny l do INT1 c mc -utin cao hn hai ngt kia b-c a). Sau khi thc hin song ngt INT1 th 8051 trv phc v ngt cn li theo trnh t -u tin trong bng 11.3.

    V d 11.13:Gi thit rng sau khi bt li ngun th mc -u tin ngt -c thit lp bi

    lnh MOV IP, #0000 1100B. Hy bnh lun v qu trnh cc ngt -c phc v

    nh- th no?Li gii:Lnh MOV IP, #0000 1100B (ch B l gi tr thp phn) thit lp ngt

    ngoi (INT1) v ngt b Timer1 (TF1) c mc -u tin cao hn cc ngt khc. Tuynhin, v chng -c thm d theo bng 11.3 nn chng s -c phc v theo trnht sau:

    Mc -u tin cao nht: Ngt ngoi 1 (INT1)Ngt b Timer 1 (TF1)Ngt ngoi 0 (INT0)Ngt b Timer0 (TF0)

    Mc -u tin thp nht: Ngt cng truyn thng ni tip (RI + RT).

    11.5.3 Ngt trong ngt.iu g xy ra nu 8051 ang thc hin mt trnh phc v ngt thuc mt

    ngt no th li c mt ngt khc -c kch hot? Trong nhng tr-ng hp nh-vy th mt ngt c mc -u tin cao hn c th ngt mt ngt c mc -u tin thphn. y gi l ngt trong ngt. Trong 8051 mt ngt -u tin thp c th b ngt bimt ngt c mc -u tin cao hn ch khng b ngt bi mt ngt c mc -u tin thphn. Mc d tt c mi ngt u -c cht v gi bn trong nh-ng khng c ngtmc thp no -c CPU quan tm ngay tc khc nu 8051 ch-a kt thc phc v ccngt mc cao.11.5.4 Thu chp ngt bng phn mm (Triggering).

    C nhiu lc ta cn kim tra mt trnh phc v ngt bng con -ng mphng. iu ny c th -c thc hin bng cc lnh n gin thit lp cc ngtln cao v bng cch buc 8051 nhy n bng vc t ngt. V d, nu bt IEdnh cho b Timer1 -c bt ln 1 th mt lnh nh- SETB TF1 s ngt 8051ngng thc hin cng vic ang lm bt k v buc n nhy n bng vc t ngt.Hay ni cch khc, ta khng cn i cho Timer1 quay tr v 0 mi to ra ngt.Chng ta c th gy ra mt ngt bng cc lnh -a cc bt ca ngt t-ng ng lncao.

    Nh- vy ch-ng ny chng ta bit ngt l mt s kin bn trong hocbn ngoi gy ra ngt b vi iu khin bo cho n bit rng thit b cn -c phcv. Mi mt ngt c mt ch-ng trnh i km vi n -c gi l trnh phc v ngt

    ISR. B vi iu khin 8051 c su ngt, trong nm ngt ng-i dng c th truycp -c. l hai ngt cho cc thit b phn cng bn ngoi INT0 v INT1, haingt cho cc b nh thi l TF0 v TF1 v ngt lnh cho truyn thng ni tip.

    8051 c th -c lp trnh cho php hoc cm mt ngt bt k cng nh- thitlp mc -u tin cho n theo yu cu ca thut ton ng dng.

    Smith Nguyen Studio.