SlideShare a Scribd company logo
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì    http://roboconsv.yourfreebb.com


                                    Bài m ñ u
              GI I THI U V VI ðI U KHI N 8051




      A. M t con chip AT89C51:
      Như các b n th y trên hình:
      - Các chân
      P0.0 ñ n P0.7,( 39-32 )
      P1.0 ñ n P1.7,( 1-8 )
      P2.0 ñ n P2.7,( 21-28 )
      P3.0 ñ n P3.7,( 10-17 )

      Là các c ng xu t nh p. ðó là nơi ñưa tín hi u vào VðK và nơi VðK xu t tín hi u
      ra.
      - Chân RST(9): là chân reset. Khi chân này ñư c n thì các thanh ghi h th ng s
      ñư c thi t l p l i tr ng thái ban ñ u.
      - Các chân Vcc(40) và GND(20): là 2 chân c p ngu n cho VðK. Vcc m c cao
      5V. GND m c th p 0V.
      - Hai chân XTAL1 và XTAL2 là hai chân cung c p xung dao ñ ng cho VðK.
      Thư ng là n i v i th ch anh có t n s 12 MHz.

      Trên ñây là m t s ñ c ñi m c n lưu ý v c u trúc chân c a con chip AT89C51.
      Các b n nên nh k ñ ti n cho vi c l p trình sau này.




Sưu t m: Cao Hoàng Long – CðT32 – CTU              chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì      http://roboconsv.yourfreebb.com

      * N p chương trình cho VðK.

      Trư c tiên chúng ta vi t trình chương trình ch y cho VðK. B n có th s d ng
      Notepad c a Windows hay ph n n m 8051-IDE (t i trên m ng - vô Google mà
      tìm).
      Sau ñó ch y chương trình n p (EZ31) và dùng b n p n p vào VðK.

      B. Nó ho t ñ ng như th nào?
      Trư c tiên chúng ta hãy ghi nh m t s khái ni m.

      - Tín hi u : trong VðK tín hi u có nghĩa là m t s thay ñ i v ñi n th hay m c
      tr ng thái c a m t hay nhi u bit.




      Ví d : Có m t m ch ñi n như hình v .

      - Khi ta chưa ñóng khóa k1 thì chân P1.0 c a VðK có ñi n th 0V( m c th p).
      - Khi ta ñóng khóa k1 thì chân P1.0 c a VðK có ñi n th 5V( m c cao).
      S thay ñ i ñi n th ñó là m t tín hi u.

      M i chân c a VðK là m t bit, g m 2 m c tr ng thái là “cao và th p”.
      Tám chân cùng lo i t o nên 1 c ng (8 bit).

      VD : c ng P1 bao g m 8 chân t P1.0 ñ n P1.7
      c ng P0 bao g m 8 chân t P0.0 ñ n P0.7

      - Thanh ghi: M i thanh ghi là m t ô nh 8 bit.
      VðK cung c p cho chúng ta 8 thanh ghi m c ñ nh là t R0 ñ n R7.
      Ngoài ra còn có m t s nh ng thanh ghi ñ c bi t khác như :

      TMOD/TCON : là nh ng thanh ghi c a b ñ nh th i.
      Các c ng P0 ñ n P3 cũng là nh ng thanh ghi xu t nh p.v.v.
      Có nh ng thanh ghi có ñ a ch bit c th , có nh ng thanh ghi thì không.

      - ð a ch bit: m i thanh ghi ñư c c u thành t 8 bit. Có nh ng thanh ghi có ch c
      năng ñ c bi t và m i bit c a nó ñ m nh n 1 ch c năng khác nhau. Chúng ta có th
      thay ñ i m c tr ng thái c a t ng bit thay vì ph i tác ñ ng lên c thanh ghi. ði u
      ñó s giúp cho vi c x lý tín hi u tr nên d dàng hơn. Thao tác l p trình tr nên
      ñơn gi n hơn.”


Sưu t m: Cao Hoàng Long – CðT32 – CTU                chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com

      - D li u trong m i thanh ghi là m t con s t 00H~FFH (theo h hexa) hay t
      00000000B ñ n 11111111B( theo h nh phân). Như các b n th y các s trong h
      nh phân có 8 ch s tư ng trưng cho 8 bit c a m i thanh ghi. M i bit có 2 tr ng
      thái ng v i 2 s là 0-m c th p và 1-m c cao. Giá tr hexa ch ng qua ch là m t
      cách vi t g n c a nh ng ngư i ñã quen v i công vi c l p trình. Chúng ta có th
      chuy n t nh phân sang hexa m t cách d dàng nh máy tính.

      Vì sao vi t hexa l i d hơn vi t nh phân. b i vì trong l p trình VðK d li u n p
      cho m i thanh ghi ñ c bi t là c ñ nh ng v i m i ch c năng khác nhau.Vì v y
      khi quen r i b n vi t b ng hexa s nhanh g n hơn. Chúng ta cũng có th s d ng
      s th p phân.

      VðK ho t ñ ng như th nào???

      Khi nh n ñư c m t tín hi u t bên ngoài. Tín hi u ñó có th t công t c ho c c m
      bi n. Lúc ñó VðK s x lí theo các chương trình mà ta ñã l p s n ng v i tín hi u
      ñó. Và k t qu là ta s quy ñ nh cho VðK ñưa ra nh ng tín hi u tương ng nh m
      gi i quy t tình hu ng. M t ñi u hi n nhiên là nh ng tình hu ng y ta ñã d tính
      trư c và l p s n chương trình ñ gi i quy t. N u không VðK không th t x lý
      ñư c. Nó ch bi t ch y theo ñúng nh ng gì chúng ta ñã l p trình cho nó.




Sưu t m: Cao Hoàng Long – CðT32 – CTU               chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com


                                          Bài 2
                 RAM VÀ CÁC THANH GHI ð C BI T




ðây là vùng RAM ña m c ñích.               ðây là các thanh ghi có ch c năng ñ c bi t

      Như ñã ñ c p bài m ñ u, các thanh ghi ñ c bi t mang ch c năng khác nhau,
      chúng ñư c c u t o t 8 bit, và như trên chúng ta có th l y d li u tr c ti p t
      ñ a ch bit ho c thông qua tên g i c a c a chúng. Các thanh ghi ñ c bi t n m v
      trí t 80H ñ n FFH.
      Trong các thanh ghi ñó chúng ta hãy quan tâm t i các thanh ghi c a b ñ nh th i:
      TMOD là thanh ghi ch n ch ñ ñ nh th i.
      TCON (ñ nh ñ a ch t ng bit) là thanh ghi ñi u khi n ch ñ ñ nh th i.
      TL0 - TH0 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 0.
      TL1 - TH1 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 1.



Sưu t m: Cao Hoàng Long – CðT32 – CTU               chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì       http://roboconsv.yourfreebb.com


                                            Bài 3
        CÁC L NH THƯ NG G P ð L P TRÌNH ROBOT
      ð i v i ho t ñ ng robocon, l p trình VðK g n như bó g n trong m t s câu l nh
      thư ng g p sau ñây:

      1. L nh MOV
      - C u trúc: MOV ñích,ngu n
      - Ch c năng: Chuy n d li u t ngu n vào ñích và thoát kh i câu l nh.
      - Lưu ý: ðích là các thanh ghi, ngu n có th là thanh ghi cũng có th là giá tr tr c
      ti p ho c gián ti p. N u ngu n là d li u tr c ti p thì ph i ghi theo c u trúc:
              MOV ñích,#d li u tr c ti p.
      N u là s hexa thì ph i vi t #0(d li u d ng hexa). Vd #0FFH
      Nêu là s nh phân ph i vi t #(d li u d ng bit)B. Vd #11111111B
      N u là s th p phân ph i vi t #(d li u d ng th p phân. Vd #255

      2. L nh JB
      - C u trúc: JB bit,nhãn
      - Ch c năng: Ki m tra m c tr ng thái c a bit. N u là m c th p thì thoát kh i câu
      l nh. N u là m c cao thì nh y ñ n v trí c a nhãn.
      - Lưu ý: Nhãn là tên g i ñánh d u m t v trí nào ñó trong chương trình l p trình
      mà chúng ta quy ñ nh cho nó.

      3. L nh JNB
      - C u trúc: JNB bit,nhãn
      - Ch c năng: Ki m tra m c tr ng thái c a bit. N u là m c cao thì thoát kh i câu
      l nh. N u là m c th p thì nh y ñ n v trí c a nhãn.

      4. L nh CJNE
      - C u trúc: CJNE ñích,ngu n,nhãn
      - Ch c năng: So sánh d li u c a ngu n v i ñích. N u không b ng nhau thì nh y
      ñ n v trí c a nhãn. N u b ng thì thoát kh i câu l nh.

      5. L nh DJNZ
      - C u trúc: DJNZ thanh ghi,nhãn
      - Ch c năng: So sánh giá tr thanh ghi v i 0. N u không b ng thì gi m giá tr
      thanh ghi ñi 1 và nh y t i v trí c a nhãn. N u b ng 0 thì thoát ra kh i câu l nh.

      - Lưu ý: Khi l p trình chúng ta nên ñ cho thanh ghi có gia tr dương.

      6. L nh SETB
      - C u trúc: SETB bit
      - Ch c năng: Thi t l p m c tr ng thái cao cho bit và thoát kh i câu l nh.
      - Lưu ý: Khi bit ñang m c 0 (th p) thì ñưa lên m c 1(cao). Còn ñang m c 1
      thì gi nguyên.



Sưu t m: Cao Hoàng Long – CðT32 – CTU                 chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì      http://roboconsv.yourfreebb.com

      7. L nh CLR
      - C u trúc: CLR bit
      - Ch c năng: Thi t l p m c tr ng thái 0 cho bit và thoát kh i câu l nh.
      - Lưu ý: Khi bit ñang m c 1thì ñưa xu ng m c 0. Còn ñang m c 0 thì gi
      nguyên. Có th thay bit b ng thanh ghi và khi ñó t t c các bit c a thanh ghi ñ u
      ñư c ñưa xu ng m c 0 .

      8. L nh INC
      - C u trúc: INC thanh ghi
      - Ch c năng: Tăng giá tr thanh ghi lên 1 và thoát kh i câu l nh.
      - Lưu ý: Khi l p trình chúng ta nên ñ cho thanh ghi có gia tr dương.

      9. L nh LJMP
      - C u trúc: LJMP nhãn
      - Ch c năng: Nh y t i v trí c a nhãn.
      - Lưu ý: Có th nh y trong toàn chương trình.

      10. L nh SJMP
      - C u trúc: SJMP nhãn
      - Ch c năng: Nh y t i v trí c a nhãn.
      - Lưu ý: Có th nh y trong ph m vi 128 byte trư c câu l nh và 127 byte sau l nh.

      11. L nh RET
      - C u trúc: RET
      - Ch c năng: K t thúc m t chương trình con và ñưa con tr tr v v trí lúc g i
      chương trình con.

      12. L nh LCALL
      - C u trúc: LCALL nhãn
      - Ch c năng: G i m t chương trình con b t ñ u t v trí nhãn.
      - Lưu ý: Có th g i trong toàn chương trình.

      Các b n nên ñ c thêm trong sách tham kh o ñ bi t thêm v s byte và s chu kỳ
      máy c a m i câu l nh.




Sưu t m: Cao Hoàng Long – CðT32 – CTU                chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com


                                       Bài 4
                       TR NG THÁI KHI RESET




      1. VðK s b t ñ u ho t ñ ng khi chúng ta c p ngu n cho nó b ng cách ñóng khóa
      K1. Khi ñó t t c các thanh ghi s ñư c kh i t o tr ng thái.(Xem trong ph n reset)
      con tr c a chương trình s ñư c ñ t v trí th p nh t c a RAM - 00H.

      2. VðK s reset l i h th ng, nghĩa là thi t l p l i tr ng thái ban ñ u lúc kh i
      ñ ng cho t t c các thanh ghi. và ñưa con tr tr l i v trí 00H. Mu n reset ñúng ta
      ph i ñóng khóa K2 lâu hơn 2 chu kỳ máy.

      B ng tr ng thái khi reset:




      3. Như chúng ta th y b ng Reset, tr ng thái c a các c ng xu t nh p ( c ng
      P0~P3 ) ñ u là FFH, nghĩa là t t c các chân trong c ng ñ u tr ng thái m c 1.
      Tuy nhiên n u b t kỳ chân nào trong các c ng n i v i m t m ch ngoài h - nghĩa
      là ph thu c vào các ñi u ki n bên ngoài, thì tr ng thái c a chân ñó s là tr ng
      thái c a tín hi u mà m ch ngoài ñưa vào. N u m ch ngoài ph thu c vào tín hi u
      c a VðK thì tr ng thái c a chân ra s là tr ng thái mà VðK xu t ra.
      Trong hình miêu t trên chân P0.1 s có tr ng thái là m c 0, vì K3 h . Còn chân
      P2.0 thì có tr ng thái ph thu c vào VðK.


Sưu t m: Cao Hoàng Long – CðT32 – CTU               chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com


                                       Bài 5
CÁC THÀNH PH N C A M T CHƯƠNG TRÌNH L P TRÌNH
      1. C u trúc m t chương trình l p trình.
             ORG ....(V trí b t ñ u c a con tr chương trình)
             ...
             (ðo n chương trình chính)
             ...
             (Các chương trình con)
             ...
             END (k t thúc chương trình)

      2. Con tr chương trình.
      ðó là v trí mà VðK ñang th c thi t i ñó.
      Thông thư ng khi b t ñ u m t chương trình thì con tr luôn v trí th p nh t
      00H. tuy nhiên chúng ta có th quy ñ nh cho nó b t ñ u làm vi c t i m t v trí
      khác.Chúng ta căn c vào ñ a ch trên RAM ñ ch n vùng làm vi c.

      Vd:
      ORG 00H -----(b t ñ u t v trí 00H)
      ORG 0030H -----(b t ñ u t v trí 30H) v.v.

      3. Nhãn.
      Nhãn là tên g i ñánh d u m t v trí nào ñó trong chương trình l p trình mà chúng
      ta quy ñ nh cho nó.
      VD:
      ORG 00H ----------(con tr chương trình b t ñ u v trí 00H)
      LJMP MAIN ----------(nh y t i v trí có nhãn là MAIN)
      ORG 0030H ----------(v trí b t ñ u chương trình chính MAIN)
      MAIN:
      MOV R1,#10----------(n p cho R1 giá tr là 10.)
      LAP1:
      DJNZ R1,LAP1
      END--------------------(K t thúc chương trình.)

      Trong chương trình trên nhãn là MAIN và LAP1. Khi nhãn ñư c g i thì con tr
      chương trình s nh y t i v trí c a nhãn ñ th c thi câu l nh t i v trí ñó.

      4. Chương trình con.
      C u trúc chương trình con.

             Nhãn:
             .................
             Các câu l nh
             .....
             RET

Sưu t m: Cao Hoàng Long – CðT32 – CTU               chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì        http://roboconsv.yourfreebb.com

      VD:
      ORG 00H
      LJMP MAIN
      ORG 0030H
      MAIN:
      MOV R1,#10
      LCALL LAP1-------------g i chương trình con
      LAP1:
      DJNZ R1,LAP1
      RET -----------------------k t thúc chương trình con
      END

      Chương trình con có th ñ t bên ngoài chương trình chính, trư c ho c sau.




Sưu t m: Cao Hoàng Long – CðT32 – CTU                  chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì      http://roboconsv.yourfreebb.com


                                        Bài 6
                       HO T ð NG ð NH TH I
      1. Ho t ñ ng ñ nh th i:
      Là s ki m soát th i gian ñ th c thi các câu l nh trong quá trình x lý c a VðK.

      * M t s khái ni m:

      - T n s dao ñ ng: t n s c a VðK luôn b ng 1/12 t n s c a th ch anh g n trong
      m ch. (thư ng là lo i 12MHz)

      - Chu kỳ máy: T=1/f .Là th i gian làm vi c c a 1 dao ñ ng máy

      Gi s t n s th ch anh là 12 MHz. ta có t n s VðK f = 12 MHz/12 = 1 MHz.
      =1000000 Hz và khi ñó chu kỳ máy T = 1/1000000 = 0.000001 s = 1 micro giây.

      - ð th c hi n m i câu l nh VðK ñ u ph i t n m t th i gian nh t ñ nh ng v i
      m i câu l nh ñó. ðó là s chu kỳ máy c a m i câu l nh.

      - Gi a thu t toán l p trình và th c t có m t s khác bi t r t l n. ðó chính là th i
      gian. VðK ch y v i t c ñ micro giây, trong khi th c t cùng l m là chúng ta x
      lý công vi c trong kho ng 0.1 giây là nhanh nh t có th . Chính vì th chúng ta khi
      l p trình ph i có công ño n x lý th i gian b ng cách t o tr cho VðK ñ kéo dài
      th i gian cho kh p v i nh ng thao tác trên th c t .

      2. T o tr :

      Ch ng h n yêu c u chúng ta c n m t kho ng th i gian tr là 200 micro giây.

      V y v i câu l nh MOV (1 chu kỳ máy) chúng ta ph i vi t 200 câu l nh liên ti p.
      M t công vi c g n như không th .

      V n ñ ñ t ra là chúng ta ph i xây d ng m t thu t toán t o tr sao cho d dàng
      cho ngư i l p trình nh t.Và sau ñây là 1 thu t toán:
      VD:
      ORG 00H
      LJMP MAIN
      ORG 0030H
      MAIN:
      MOV R1,#100-------------Gán cho thanh ghi R1 giá tr là 100.
      LAP1:
      DJNZ R1,LAP1------------(So sánh giá tr thanh ghi R1 v i 0,
      N u không b ng thì gi m R1 ñi 1, r i nh y t i nhãn LAP1Công vi c l i ñư c ti p
      t c cho t i khi R1=0)
      END



Sưu t m: Cao Hoàng Long – CðT32 – CTU                chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com

      Như v y v i câu l nh DJNZ (2 chu kỳ máy) VðK ñã l p l i công vi c ki m tra
      R1=0 t i 100 l n. t ng c ng s chu kỳ máy mà VðK ñã th c hi n là T = 2x100 =
      200 chu kỳ = 200 micro giây. ðó là thu t toán t o tr . ð i v i nh ng kho ng th i
      gian tr quá l n chúng ta ph i s d ng nhi u vòng l p l ng nhau. B i vì giá tr
      thanh ghi ch ñư c phép ñ t t i 255.

      VD:
      ORG 00H
      LJMP MAIN
      ORG 0030H
      MAIN:
      MOV R1,#100
      LAP1:
      MOV R2,#100
      LAP2:
      DJNZ R2,LAP2
      DJNZ R1,LAP1
      END

      Ta nh n th y:

      T i LAP2 VðK ñã th c hi n 100 chu kỳ máy. Và c m i l n R2=0 thì ki m tra
      R1, cho ñ n khi R1=0.
      Như v y câu l nh DJNZ R2,LAP2 ñã ñư c l p 100x100=10000 l n => 20000 chu
      kỳ máy = 0.02s.
      T t nhiên t ng s chu kỳ máy c a c thu t toán 1 + 300 + 20000=200301 chu kỳ.
      tuy nhiên chúng ta có th b qua 301 chu kỳ vì nó quá nh so v i 20000.




Sưu t m: Cao Hoàng Long – CðT32 – CTU                chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì         http://roboconsv.yourfreebb.com


                                          Bài 7
                                 B    ð NH TH I
        Khái ni m b ñ nh th i: Nói m t cách nôm na thì b ñ nh th i là m ch chia t n
        s c a VðK cho 2n l n. V i n là s bit c a b ñ nh th i. V y th i gian c a m t
        chu kỳ ñ nh th i lúc này là:

                                      T = 1/(12MHz/(12*2^n ))
        VðK AT89C51 x d ng 2 b ñ nh th i.
        C u t o: VðK AT89C51 cung c p cho chúng ta 2 b ñ nh th i 0 và 1.
        B ñ nh th i ñư c truy xu t b ng cách s d ng 6 thanh ghi ñ c bi t là:
        - TMOD là thanh ghi ch n ch ñ ñ nh th i.
        - TCON (ñ nh ñ a ch t ng bit) là thanh ghi ñi u khi n ch ñ ñ nh th i.
        - TL0 - TH0 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 0.
        - TL1 - TH1 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 1.

        A. Thanh ghi TMOD.(Time Mode register): C u t o b i hai nhóm 4 bit.

  Bit     Tên     B ñ nh th i                           Mô t
   0      M0          0       Bit ch n ch ñ th 2
   1      M1          0       Bit ch n ch ñ th 1
   2      C/T         0       Bit ch n ch c năng ñ m ho c ñ nh th i cho b ñ nh th i 0
   3     GATE         0       Bit ñi u khi n c ng cho b ñ nh th i 0
   4      M0          1       Bit ch n ch ñ th 2
   5      M1          1       Bit ch n ch ñ th 1
   6      C/T         1       Bit ch n ch c năng ñ m ho c ñ nh th i cho b ñ nh th i 1
   7     GATE         1       Bit ñi u khi n c ng cho b ñ nh th i 1

        B ng mô t ch ñ :

 M1       M0         Ch ñ                                     Mô t
  0       0            0         Ch   ñ   ñ nh th i 13 bit
  0       1            1         Ch   ñ   ñ nh th i 16 bit
  1       0            2         Ch   ñ   t ñ ng n p l i 8 bit
  1       1            3         Ch   ñ   ñ nh th i chia s .

          ñây chúng ta ch nghiên c u ch ñ ñ nh th i 16 bit.(Các ch ñ khác mong các
        ban xem tài li u)

        Thanh ghi 16 bit c a nó ñư c c u t o b i 2 thanh ghi 8 bit là TLx/THx ghép l i
        v i nhau. x là tên c a b ñ nh th i (1 ho c 0). Giá tr thanh ghi TLx ñư c l y làm
        byte th p và giá tr thanh ghi THx l y làm byte cao.

        VD : TL1 / TH1

        00H / FFH => giá tr thanh ghi 16 bit = FF00H.


Sưu t m: Cao Hoàng Long – CðT32 – CTU                   chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com

      Ho t ñ ng: B ñ nh th i 16 bit ho t ñ ng gi ng như m t b ñ m. T c là khi ch y
      b ñ nh th i VðK s b t ñ u ñ m t giá tr mà chúng ta n p vào thanh ghi 16 bit
      c a nó cho ñ n giá tr FFFFH = 65536. Và khi ñó VðK s b t m t bit (g i là c
      tràn) t 0 lên 1 báo hi u ñã ñ m xong hay nói cách khác là tràn b ñ nh th i.

      B. Thanh ghi TCON : ñây chúng ta ch quan tâm ñ n 4 bit cao c a thanh hi
      TCON. Còn 4 bit th p chúng quy u c là = 0.

      Bit    Tên                               Mô t
       7     TF1    C tràn c a b ñ nh th i 1
       6     TF1    Bit ñi u khi n b ñ nh th i 1. M c 1 là b t. M c 0 là d ng
       5     TF0    C tràn c a b ñ nh th i 0
       4     TF0    Bit ñi u khi n b ñ nh th i 0. M c 1 là b t. M c 0 là d ng

      Như v y gi s mu n kh i ñ ng b ñ nh th i 1 chúng ta vi t l nh SETB TR1

      C. C u trúc thu t toán vi t cho b ñ nh th i:

      MOV TMOD,#01H
      LAP: MOV TH0,#d li u
      MOV TL0,#d li u
      SETB TR0
      DEM: JNB TF0,DEM
      CLR TR0
      CLR TF0
      END

      Chúng ta có th l y d li u byte cao và th p ñ n p cho TL0 và TH0 như sau.
      - Xác ñ nh chúng ta c n tr là bao nhiêu chu kỳ máy. VD 10000 Chu kỳ.
      - L y 65536 - 10000 = 55536 => D8F0H.
      - V y TH0 = D8, TL0 = F0.

      Ngoài ra chúng ta còn có m t thu t toán n a ñ vi t cho b ñ nh th i.

      MOV TMOD,#01H
      MOV R1,#s l n l p l i
      LAP: MOV TH0,#HIGH(-s chu kỳ máy c n thi t)
      MOV TL0,#LOW(-s chu kỳ máy c n thi t)
      SETB TR0
      DEM: JNB TF0,DEM
      CLR TR0
      CLR TF0
      DJNZ R1,LAP
      END




Sưu t m: Cao Hoàng Long – CðT32 – CTU                chlong.mechatronics@gmail.com
Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì     http://roboconsv.yourfreebb.com

      VD: Chúng ta mu n t o tr 1s = 100x104 chu kỳ máy.

      MOV TMOD,#01H
      MOV R1,#100
      LAP: MOV TH0,#HIGH(-10000)
      MOV TL0,#LOW(-10000)
      SETB TR0
      DEM: JNB TF0,DEM
      CLR TR0
      CLR TF0
      DJNZ R1,LAP
      END

      Ho c

      MOV TMOD,#01H
      MOV R1,#50
      LAP: MOV TH0,#HIGH(-20000)
      MOV TL0,#LOW(-20000)
      SETB TR0
      DEM: JNB TF0,DEM
      CLR TR0
      CLR TF0
      DJNZ R1,LAP
      END

      Lưu ý: TLx/THx không ñư c vư t quá 65536 = FFFFH.

      T i ñây là k t thúc chương trình h c. Các b n ch c n n m v ng các câu l nh và
      nguyên t c t o tr là ñã có th l p trình cho robocon ñư c r i, v n ñ còn l i là
      kh năng tư duy c a b n.




Sưu t m: Cao Hoàng Long – CðT32 – CTU               chlong.mechatronics@gmail.com

More Related Content

What's hot

Đề tài: Điều khiển đóng mở cửa thang máy, HAY
Đề tài: Điều khiển đóng mở cửa thang máy, HAYĐề tài: Điều khiển đóng mở cửa thang máy, HAY
Đề tài: Điều khiển đóng mở cửa thang máy, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Đề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAY
Đề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAYĐề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAY
Đề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đ
Đề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đĐề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đ
Đề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAYĐề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Đề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOT
Đề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOTĐề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOT
Đề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOT
Dịch vụ viết bài trọn gói ZALO 0917193864
 
VI ĐIỀU KHIỂN 8051
VI ĐIỀU KHIỂN 8051VI ĐIỀU KHIỂN 8051
VI ĐIỀU KHIỂN 8051
LE The Vinh
 
Giao trinh 8051.doc
Giao trinh 8051.docGiao trinh 8051.doc
Giao trinh 8051.doc
Lê Hùng
 
Cac lenh lap trinh ladder
Cac lenh lap trinh ladderCac lenh lap trinh ladder
Cac lenh lap trinh ladder
Alain Hua
 
Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200
Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200
Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200
Daren Harvey
 
Mô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiềuMô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiều
Thanh Hoa
 
Bai giang-vhdl
Bai giang-vhdlBai giang-vhdl
Bai giang-vhdlhoangclick
 
Động cơ AC servo.pptx
Động cơ AC servo.pptxĐộng cơ AC servo.pptx
Động cơ AC servo.pptx
LamTran170
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
Bùi Ngọc Bảo
 
Chuong1 tổng quan 8051
Chuong1 tổng quan 8051Chuong1 tổng quan 8051
Chuong1 tổng quan 8051
Đinh Công Thiện Taydo University
 
Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...
Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...
Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...
Man_Ebook
 
Đề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAY
Đề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAYĐề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAY
Đề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
ĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.doc
ĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.docĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.doc
ĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
PinkHandmade
 
Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
Toan Pham
 

What's hot (20)

Đề tài: Điều khiển đóng mở cửa thang máy, HAY
Đề tài: Điều khiển đóng mở cửa thang máy, HAYĐề tài: Điều khiển đóng mở cửa thang máy, HAY
Đề tài: Điều khiển đóng mở cửa thang máy, HAY
 
Đề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAY
Đề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAYĐề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAY
Đề tài: Đo và điều khiển tốc độ động cơ dùng 8051, HAY
 
Đề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đ
Đề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đĐề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đ
Đề tài: Thiết kế hệ thống đo nhiệt độ, HAY, 9đ
 
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAYĐề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
 
Đề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOT
Đề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOTĐề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOT
Đề tài: Mạch vòng tốc độ theo hai tiêu chuẩn module tối ưu, HOT
 
VI ĐIỀU KHIỂN 8051
VI ĐIỀU KHIỂN 8051VI ĐIỀU KHIỂN 8051
VI ĐIỀU KHIỂN 8051
 
Giao trinh 8051.doc
Giao trinh 8051.docGiao trinh 8051.doc
Giao trinh 8051.doc
 
Cac lenh lap trinh ladder
Cac lenh lap trinh ladderCac lenh lap trinh ladder
Cac lenh lap trinh ladder
 
Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200
Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200
Đồ án Điều khiển và giám sát dây chuyền chiết rót sử dụng PLC s7 - 1200
 
Mô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiềuMô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiều
 
Bai giang-vhdl
Bai giang-vhdlBai giang-vhdl
Bai giang-vhdl
 
Động cơ AC servo.pptx
Động cơ AC servo.pptxĐộng cơ AC servo.pptx
Động cơ AC servo.pptx
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
 
Chuong1 tổng quan 8051
Chuong1 tổng quan 8051Chuong1 tổng quan 8051
Chuong1 tổng quan 8051
 
Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...
Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...
Hệ thống đo, giám sát và điều khiển các thông số môi trường trong nhà trồng n...
 
Đề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAY
Đề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAYĐề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAY
Đề tài: Thiết kế bộ băm xung áp một chiều có đảo chiều, HAY
 
ĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.doc
ĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.docĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.doc
ĐỒ ÁN - Lập trình PIC16F877A điều khiển tốc độ động cơ DC.doc
 
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
 
Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
 

Viewers also liked

Lập trình C cơ bản cho vi điều khiển
Lập trình C cơ bản cho vi điều khiểnLập trình C cơ bản cho vi điều khiển
Lập trình C cơ bản cho vi điều khiển
Mr Giap
 
THỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN Z
THỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN ZTHỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN Z
THỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN Z
Điện Tử Bách Khoa
 
Tính toán điện trở cho led
Tính toán điện trở cho ledTính toán điện trở cho led
Tính toán điện trở cho ledtrungnb22
 
Giáo trình Lập trình C căn bản - Aptech
Giáo trình Lập trình C căn bản - AptechGiáo trình Lập trình C căn bản - Aptech
Giáo trình Lập trình C căn bản - AptechMasterCode.vn
 
Hướng dẫn sửa chữa bếp từ trong thực tế
Hướng dẫn sửa chữa bếp từ trong thực tếHướng dẫn sửa chữa bếp từ trong thực tế
Hướng dẫn sửa chữa bếp từ trong thực tế
Điện Tử Bách Khoa
 
ĐIỆN TỬ CƠ BẢN NÂNG CAO
ĐIỆN TỬ CƠ BẢN NÂNG CAOĐIỆN TỬ CƠ BẢN NÂNG CAO
ĐIỆN TỬ CƠ BẢN NÂNG CAO
Điện Tử Bách Khoa
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52
Mr Giap
 
Chuong2 cấu trúc phần cứng 8051
Chuong2 cấu trúc phần cứng 8051Chuong2 cấu trúc phần cứng 8051
Chuong2 cấu trúc phần cứng 8051
Đinh Công Thiện Taydo University
 
BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)
BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)
BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)
Hau Cao Trung
 
Các cấu trúc lệnh trong C
Các cấu trúc lệnh trong CCác cấu trúc lệnh trong C
Các cấu trúc lệnh trong C
pnanhvn
 
Bai Tap Vi Xu Ly
Bai Tap Vi Xu LyBai Tap Vi Xu Ly
Bai Tap Vi Xu Ly
guestb10ee52
 
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản  - linh kiện điện tửGiáo trình tiếng việt điện tử cơ bản  - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
Huytraining
 
Tong hop tai lieu bep tu
Tong hop tai lieu bep tuTong hop tai lieu bep tu
Tong hop tai lieu bep tu
123thue
 
Bài tập mẫu C và C++ có giải
Bài tập mẫu C và C++ có giảiBài tập mẫu C và C++ có giải
Bài tập mẫu C và C++ có giải
Trung Thanh Nguyen
 
[Share] tổng hợp các bài tập c căn bản
[Share] tổng hợp các bài tập c căn bản[Share] tổng hợp các bài tập c căn bản
[Share] tổng hợp các bài tập c căn bảnKhong Biet Khong Quen
 
Chương 5: Khối thu phát
Chương 5: Khối thu phátChương 5: Khối thu phát
Chương 5: Khối thu phát
viendongcomputer
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Ky Nguyen Ad
 

Viewers also liked (20)

Lập trình C cơ bản cho vi điều khiển
Lập trình C cơ bản cho vi điều khiểnLập trình C cơ bản cho vi điều khiển
Lập trình C cơ bản cho vi điều khiển
 
THỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN Z
THỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN ZTHỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN Z
THỰC HÀNH ĐIỆN TỬ TỪ A ĐẾN Z
 
Các loại ic
Các loại icCác loại ic
Các loại ic
 
880 linh kien_dien_tu
880 linh kien_dien_tu880 linh kien_dien_tu
880 linh kien_dien_tu
 
Tính toán điện trở cho led
Tính toán điện trở cho ledTính toán điện trở cho led
Tính toán điện trở cho led
 
Cac mach dien hay
Cac mach dien hayCac mach dien hay
Cac mach dien hay
 
Giáo trình Lập trình C căn bản - Aptech
Giáo trình Lập trình C căn bản - AptechGiáo trình Lập trình C căn bản - Aptech
Giáo trình Lập trình C căn bản - Aptech
 
Hướng dẫn sửa chữa bếp từ trong thực tế
Hướng dẫn sửa chữa bếp từ trong thực tếHướng dẫn sửa chữa bếp từ trong thực tế
Hướng dẫn sửa chữa bếp từ trong thực tế
 
ĐIỆN TỬ CƠ BẢN NÂNG CAO
ĐIỆN TỬ CƠ BẢN NÂNG CAOĐIỆN TỬ CƠ BẢN NÂNG CAO
ĐIỆN TỬ CƠ BẢN NÂNG CAO
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52
 
Chuong2 cấu trúc phần cứng 8051
Chuong2 cấu trúc phần cứng 8051Chuong2 cấu trúc phần cứng 8051
Chuong2 cấu trúc phần cứng 8051
 
BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)
BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)
BÀI GIẢNG SỬA CHỮA BOARD MÁY LẠNH 2 CỤM (PHẦN CƠ BẢN)
 
Các cấu trúc lệnh trong C
Các cấu trúc lệnh trong CCác cấu trúc lệnh trong C
Các cấu trúc lệnh trong C
 
Bai Tap Vi Xu Ly
Bai Tap Vi Xu LyBai Tap Vi Xu Ly
Bai Tap Vi Xu Ly
 
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản  - linh kiện điện tửGiáo trình tiếng việt điện tử cơ bản  - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
 
Tong hop tai lieu bep tu
Tong hop tai lieu bep tuTong hop tai lieu bep tu
Tong hop tai lieu bep tu
 
Bài tập mẫu C và C++ có giải
Bài tập mẫu C và C++ có giảiBài tập mẫu C và C++ có giải
Bài tập mẫu C và C++ có giải
 
[Share] tổng hợp các bài tập c căn bản
[Share] tổng hợp các bài tập c căn bản[Share] tổng hợp các bài tập c căn bản
[Share] tổng hợp các bài tập c căn bản
 
Chương 5: Khối thu phát
Chương 5: Khối thu phátChương 5: Khối thu phát
Chương 5: Khối thu phát
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr
 

Similar to 8051 Danh Cho Nguoi Chua Biet Gi

Chuong 2 tap-lenh_plc_s7_200
Chuong 2 tap-lenh_plc_s7_200Chuong 2 tap-lenh_plc_s7_200
Chuong 2 tap-lenh_plc_s7_200yeuamnhac83
 
Tai lieu hd_tttn_2006
Tai lieu hd_tttn_2006Tai lieu hd_tttn_2006
Tai lieu hd_tttn_2006yeuamnhac83
 
Os Capouchtutorial
Os CapouchtutorialOs Capouchtutorial
Os Capouchtutorialoscon2007
 
Cad cam trong thiet ke va che tao - autocad
Cad cam trong thiet ke va che tao - autocadCad cam trong thiet ke va che tao - autocad
Cad cam trong thiet ke va che tao - autocad
Nguyễn Cung
 
Cad cam Trong thiết kế và chế tạo
Cad cam Trong thiết kế và chế tạoCad cam Trong thiết kế và chế tạo
Cad cam Trong thiết kế và chế tạo
Gai Viet Xinh
 
Cad cam trong-thiet_ke_va_che_tao
Cad cam trong-thiet_ke_va_che_taoCad cam trong-thiet_ke_va_che_tao
Cad cam trong-thiet_ke_va_che_taoHien Dinh
 
Steganography: Hiding your secrets with PHP
Steganography: Hiding your secrets with PHPSteganography: Hiding your secrets with PHP
Steganography: Hiding your secrets with PHP
Raul Fraile
 
Bt0064 logic design assignment-feb-11
Bt0064 logic design assignment-feb-11Bt0064 logic design assignment-feb-11
Bt0064 logic design assignment-feb-11
SMUGuru
 
4 autocad chotudonghoathietke_1744
4 autocad chotudonghoathietke_17444 autocad chotudonghoathietke_1744
4 autocad chotudonghoathietke_1744Thế Anh Nguyễn
 
Tailieu.vncty.com auto cad cho tự động hóa thiết kế - nguyễn văn hiến
Tailieu.vncty.com   auto cad cho tự động hóa thiết kế - nguyễn văn hiếnTailieu.vncty.com   auto cad cho tự động hóa thiết kế - nguyễn văn hiến
Tailieu.vncty.com auto cad cho tự động hóa thiết kế - nguyễn văn hiến
Trần Đức Anh
 
Lab1
Lab1Lab1
Making multiplayer game with Elixir and Elm
Making multiplayer game with Elixir and ElmMaking multiplayer game with Elixir and Elm
Making multiplayer game with Elixir and Elm
netzke
 
Micro controller(pratheesh)
Micro controller(pratheesh)Micro controller(pratheesh)
Micro controller(pratheesh)Pratheesh Pala
 
ELK Presentation Final V1
ELK Presentation Final V1ELK Presentation Final V1
ELK Presentation Final V1Jon Hammant
 
DOXLON November 2016 - ELK Stack and Beats
DOXLON November 2016 - ELK Stack and Beats DOXLON November 2016 - ELK Stack and Beats
DOXLON November 2016 - ELK Stack and Beats
Outlyer
 
Micro c lab4(keypad)
Micro c lab4(keypad)Micro c lab4(keypad)
Micro c lab4(keypad)
Mashood
 
01.introduction.ppt
01.introduction.ppt01.introduction.ppt
01.introduction.ppt
hesam ahmadian
 
4autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp014autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp01
lekytho
 
4autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp014autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp01
lekytho
 

Similar to 8051 Danh Cho Nguoi Chua Biet Gi (20)

Chuong 2 tap-lenh_plc_s7_200
Chuong 2 tap-lenh_plc_s7_200Chuong 2 tap-lenh_plc_s7_200
Chuong 2 tap-lenh_plc_s7_200
 
Tai lieu hd_tttn_2006
Tai lieu hd_tttn_2006Tai lieu hd_tttn_2006
Tai lieu hd_tttn_2006
 
Os Capouchtutorial
Os CapouchtutorialOs Capouchtutorial
Os Capouchtutorial
 
Cad cam trong thiet ke va che tao - autocad
Cad cam trong thiet ke va che tao - autocadCad cam trong thiet ke va che tao - autocad
Cad cam trong thiet ke va che tao - autocad
 
Cad cam Trong thiết kế và chế tạo
Cad cam Trong thiết kế và chế tạoCad cam Trong thiết kế và chế tạo
Cad cam Trong thiết kế và chế tạo
 
Cad cam trong-thiet_ke_va_che_tao
Cad cam trong-thiet_ke_va_che_taoCad cam trong-thiet_ke_va_che_tao
Cad cam trong-thiet_ke_va_che_tao
 
Steganography: Hiding your secrets with PHP
Steganography: Hiding your secrets with PHPSteganography: Hiding your secrets with PHP
Steganography: Hiding your secrets with PHP
 
Bt0064 logic design assignment-feb-11
Bt0064 logic design assignment-feb-11Bt0064 logic design assignment-feb-11
Bt0064 logic design assignment-feb-11
 
4 autocad chotudonghoathietke_1744
4 autocad chotudonghoathietke_17444 autocad chotudonghoathietke_1744
4 autocad chotudonghoathietke_1744
 
Tailieu.vncty.com auto cad cho tự động hóa thiết kế - nguyễn văn hiến
Tailieu.vncty.com   auto cad cho tự động hóa thiết kế - nguyễn văn hiếnTailieu.vncty.com   auto cad cho tự động hóa thiết kế - nguyễn văn hiến
Tailieu.vncty.com auto cad cho tự động hóa thiết kế - nguyễn văn hiến
 
Lab1
Lab1Lab1
Lab1
 
1mpmc
1mpmc 1mpmc
1mpmc
 
Making multiplayer game with Elixir and Elm
Making multiplayer game with Elixir and ElmMaking multiplayer game with Elixir and Elm
Making multiplayer game with Elixir and Elm
 
Micro controller(pratheesh)
Micro controller(pratheesh)Micro controller(pratheesh)
Micro controller(pratheesh)
 
ELK Presentation Final V1
ELK Presentation Final V1ELK Presentation Final V1
ELK Presentation Final V1
 
DOXLON November 2016 - ELK Stack and Beats
DOXLON November 2016 - ELK Stack and Beats DOXLON November 2016 - ELK Stack and Beats
DOXLON November 2016 - ELK Stack and Beats
 
Micro c lab4(keypad)
Micro c lab4(keypad)Micro c lab4(keypad)
Micro c lab4(keypad)
 
01.introduction.ppt
01.introduction.ppt01.introduction.ppt
01.introduction.ppt
 
4autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp014autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp01
 
4autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp014autocadchotudonghoathietke1744 101103233741-phpapp01
4autocadchotudonghoathietke1744 101103233741-phpapp01
 

Recently uploaded

Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 

Recently uploaded (20)

Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 

8051 Danh Cho Nguoi Chua Biet Gi

  • 1. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài m ñ u GI I THI U V VI ðI U KHI N 8051 A. M t con chip AT89C51: Như các b n th y trên hình: - Các chân P0.0 ñ n P0.7,( 39-32 ) P1.0 ñ n P1.7,( 1-8 ) P2.0 ñ n P2.7,( 21-28 ) P3.0 ñ n P3.7,( 10-17 ) Là các c ng xu t nh p. ðó là nơi ñưa tín hi u vào VðK và nơi VðK xu t tín hi u ra. - Chân RST(9): là chân reset. Khi chân này ñư c n thì các thanh ghi h th ng s ñư c thi t l p l i tr ng thái ban ñ u. - Các chân Vcc(40) và GND(20): là 2 chân c p ngu n cho VðK. Vcc m c cao 5V. GND m c th p 0V. - Hai chân XTAL1 và XTAL2 là hai chân cung c p xung dao ñ ng cho VðK. Thư ng là n i v i th ch anh có t n s 12 MHz. Trên ñây là m t s ñ c ñi m c n lưu ý v c u trúc chân c a con chip AT89C51. Các b n nên nh k ñ ti n cho vi c l p trình sau này. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 2. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com * N p chương trình cho VðK. Trư c tiên chúng ta vi t trình chương trình ch y cho VðK. B n có th s d ng Notepad c a Windows hay ph n n m 8051-IDE (t i trên m ng - vô Google mà tìm). Sau ñó ch y chương trình n p (EZ31) và dùng b n p n p vào VðK. B. Nó ho t ñ ng như th nào? Trư c tiên chúng ta hãy ghi nh m t s khái ni m. - Tín hi u : trong VðK tín hi u có nghĩa là m t s thay ñ i v ñi n th hay m c tr ng thái c a m t hay nhi u bit. Ví d : Có m t m ch ñi n như hình v . - Khi ta chưa ñóng khóa k1 thì chân P1.0 c a VðK có ñi n th 0V( m c th p). - Khi ta ñóng khóa k1 thì chân P1.0 c a VðK có ñi n th 5V( m c cao). S thay ñ i ñi n th ñó là m t tín hi u. M i chân c a VðK là m t bit, g m 2 m c tr ng thái là “cao và th p”. Tám chân cùng lo i t o nên 1 c ng (8 bit). VD : c ng P1 bao g m 8 chân t P1.0 ñ n P1.7 c ng P0 bao g m 8 chân t P0.0 ñ n P0.7 - Thanh ghi: M i thanh ghi là m t ô nh 8 bit. VðK cung c p cho chúng ta 8 thanh ghi m c ñ nh là t R0 ñ n R7. Ngoài ra còn có m t s nh ng thanh ghi ñ c bi t khác như : TMOD/TCON : là nh ng thanh ghi c a b ñ nh th i. Các c ng P0 ñ n P3 cũng là nh ng thanh ghi xu t nh p.v.v. Có nh ng thanh ghi có ñ a ch bit c th , có nh ng thanh ghi thì không. - ð a ch bit: m i thanh ghi ñư c c u thành t 8 bit. Có nh ng thanh ghi có ch c năng ñ c bi t và m i bit c a nó ñ m nh n 1 ch c năng khác nhau. Chúng ta có th thay ñ i m c tr ng thái c a t ng bit thay vì ph i tác ñ ng lên c thanh ghi. ði u ñó s giúp cho vi c x lý tín hi u tr nên d dàng hơn. Thao tác l p trình tr nên ñơn gi n hơn.” Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 3. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com - D li u trong m i thanh ghi là m t con s t 00H~FFH (theo h hexa) hay t 00000000B ñ n 11111111B( theo h nh phân). Như các b n th y các s trong h nh phân có 8 ch s tư ng trưng cho 8 bit c a m i thanh ghi. M i bit có 2 tr ng thái ng v i 2 s là 0-m c th p và 1-m c cao. Giá tr hexa ch ng qua ch là m t cách vi t g n c a nh ng ngư i ñã quen v i công vi c l p trình. Chúng ta có th chuy n t nh phân sang hexa m t cách d dàng nh máy tính. Vì sao vi t hexa l i d hơn vi t nh phân. b i vì trong l p trình VðK d li u n p cho m i thanh ghi ñ c bi t là c ñ nh ng v i m i ch c năng khác nhau.Vì v y khi quen r i b n vi t b ng hexa s nhanh g n hơn. Chúng ta cũng có th s d ng s th p phân. VðK ho t ñ ng như th nào??? Khi nh n ñư c m t tín hi u t bên ngoài. Tín hi u ñó có th t công t c ho c c m bi n. Lúc ñó VðK s x lí theo các chương trình mà ta ñã l p s n ng v i tín hi u ñó. Và k t qu là ta s quy ñ nh cho VðK ñưa ra nh ng tín hi u tương ng nh m gi i quy t tình hu ng. M t ñi u hi n nhiên là nh ng tình hu ng y ta ñã d tính trư c và l p s n chương trình ñ gi i quy t. N u không VðK không th t x lý ñư c. Nó ch bi t ch y theo ñúng nh ng gì chúng ta ñã l p trình cho nó. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 4. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài 2 RAM VÀ CÁC THANH GHI ð C BI T ðây là vùng RAM ña m c ñích. ðây là các thanh ghi có ch c năng ñ c bi t Như ñã ñ c p bài m ñ u, các thanh ghi ñ c bi t mang ch c năng khác nhau, chúng ñư c c u t o t 8 bit, và như trên chúng ta có th l y d li u tr c ti p t ñ a ch bit ho c thông qua tên g i c a c a chúng. Các thanh ghi ñ c bi t n m v trí t 80H ñ n FFH. Trong các thanh ghi ñó chúng ta hãy quan tâm t i các thanh ghi c a b ñ nh th i: TMOD là thanh ghi ch n ch ñ ñ nh th i. TCON (ñ nh ñ a ch t ng bit) là thanh ghi ñi u khi n ch ñ ñ nh th i. TL0 - TH0 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 0. TL1 - TH1 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 1. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 5. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài 3 CÁC L NH THƯ NG G P ð L P TRÌNH ROBOT ð i v i ho t ñ ng robocon, l p trình VðK g n như bó g n trong m t s câu l nh thư ng g p sau ñây: 1. L nh MOV - C u trúc: MOV ñích,ngu n - Ch c năng: Chuy n d li u t ngu n vào ñích và thoát kh i câu l nh. - Lưu ý: ðích là các thanh ghi, ngu n có th là thanh ghi cũng có th là giá tr tr c ti p ho c gián ti p. N u ngu n là d li u tr c ti p thì ph i ghi theo c u trúc: MOV ñích,#d li u tr c ti p. N u là s hexa thì ph i vi t #0(d li u d ng hexa). Vd #0FFH Nêu là s nh phân ph i vi t #(d li u d ng bit)B. Vd #11111111B N u là s th p phân ph i vi t #(d li u d ng th p phân. Vd #255 2. L nh JB - C u trúc: JB bit,nhãn - Ch c năng: Ki m tra m c tr ng thái c a bit. N u là m c th p thì thoát kh i câu l nh. N u là m c cao thì nh y ñ n v trí c a nhãn. - Lưu ý: Nhãn là tên g i ñánh d u m t v trí nào ñó trong chương trình l p trình mà chúng ta quy ñ nh cho nó. 3. L nh JNB - C u trúc: JNB bit,nhãn - Ch c năng: Ki m tra m c tr ng thái c a bit. N u là m c cao thì thoát kh i câu l nh. N u là m c th p thì nh y ñ n v trí c a nhãn. 4. L nh CJNE - C u trúc: CJNE ñích,ngu n,nhãn - Ch c năng: So sánh d li u c a ngu n v i ñích. N u không b ng nhau thì nh y ñ n v trí c a nhãn. N u b ng thì thoát kh i câu l nh. 5. L nh DJNZ - C u trúc: DJNZ thanh ghi,nhãn - Ch c năng: So sánh giá tr thanh ghi v i 0. N u không b ng thì gi m giá tr thanh ghi ñi 1 và nh y t i v trí c a nhãn. N u b ng 0 thì thoát ra kh i câu l nh. - Lưu ý: Khi l p trình chúng ta nên ñ cho thanh ghi có gia tr dương. 6. L nh SETB - C u trúc: SETB bit - Ch c năng: Thi t l p m c tr ng thái cao cho bit và thoát kh i câu l nh. - Lưu ý: Khi bit ñang m c 0 (th p) thì ñưa lên m c 1(cao). Còn ñang m c 1 thì gi nguyên. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 6. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com 7. L nh CLR - C u trúc: CLR bit - Ch c năng: Thi t l p m c tr ng thái 0 cho bit và thoát kh i câu l nh. - Lưu ý: Khi bit ñang m c 1thì ñưa xu ng m c 0. Còn ñang m c 0 thì gi nguyên. Có th thay bit b ng thanh ghi và khi ñó t t c các bit c a thanh ghi ñ u ñư c ñưa xu ng m c 0 . 8. L nh INC - C u trúc: INC thanh ghi - Ch c năng: Tăng giá tr thanh ghi lên 1 và thoát kh i câu l nh. - Lưu ý: Khi l p trình chúng ta nên ñ cho thanh ghi có gia tr dương. 9. L nh LJMP - C u trúc: LJMP nhãn - Ch c năng: Nh y t i v trí c a nhãn. - Lưu ý: Có th nh y trong toàn chương trình. 10. L nh SJMP - C u trúc: SJMP nhãn - Ch c năng: Nh y t i v trí c a nhãn. - Lưu ý: Có th nh y trong ph m vi 128 byte trư c câu l nh và 127 byte sau l nh. 11. L nh RET - C u trúc: RET - Ch c năng: K t thúc m t chương trình con và ñưa con tr tr v v trí lúc g i chương trình con. 12. L nh LCALL - C u trúc: LCALL nhãn - Ch c năng: G i m t chương trình con b t ñ u t v trí nhãn. - Lưu ý: Có th g i trong toàn chương trình. Các b n nên ñ c thêm trong sách tham kh o ñ bi t thêm v s byte và s chu kỳ máy c a m i câu l nh. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 7. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài 4 TR NG THÁI KHI RESET 1. VðK s b t ñ u ho t ñ ng khi chúng ta c p ngu n cho nó b ng cách ñóng khóa K1. Khi ñó t t c các thanh ghi s ñư c kh i t o tr ng thái.(Xem trong ph n reset) con tr c a chương trình s ñư c ñ t v trí th p nh t c a RAM - 00H. 2. VðK s reset l i h th ng, nghĩa là thi t l p l i tr ng thái ban ñ u lúc kh i ñ ng cho t t c các thanh ghi. và ñưa con tr tr l i v trí 00H. Mu n reset ñúng ta ph i ñóng khóa K2 lâu hơn 2 chu kỳ máy. B ng tr ng thái khi reset: 3. Như chúng ta th y b ng Reset, tr ng thái c a các c ng xu t nh p ( c ng P0~P3 ) ñ u là FFH, nghĩa là t t c các chân trong c ng ñ u tr ng thái m c 1. Tuy nhiên n u b t kỳ chân nào trong các c ng n i v i m t m ch ngoài h - nghĩa là ph thu c vào các ñi u ki n bên ngoài, thì tr ng thái c a chân ñó s là tr ng thái c a tín hi u mà m ch ngoài ñưa vào. N u m ch ngoài ph thu c vào tín hi u c a VðK thì tr ng thái c a chân ra s là tr ng thái mà VðK xu t ra. Trong hình miêu t trên chân P0.1 s có tr ng thái là m c 0, vì K3 h . Còn chân P2.0 thì có tr ng thái ph thu c vào VðK. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 8. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài 5 CÁC THÀNH PH N C A M T CHƯƠNG TRÌNH L P TRÌNH 1. C u trúc m t chương trình l p trình. ORG ....(V trí b t ñ u c a con tr chương trình) ... (ðo n chương trình chính) ... (Các chương trình con) ... END (k t thúc chương trình) 2. Con tr chương trình. ðó là v trí mà VðK ñang th c thi t i ñó. Thông thư ng khi b t ñ u m t chương trình thì con tr luôn v trí th p nh t 00H. tuy nhiên chúng ta có th quy ñ nh cho nó b t ñ u làm vi c t i m t v trí khác.Chúng ta căn c vào ñ a ch trên RAM ñ ch n vùng làm vi c. Vd: ORG 00H -----(b t ñ u t v trí 00H) ORG 0030H -----(b t ñ u t v trí 30H) v.v. 3. Nhãn. Nhãn là tên g i ñánh d u m t v trí nào ñó trong chương trình l p trình mà chúng ta quy ñ nh cho nó. VD: ORG 00H ----------(con tr chương trình b t ñ u v trí 00H) LJMP MAIN ----------(nh y t i v trí có nhãn là MAIN) ORG 0030H ----------(v trí b t ñ u chương trình chính MAIN) MAIN: MOV R1,#10----------(n p cho R1 giá tr là 10.) LAP1: DJNZ R1,LAP1 END--------------------(K t thúc chương trình.) Trong chương trình trên nhãn là MAIN và LAP1. Khi nhãn ñư c g i thì con tr chương trình s nh y t i v trí c a nhãn ñ th c thi câu l nh t i v trí ñó. 4. Chương trình con. C u trúc chương trình con. Nhãn: ................. Các câu l nh ..... RET Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 9. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com VD: ORG 00H LJMP MAIN ORG 0030H MAIN: MOV R1,#10 LCALL LAP1-------------g i chương trình con LAP1: DJNZ R1,LAP1 RET -----------------------k t thúc chương trình con END Chương trình con có th ñ t bên ngoài chương trình chính, trư c ho c sau. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 10. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài 6 HO T ð NG ð NH TH I 1. Ho t ñ ng ñ nh th i: Là s ki m soát th i gian ñ th c thi các câu l nh trong quá trình x lý c a VðK. * M t s khái ni m: - T n s dao ñ ng: t n s c a VðK luôn b ng 1/12 t n s c a th ch anh g n trong m ch. (thư ng là lo i 12MHz) - Chu kỳ máy: T=1/f .Là th i gian làm vi c c a 1 dao ñ ng máy Gi s t n s th ch anh là 12 MHz. ta có t n s VðK f = 12 MHz/12 = 1 MHz. =1000000 Hz và khi ñó chu kỳ máy T = 1/1000000 = 0.000001 s = 1 micro giây. - ð th c hi n m i câu l nh VðK ñ u ph i t n m t th i gian nh t ñ nh ng v i m i câu l nh ñó. ðó là s chu kỳ máy c a m i câu l nh. - Gi a thu t toán l p trình và th c t có m t s khác bi t r t l n. ðó chính là th i gian. VðK ch y v i t c ñ micro giây, trong khi th c t cùng l m là chúng ta x lý công vi c trong kho ng 0.1 giây là nhanh nh t có th . Chính vì th chúng ta khi l p trình ph i có công ño n x lý th i gian b ng cách t o tr cho VðK ñ kéo dài th i gian cho kh p v i nh ng thao tác trên th c t . 2. T o tr : Ch ng h n yêu c u chúng ta c n m t kho ng th i gian tr là 200 micro giây. V y v i câu l nh MOV (1 chu kỳ máy) chúng ta ph i vi t 200 câu l nh liên ti p. M t công vi c g n như không th . V n ñ ñ t ra là chúng ta ph i xây d ng m t thu t toán t o tr sao cho d dàng cho ngư i l p trình nh t.Và sau ñây là 1 thu t toán: VD: ORG 00H LJMP MAIN ORG 0030H MAIN: MOV R1,#100-------------Gán cho thanh ghi R1 giá tr là 100. LAP1: DJNZ R1,LAP1------------(So sánh giá tr thanh ghi R1 v i 0, N u không b ng thì gi m R1 ñi 1, r i nh y t i nhãn LAP1Công vi c l i ñư c ti p t c cho t i khi R1=0) END Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 11. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Như v y v i câu l nh DJNZ (2 chu kỳ máy) VðK ñã l p l i công vi c ki m tra R1=0 t i 100 l n. t ng c ng s chu kỳ máy mà VðK ñã th c hi n là T = 2x100 = 200 chu kỳ = 200 micro giây. ðó là thu t toán t o tr . ð i v i nh ng kho ng th i gian tr quá l n chúng ta ph i s d ng nhi u vòng l p l ng nhau. B i vì giá tr thanh ghi ch ñư c phép ñ t t i 255. VD: ORG 00H LJMP MAIN ORG 0030H MAIN: MOV R1,#100 LAP1: MOV R2,#100 LAP2: DJNZ R2,LAP2 DJNZ R1,LAP1 END Ta nh n th y: T i LAP2 VðK ñã th c hi n 100 chu kỳ máy. Và c m i l n R2=0 thì ki m tra R1, cho ñ n khi R1=0. Như v y câu l nh DJNZ R2,LAP2 ñã ñư c l p 100x100=10000 l n => 20000 chu kỳ máy = 0.02s. T t nhiên t ng s chu kỳ máy c a c thu t toán 1 + 300 + 20000=200301 chu kỳ. tuy nhiên chúng ta có th b qua 301 chu kỳ vì nó quá nh so v i 20000. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 12. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Bài 7 B ð NH TH I Khái ni m b ñ nh th i: Nói m t cách nôm na thì b ñ nh th i là m ch chia t n s c a VðK cho 2n l n. V i n là s bit c a b ñ nh th i. V y th i gian c a m t chu kỳ ñ nh th i lúc này là: T = 1/(12MHz/(12*2^n )) VðK AT89C51 x d ng 2 b ñ nh th i. C u t o: VðK AT89C51 cung c p cho chúng ta 2 b ñ nh th i 0 và 1. B ñ nh th i ñư c truy xu t b ng cách s d ng 6 thanh ghi ñ c bi t là: - TMOD là thanh ghi ch n ch ñ ñ nh th i. - TCON (ñ nh ñ a ch t ng bit) là thanh ghi ñi u khi n ch ñ ñ nh th i. - TL0 - TH0 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 0. - TL1 - TH1 là 2 thanh ghi quy ư c byte th p và byte cao c a b ñ nh th i 1. A. Thanh ghi TMOD.(Time Mode register): C u t o b i hai nhóm 4 bit. Bit Tên B ñ nh th i Mô t 0 M0 0 Bit ch n ch ñ th 2 1 M1 0 Bit ch n ch ñ th 1 2 C/T 0 Bit ch n ch c năng ñ m ho c ñ nh th i cho b ñ nh th i 0 3 GATE 0 Bit ñi u khi n c ng cho b ñ nh th i 0 4 M0 1 Bit ch n ch ñ th 2 5 M1 1 Bit ch n ch ñ th 1 6 C/T 1 Bit ch n ch c năng ñ m ho c ñ nh th i cho b ñ nh th i 1 7 GATE 1 Bit ñi u khi n c ng cho b ñ nh th i 1 B ng mô t ch ñ : M1 M0 Ch ñ Mô t 0 0 0 Ch ñ ñ nh th i 13 bit 0 1 1 Ch ñ ñ nh th i 16 bit 1 0 2 Ch ñ t ñ ng n p l i 8 bit 1 1 3 Ch ñ ñ nh th i chia s . ñây chúng ta ch nghiên c u ch ñ ñ nh th i 16 bit.(Các ch ñ khác mong các ban xem tài li u) Thanh ghi 16 bit c a nó ñư c c u t o b i 2 thanh ghi 8 bit là TLx/THx ghép l i v i nhau. x là tên c a b ñ nh th i (1 ho c 0). Giá tr thanh ghi TLx ñư c l y làm byte th p và giá tr thanh ghi THx l y làm byte cao. VD : TL1 / TH1 00H / FFH => giá tr thanh ghi 16 bit = FF00H. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 13. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com Ho t ñ ng: B ñ nh th i 16 bit ho t ñ ng gi ng như m t b ñ m. T c là khi ch y b ñ nh th i VðK s b t ñ u ñ m t giá tr mà chúng ta n p vào thanh ghi 16 bit c a nó cho ñ n giá tr FFFFH = 65536. Và khi ñó VðK s b t m t bit (g i là c tràn) t 0 lên 1 báo hi u ñã ñ m xong hay nói cách khác là tràn b ñ nh th i. B. Thanh ghi TCON : ñây chúng ta ch quan tâm ñ n 4 bit cao c a thanh hi TCON. Còn 4 bit th p chúng quy u c là = 0. Bit Tên Mô t 7 TF1 C tràn c a b ñ nh th i 1 6 TF1 Bit ñi u khi n b ñ nh th i 1. M c 1 là b t. M c 0 là d ng 5 TF0 C tràn c a b ñ nh th i 0 4 TF0 Bit ñi u khi n b ñ nh th i 0. M c 1 là b t. M c 0 là d ng Như v y gi s mu n kh i ñ ng b ñ nh th i 1 chúng ta vi t l nh SETB TR1 C. C u trúc thu t toán vi t cho b ñ nh th i: MOV TMOD,#01H LAP: MOV TH0,#d li u MOV TL0,#d li u SETB TR0 DEM: JNB TF0,DEM CLR TR0 CLR TF0 END Chúng ta có th l y d li u byte cao và th p ñ n p cho TL0 và TH0 như sau. - Xác ñ nh chúng ta c n tr là bao nhiêu chu kỳ máy. VD 10000 Chu kỳ. - L y 65536 - 10000 = 55536 => D8F0H. - V y TH0 = D8, TL0 = F0. Ngoài ra chúng ta còn có m t thu t toán n a ñ vi t cho b ñ nh th i. MOV TMOD,#01H MOV R1,#s l n l p l i LAP: MOV TH0,#HIGH(-s chu kỳ máy c n thi t) MOV TL0,#LOW(-s chu kỳ máy c n thi t) SETB TR0 DEM: JNB TF0,DEM CLR TR0 CLR TF0 DJNZ R1,LAP END Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com
  • 14. Vi ñi u khi n 8051 – Dành cho ngư i chưa bi t gì http://roboconsv.yourfreebb.com VD: Chúng ta mu n t o tr 1s = 100x104 chu kỳ máy. MOV TMOD,#01H MOV R1,#100 LAP: MOV TH0,#HIGH(-10000) MOV TL0,#LOW(-10000) SETB TR0 DEM: JNB TF0,DEM CLR TR0 CLR TF0 DJNZ R1,LAP END Ho c MOV TMOD,#01H MOV R1,#50 LAP: MOV TH0,#HIGH(-20000) MOV TL0,#LOW(-20000) SETB TR0 DEM: JNB TF0,DEM CLR TR0 CLR TF0 DJNZ R1,LAP END Lưu ý: TLx/THx không ñư c vư t quá 65536 = FFFFH. T i ñây là k t thúc chương trình h c. Các b n ch c n n m v ng các câu l nh và nguyên t c t o tr là ñã có th l p trình cho robocon ñư c r i, v n ñ còn l i là kh năng tư duy c a b n. Sưu t m: Cao Hoàng Long – CðT32 – CTU chlong.mechatronics@gmail.com