Giáo trình môn kỹ thuật vi điều khiển

Chia sẻ: Nguyễn Văn Tú Tú | Ngày: | Loại File: DOC | Số trang:0

0
116
lượt xem
47
download

Giáo trình môn kỹ thuật vi điều khiển

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

vi xử lý (VXL) là thuật ngữ được bắt nguồn từ tên gọi tiếng Anh là MICROPROCESSOR (MP) hoặc CENTRAL PROCESING UNIT (CPU). Trong mỗi hệ VXL, CPU luôn là thành phần quan trọng nhất, nó quản lý tất cả các hoạt động của hệ VXL và thực hiện các thao tác trên dữ liệu. Hầu hết các CPU chỉ bao gồm một tập các mạch Logic thực hiện liên tục 2 thao tác: tìm nạp lệnh và thực thi lệnh. CPU có khả năng hiểu và thực thi các lệnh dựa trên một tập các mã nhị phân, trong...

Chủ đề:
Lưu

Nội dung Text: Giáo trình môn kỹ thuật vi điều khiển

  1. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn Môc lôc   Trang Lêi giíi thiÖu 5   ¬ng 1 Ch   :   KiÕn tróc  hÖ Vi xö lý (VXL). 1.1. §¬n vÞ xö lý trung t©m (CPU). 6 1.2. Qu¸ tr×nh t×m n¹p lÖnh vµ thùc thi lÖnh cña CPU. 7 1.3. Bé nhí trung t©m cña hÖ VXL. 8 1.3.1. Bé nhí chØ ®äc. 8 1.3.2. Bé nhí truy cËp ngÉu nhiªn. 9 1.4. C¸c thiÕt bÞ xuÊt/nhËp. 9 1.5. CÊu tróc kªnh chung cña hÖ VXL. 9   ¬ng 2 Ch   .    Bé Vi ®iÒu khiÓn AT89C51 (80C51). 2.1. Giíi thiÖu chung. 12 2.2. Sù kh¸c nhau gi÷a bé VXL vµ bé Vi ®iÒu khiÓn (V§K). 12 2.3. S¬ ®å khèi. 13 2.4. S¬ ®å ch©n tÝn hiÖu cña 80C51/AT89C51. 15 2.5. Chøc n¨ng c¸c thµnh phÇn cña AT89C51. 17 2.5.1. C¸c thanh ghi chøc n¨ng ®Æc biÖt. 17   1 HT/2003 
  2. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 2.5.1.1. Thanh ghi ACC. 19 2.5.1.2. Thanh ghi B. 19 2.5.1.3. Thanh ghi SP. 19 2.5.1.4. Thanh ghi DPTR . 20 2.5.1.5. C¸c cæng vµo/ ra d÷ liÖu (Ports 0 to 3). 20 2.5.1.6. Thanh ghi SBUF . 20 2.5.1.7. C¸c Thanh ghi Timer. 20 2.5.1.8. C¸c thanh ghi ®iÒu khiÓn. 20 2.5.1.9. Thanh ghi PSW. 20 2.5.1.10. Thanh ghi PCON. 21 2.5.1.11. Thanh ghi IE. 22 2.5.1.12. Thanh ghi IP. 22 2.5.1.13. Thanh ghi TCON. 23 2.5.1.14. Thanh ghi TMOD. 23 2.5.1.15. Thanh ghi SCON. 24 2.5.2. Khèi t¹o thêi gian vµ bé ®Õm (Timer/Counter). 25 2.5.3. Bé nhí ch¬ng tr×nh vµ bé nhí d÷ liÖu néi tró. 28   2 HT/2003 
  3. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 2.5.3.1. Bé nhí ch¬ng tr×nh néi tró. 29 2.5.3.2. Bé nhí d÷ liÖu néi tró. 30 2.5.3.2.1. Vïng nhí 128 Byte thÊp. 30 2.5.3.2.2. Vïng nhí dµnh cho SFR. 31 2.5.3.2.3. C¸c lÖnh truy cËp bé nhí d÷ liÖu néi tró. 31 2.5.4. Bé nhí ch¬ng tr×nh vµ bé nhí d÷ liÖu ngo¹i tró. 34 2.5.4.1. Bé nhí ch¬ng tr×nh ngo¹i tró. 34 2.5.4.2. Bé nhí d÷ liÖu ngo¹i tró. 35 2.5.5. C¬ chÕ ng¾t trong On­chip AT89C51. 38 2.5.5.1. Ph©n lo¹i ng¾t trong On­chip. 38 2.5.5.2. C¸c bíc thùc hiÖn ng¾t. 39 2.5.5.3. Møc ng¾t u tiªn trong on­chip. 40 2.5.5.4. Nguyªn lý ®iÒu khiÓn ng¾t cña AT89. 40 2.5.5.4.1.C¸c ng¾t ngoµi. 42 2.5.5.4.2. VËn hµnh Single­Step. 42 2.5.6. Nguyªn lý truyÒn tin nèi tiÕp cña AT89C51. 43 2.5.6.1. Ph¬ng thøc truyÒn tin nèi tiÕp. 43   3 HT/2003 
  4. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 2.5.6.2. Liªn l¹c ®a xö lý . 44 2.5.6.3. C¸c tèc ®é Baud. 45 2.5.6.4. Sö dông Timer 1 ®Ó t¹o ra c¸c tèc ®é Baud . 45 2.5.6.5. Ho¹t ®éng cña chÕ ®é 0. 46 2.5.6.6. Ho¹t ®éng cña chÕ ®é 1. 48 2.5.6.7. Ho¹t ®éng cña chÕ ®é 2 vµ 3. 50 2.5.7. Nguyªn lý khëi ®éng cña On­chip AT89C51. 54 2.5.8. M¹ch dao ®éng. 57 2.5.9. ChÕ ®é nguån gi¶m vµ chÕ ®é nghØ. 58 2.5.11. B¶o vÖ ch¬ng tr×nh. 59   ¬ng 3 TËp lÖnh cña hä V§K AT89/80C51. Ch   : 3.1. Nhãm lÖnh di chuyÓn d÷ liÖu. 61 3.1.1. LÖnh MOV d¹ng Byte. 61 3.1.2. LÖnh MOV d¹ng Bit. 62 3.1.3. LÖnh MOV d¹ng Word. 63 3.1.4. LÖnh chuyÓn byte m∙ lÖnh. 63 3.1.5. LÖnh chuyÓn d÷ liÖu ra ngoµi. 64   4 HT/2003 
  5. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 3.1.6. LÖnh chuyÓn sè liÖu vµo ng¨n xÕp. 64 3.1.7. LÖnh chuyÓn sè liÖu ra khái ng¨n xÕp . 65 3.1.8. Ho¸n chuyÓn d÷ liÖu. 65 3.1.9. Ho¸n chuyÓn 4 bit thÊp. 66 3.2. Nhãm lÖnh tÝnh to¸n sè häc. 66 3.2.1. LÖnh thùc hiÖn phÐp céng. 66 3.2.2. LÖnh céng cã nhí. 67 3.2.3. LÖnh trõ cã mîn. 68 3.2.4. LÖnh t¨ng lªn 1 ®¬n vÞ. 68 3.2.5. LÖnh gi¶m 1 ®¬n vÞ. 69 3.2.6. LÖnh t¨ng con trá d÷ liÖu . 69 3.2.7. LÖnh thùc hiÖn phÐp nh©n. 70 3.2.8. LÖnh thùc hiÖn phÐp chia . 70 3.2.9. HiÖu chØnh sè thËp ph©n. 71 3.3. Nhãm lÖnh tÝnh to¸n logic. 71 3.3.1. LÖnh AND cho c¸c biÕn 1 byte. 72 3.3.2. LÖnh AND cho c¸c biÕn 1 bit. 72   5 HT/2003 
  6. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 3.3.3. LÖnh OR cho c¸c biÕn 1 byte. 73 3.3.4. LÖnh OR cho c¸c biÕn 1 bit. 73 3.3.5. LÖnh X­OR cho c¸c biÕn 1 byte. 74 3.3.6. LÖnh dÞch tr¸i thanh ghi A. 75 3.3.7. LÖnh dÞch tr¸i thanh ghi A cïng víi cê nhí. 75 3.3.8. LÖnh dÞch ph¶i thanh ghi A. 75 3.3.9. LÖnh dÞch ph¶i thanh ghi A cïng víi cê nhí. 76 3.3.10. LÖnh tr¸o ®æi néi dung hai nöa byte cña A. 76 3.4. Nhãm lÖnh rÏ nh¸nh ch¬ng tr×nh. 77 3.4.1. LÖnh gäi tuyÖt ®èi . 77 3.4.2. LÖnh gäi dµi. 78 3.4.3. LÖnh quay trë l¹i tõ ch¬ng tr×nh con. 79 3.4.4. LÖnh quay trë l¹i tõ ng¾t. 79 3.4.5. LÖnh nh¶y gi¸n tiÕp. 80 3.4.6. LÖnh nh¶y nÕu 1 bit ®îc thiÕt lËp. 81 3.4.7. LÖnh nh¶y nÕu 1 bit kh«ng ®îc thiÕt lËp. 81 3.4.8. LÖnh nh¶y nÕu 1 bit ®îc thiÕt lËp vµ xo¸ bit ®ã. 82   6 HT/2003 
  7. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 3.4.9. LÖnh nh¶y nÕu cê nhí ®îc thiÕt lËp. 83 3.4.10. LÖnh nh¶y nÕu cê nhí kh«ng ®îc thiÕt lËp. 83 3.4.11. LÖnh nh¶y nÕu thanh ghi A b»ng 0. 84 3.4.12. LÖnh nh¶y nÕu thanh ghi A kh¸c 0. 84 3.4.13. LÖnh nh¶y khi so s¸nh 2 to¸n h¹ng. 85 3.4.14. LÖnh gi¶m vµ nh¶y. 86 3.4.15. LÖnh t¹m ngõng ho¹t ®éng. 87 3.5. Nhãm lÖnh ®iÒu khiÓn biÕn logic. 88 3.5.1. LÖnh xo¸ bit. 88 3.5.2. LÖnh xo¸ thanh ghi tÝch luü. 88 3.5.3. LÖnh thiÕt lËp bit. 88 3.5.4. LÖnh lÊy bï cña bit. 89 3.5.5. LÖnh lÊy bï cña thanh ghi tÝch luü. 89   ¬ng 4 lËp tr×nh øng dông. Ch   : 4.1. Truy cËp d÷ liÖu víi RAM. 90 4.1.1. Truy cËp d÷ liÖu víi RAM néi tró   90 4.1.2. Truy cËp d÷ liÖu víi RAM ngo¹i tró   90   7 HT/2003 
  8. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 4.2. Hµm chê. 91 4.3. LËp tr×nh víi c¸c Bé Timer 91 4.4. LËp tr×nh víi c¸c ng¾t 93 4.4.1. LËp tr×nh víi c¸c ng¾t ngoµi 93 4.4.2. LËp tr×nh víi c¸c ng¾t Timer 93 4.5. §iÒu khiÓn ®éng c¬ 1 chiÒu. 94 Phô lôc A : Tra cøu nhanh tËp lÖnh B¶ng 1. C¸c lÖnh to¸n häc cña bé V§K hä ATMEL. 95 B¶ng 2. C¸c lÖnh chuyÓn ®æi d÷ liÖu ®Ó truy cËp vïng nhí  d÷ liÖu trong. 95 B¶ng 3. C¸c lÖnh sè häc. 96 B¶ng 4.  C¸c lÖnh ®¹i sè. 97 B¶ng  5.  C¸c   lÖnh   chuyÓn   ®æi   d÷   liÖu   ®Ó   truy   cËp  RAM  ngoµi. 97 B¶ng 6. C¸c lÖnh chuyÓn Byte m∙ lÖnh. 98 B¶ng   7.   C¸c   lÖnh   nh¶y   kh«ng   ®iÒu   kiÖn   trong   Flash  Microcontrollers. 98 B¶ng 8. C¸c lÖnh nh¶y cã ®iÒu kiÖn. 98   Phô lôc B :  c¸c hÖ thèng sè    1. B¶ng chuyÓn ®æi hÖ thËp ph©n/nhÞ ph©n 99   8 HT/2003 
  9. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 2. B¶ng m∙ thËp lôc ph©n 100 3. HÖ thèng sè cã dÊu 101 TµI liÖu tham kh¶o.……………………………………………… 102 Lêi giíi thiÖu Khoa   häc   kü   thuËt   ®ang   ngµy   cµng   ph¸t   triÓn  rÊt m¹nh mÏ, c¸c c«ng nghÖ míi thuéc c¸c lÜnh vùc  kh¸c nhau còng nh꠮㠮∙ ra ®êi nh»m ®¸p øng nhu  cÇu cña x∙ héi vµ kü thuËt Vi ®iÒu khiÓn còng n»m  trong sè ®ã. HiÖn nay kü thuËt Vi ®iÒu khiÓn ®∙  ®îc gi¶ng d¹y réng r∙i ë c¸c trêng §¹i häc vµ Cao  ®¼ng   trong   c¶   níc   nh»m   ®¸p   øng   nhu   cÇu   vÒ   ®iÒu  khiÓn,  ®o lêng vµ ®iÒu chØnh  cña c¸c d©y chuyÒn  c«ng nghiÖp. Qua qu¸ tr×nh tham gia gi¶ng d¹y t¹i  trêng §¹i häc SPKT Hng yªn, t¸c gi¶ ®∙ tËp trung  nghiªn cøu, tæng hîp vµ biªn so¹n  gi¸o tr×nh  kü   thuËt Vi ®iÒu khiÓn nh»m phôc vô c«ng viÖc gi¶ng  d¹y lÜnh vùc nµy t¹i trêng. Toµn bé néi dung gi¸o  tr×nh   ®îc   chia   lµm   2   phÇn.   PhÇn   1   bao   gåm   c¸c  kiÕn thøc c¬ b¶n vÒ phÇn cøng vµ c¸c tËp lÖnh cña  hä Vi ®iÒu khiÓn 80C51/ AT89C51. ë phÇn 2 t¸c gi¶  tËp   trung   tr×nh   bµy   phÇn   cøng   hä   Vi   ®iÒu   khiÓn  80C52/  AT89S8252  vµ kü thuËt  lËp  tr×nh  b»ng  hîp  ng÷.   §èi   tîng   cña   quyÓn   gi¸o   tr×nh   nµy   lµ   c¸c  sinh  viªn ngµnh  §iÖn,  §iÖn tö, C¬ ®iÖn tö, C«ng  nghÖ   th«ng   tin.   Tuy   nhiªn   ®Ó   tiÕp   thu   tèt   néi  dung   tõ   quyÓn   gi¸o   tr×nh   nµy,   ngêi   häc   cÇn   cã  kiÕn thøc vÒ kü thuËt sè, kü thuËt m¹ch ®iÖn tö    9 HT/2003 
  10. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn vµ ®∙ biÕt qua mét ng«n ng÷ lËp tr×nh cÊp cao nh  Pascal, C… MÆc   dï   ®∙   rÊt   cè   g¾ng   trong   qu¸   tr×nh   biªn  so¹n,   nhng   do   tr×nh   ®é   vµ   thêi  gian   cßn  bÞ  h¹n  chÕ   nªn   ch¾c   ch¾n   quyÓn   gi¸o   tr×nh   nµy   kh«ng  tr¸nh   khái   nh÷ng   thiÕu   sãt,   rÊt   mong   nhËn   ®îc  nh÷ng ý kiÕn ®ãng gãp, phª b×nh cña b¹n ®äc. Hng yªn, th¸ng 10 n¨m 2003            ¬ng 1 Ch   .  KiÕn tróc  hÖ VXL CPU Registers CU PC OUTPUT INPUT Interface ALU IR Interface ROM Program Memory RAM Data Memory H×nh1.1.  Kh¸i qu¸t chung vÒ  hÖ VXL   10 HT/2003 
  11. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 1.1. CPU(Central Processing Unit): Bé vi xö lý (VXL) lµ thuËt ng÷ ®îc b¾t nguån tõ tªn  gäi   tiÕng   Anh   lµ  Microprocessor  (MP)   hoÆc  central   procesing   unit  (CPU).  Trong   mçi   hÖ   VXL,   CPU   lu«n   lµ  thµnh phÇn quan träng nhÊt, nã qu¶n lý tÊt c¶ c¸c ho¹t  ®éng cña hÖ VXL vµ thùc hiÖn c¸c thao t¸c trªn d÷ liÖu.  HÇu hÕt c¸c CPU chØ bao gåm mét tËp c¸c m¹ch Logic thùc  hiÖn   liªn   tôc   2   thao   t¸c:  t×m   n¹p   lÖnh   vµ   thùc   thi   lÖnh.   CPU   cã   kh¶   n¨ng   hiÓu   vµ   thùc   thi   c¸c   lÖnh   dùa  trªn mét tËp c¸c m∙ nhÞ ph©n, trong ®ã mçi mét m∙ thùc  hiÖn mét thao t¸c nµo ®ã. C¸c lÖnh nµy bao gåm: ­ Nhãm lÖnh di chuyÓn d÷ liÖu (Mov,...). ­ Nhãm lÖnh sè häc (Mul, Div, Add, Subb,...).  ­ Nhãm lÖnh Logic (ANL, ORL, CPL, XRL,...). ­ Nhãm lÖnh rÏ nh¸nh ch¬ng tr×nh (Jmp, Call, ...). ­ Nhãm lÖnh ®iÒu khiÓn biÕn Logic (Setb, Clr,...).... C¸c nhãm lÖnh trªn ®îc biÓu thÞ bëi 1 tËp c¸c m∙ nhÞ  ph©n vµ gäi lµ tËp lÖnh. Mçi bé VXL (CPU) thêng bao gåm:  ­ C¸c   thanh   ghi  néi   (Registers):   cã  nhiÖm   vô  lu  gi÷  t¹m thêi c¸c th«ng tin, d÷ liÖu. ­ §¬n vÞ sè häc logic (Arithmetic Logic Unit ­ ALU):  Thùc   hiÖn   c¸c   thao   t¸c  trªn   c¸c   th«ng   tin   hay   d÷  liÖu ®∙ ®îc lu gi÷ t¹m thêi trong thanh ghi néi. ­ §¬n vÞ ®iÒu khiÓn (Control Unit ­ CU): Cã nhiÖm vô  gi¶i m∙ lÖnh vµ  ®iÒu khiÓn  viÖc thùc hiÖn c¸c thao  t¸c, ®ång thêi thiÕt lËp c¸c ho¹t ®éng cÇn thiÕt ®Ó  thùc hiÖn c¸c thao t¸c ®ã. ­ Thanh ghi lÖnh (Instruction Register ­ IR):  Lu gi÷   m∙ nhÞ ph©n cña lÖnh ®Ó ®îc thùc thi. ­ Bé   ®Õm  ch¬ng   tr×nh   (Program   Counter   ­  PC):  Lu  gi÷   ®i¹ chØ cña lÖnh kÕ tiÕp  trong bé nhí cÇn ®îc thùc  thi.   11 HT/2003 
  12. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 1.2. Qu¸ tr×nh t×m n¹p lÖnh vµ thùc thi lÖnh cña  CPU: + ViÖc t×m n¹p mét lÖnh tõ RAM hÖ thèng lµ mét trong  nh÷ng thao t¸c c¬ b¶n nhÊt mµ  CPU thùc hiÖn. Qu¸ tr×nh  t×m n¹p ®îc thùc hiÖn theo c¸c bíc sau: • Néi dung cña PC ®îc göi lªn kªnh ®Þa chØ. • TÝn   hiÖu   ®iÒu   khiÓn   READ   ®îc   x¸c   lËp   (chuyÓn  sang tr¹ng th¸i tÝch cùc). • D÷ liÖu (m∙ lÖnh) ®îc ®äc tõ RAM vµ göi ®i trªn  kªnh d÷ liÖu.   • M∙  lÖnh ®îc  chèt vµo  thanh  ghi lÖnh  bªn  trong  CPU. • Néi   dung   cña   PC   ®îc   t¨ng   lªn   ®Ó   chuÈn   bÞ   t×m  n¹p lÖnh kÕ tiÕp tõ bé nhí. Address Bus PC n CPU IR opcode Data Bus RAMn+2 Control Bus n+1 Clock opcode n Read n-1 H×nh 1.2. Ho¹t ®éng cña Bus cho chu kú  t×m n¹p lÖnh + Giai ®o¹n thùc thi lÖnh bao gåm viÖc  gi¶i m∙ c¸c  m∙ lÖnh vµ t¹o ra c¸c tÝn hiÖu ®Ó ®iÒu khiÓn viÖc xuÊt  nhËp   gi÷a   c¸c   thanh  ghi  néi  víi  ALU,  ®ång   thêi   th«ng  b¸o ®Ó ALU thùc hiÖn thao t¸c ®∙ ®îc x¸c ®Þnh.    12 HT/2003 
  13. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 1.3. Bé nhí trung t©m cña hÖ Vi xö lý: Bé nhí trung t©m lµ bé phËn rÊt quan träng ®èi víi  mçi hÖ VXL, nã lµ tËp hîp c¸c thanh ghi th«ng tin víi sè  lîng lín. Chøc n¨ng c¬ b¶n cña bé nhí lµ ®Ó trao ®æi vµ  lu tr÷ th«ng tin. 1.3.1. Bé nhí chØ ®äc (Read Only Memory ­ ROM): 1.3.1.1. ROM c¬ b¶n: ROM dïng ®Ó lu tr÷ ch¬ng tr×nh ®iÒu hµnh (Monitor)  cña  hÖ VXL.  Ch¬ng tr×nh  nµy  sÏ quy ®Þnh  mäi  ho¹t  ®éng  cña hÖ VXL. Bé VXL sÏ c¨n cø vµo c¸c lÖnh chøa trong ch­ ¬ng tr×nh ®Ó ®iÒu khiÓn hÖ VXL thùc hiÖn c¸c chøc n¨ng,  nhiÖm vô ®îc Ên ®Þnh trong lÖnh. Nãi c¸ch kh¸c, hÖ VXL  sÏ   thùc   hiÖn   mét   c¸ch   trung   thùc   thuËt   to¸n   mµ   ngêi  thiÕt kÕ phÇn mÒm ®∙ x©y dùng vµ cµi ®Æt vµo ROM cña hÖ. Ngoµi ra, ROM trong hÖ VXL cßn dïng ®Ó lu tr÷ c¸c  b¶ng biÓu, tham sè cña hÖ thèng mµ trong qu¸ tr×nh ho¹t  ®éng kh«ng ®îc thay ®æi nh: b¶ng ®Þa chØ cæng giao tiÕp,  c¸c b¶ng tra cøu sè liÖu, c¸c bé m∙ cÇn sö dông trong  hÖ. ROM còng ®îc qu¶n lý theo ph¬ng thøc ma trËn ®iÓm,  nã   cã   nhiÒu   chñng   lo¹i   kh¸c   nhau:   ROM,   PROM,   EPROM,  EEPROM,… ROM lµ bé nhí cè ®Þnh cã cÊu tróc ®¬n gi¶n nhÊt. Néi  dung cña nã do nhµ s¶n xuÊt chÕ t¹o, ngêi sö dông kh«ng  thÓ thay ®æi néi dung nµy ®îc n÷a.      1.3.1.2. PROM (Programmable ROM ­ ROM cã kh¶ n¨ng   lËp tr×nh ®îc): §Æc  ®iÓm   chung: Néi  dung   cña  PROM  do  nhµ  s¶n  xuÊt  hoÆc ngêi thiÕt kÕ hÖ VXL n¹p vµo nhng chØ ®ùoc 1 lÇn.  Sau   khi   n¹p   xong   néi   dung   nµy   kh«ng   thÓ   thay   ®æi   ®îc  n÷a.    13 HT/2003 
  14. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 1.3.1.3.  EPROM  (Eraseable  PROM    ROM  n¹p/xo¸  ®îc  nhiÒu lÇn): EPROM  lµ bé nhí cè ®Þnh cã cÊu tróc ®Æc biÖt. Néi  dung cña nã do nhµ s¶n xuÊt hay ngêi thiÕt kÕ hÖ VXL n¹p  vµo vµ cã thÓ n¹p/xo¸ nhiÒu lÇn. Ngêi ta t¹o ra 1 bit  th«ng tin trong EPROM dùa trªn nguyªn t¾c lµm viÖc cña  Transistor trêng cã cùc cöa c¸ch ly kªnh c¶m øng (MOSFET  kªnh c¶m øng). 1.3.1.4.   EEPROM   (Electrical   EPROM     ROM   cã   kh¶   n¨ng lËp tr×nh vµ xo¸ ®îc b»ng ®iÖn). 1.3.2.   Bé   nhí   truy   cËp   ngÉu   nhiªn   (Random   Acess  Memory ­ RAM): RAM lµ bé nhí cã thÓ ghi vµ ®äc ®îc, th«ng tin trªn  RAM sÏ bÞ mÊt khi mÊt nguån cung cÊp. Theo ph¬ng thøc lu  tr÷   th«ng   tin,   RAM   ®îc   chia   thµnh   2   lo¹i   c¬   b¶n:   RAM  tÜnh vµ RAM ®éng.  RAM tÜnh: Cã thÓ lu tr÷ th«ng tin l©u tuú ý miÔn lµ  ®îc cung cÊp ®iÖn n¨ng ­ tÊt c¶ c¸c lo¹i phÇn tö nhí  b»ng Trig¬ ®Òu thuéc lo¹i nµy. RAM ®éng: ChØ lu ®îc th«ng tin trong 1 kho¶ng thêi  gian nhÊt ®Þnh. Muèn kÐo dµi thêi gian nµy cÇn cã ph¬ng  thøc lµm t¬i l¹i th«ng tin trong phÇn tö nhí RAM. PhÇn  tö nhí cña RAM ®éng ®¬n gi¶n nhÊt lµ mét linh kiÖn ®iÖn  dung ­ tô diÖn. Sö dông RAM ®éng cã phøc t¹p nhng vÒ  cÊu tróc nhí l¹i ®¬n gi¶n, tiªu tèn Ýt n¨ng lîng, t¨ng  mËt   ®é  bé  nhí   vµ  ®«i   khi  cßn   lµm  t¨ng   c¶  tèc   ®é  lµm  viÖc cña bé nhí. CÊu tróc m¹ch ®iÖn cña c¸c bé nhí RAM rÊt ®a d¹ng c¶  vÒ   c«ng  nghÖ   chÕ   t¹o   chóng   (TTL,   MOS,…  )   vµ  c¸c  yªu  cÇu sö dông chóng nh  c¸c yªu cÇu vÒ ghÐp nèi, tèc ®é  lµm viÖc, mËt ®é linh kiÖn vµ dung l¬ng cÇn thiÕt…   14 HT/2003 
  15. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn 1.4. C¸c thiÕt bÞ xuÊt/nhËp: C¸c   thiÕt   bÞ   xuÊt/nhËp   hay   c¸c   thiÕt   bÞ   ngo¹i   vi  kÕt hîp víi c¸c m¹ch giao tiÕp (Interface) sÏ t¹o ra c¸c  ®êng   truyÒn   th«ng   gi÷a   hÖ   VXL   víi   thÕ   giíi   bªn   ngoµi.  Tuy   nhiªn   ®Ó   trao   ®æi   th«ng   tin   gi÷a   hÖ   VXL   víi   c¸c  thiÕt   bÞ   ngo¹i   vi,   cÇn   cã   c¸c   ph¬ng   ph¸p   ®iÒu   khiÓn  thÝch hîp nh: ­ §iÒu khiÓn vµo/ra b»ng ch¬ng tr×nh. ­ §iÒu khiÓn vµo/ra b»ng ng¾t. ­ §iÒu khiÓn vµo/ra b»ng phÇn cøng.  Néi dung nµy sÏ ®îc xÐt kü ë c¸c ch¬ng sau. 1.5. CÊu tróc kªnh chung cña hÖ VXL: Kªnh (Bus) lµ tËp hîp c¸c ®êng th«ng tin cã cïng môc  ®Ých. §Ó CPU cã thÓ giao tiÕp ®îc víi c¸c bé phËn kh¸c  trong   hÖ   VXL   theo   yªu   cÇu,   mçi   hÖ   VXL   cÇn   sö   dông   3  kªnh nh sau: ­ Kªnh ®Þa chØ (Adress Bus). ­ Kªnh d÷ liÖu (Daten Bus). ­ Kªnh ®iÒu khiÓn (Control Bus). §Ó thùc hiÖn   thao t¸c ®äc hoÆc ghi, CPU x¸c ®Þnh râ  vÞ trÝ (®Þa chØ) cña d÷ liÖu (hoÆc lÖnh) b»ng c¸ch ®Æt  ®Þa chØ ®ã lªn kªnh ®Þa chØ, sau ®ã kÝch ho¹t tÝn hiÖu  Read hoÆc Write trªn kªnh ®iÒu khiÓn ®Ó chØ ra thao t¸c  lµ ®äc hay ghi.  NÕu  kÝch ho¹t tÝn hiÖu ®iÒu khiÓn Read, thao t¸c ®äc  lÊy 1 byte d÷ liÖu tõ bé nhí ë vÞ trÝ ®∙ x¸c ®Þnh vµ ®Æt  byte nµy lªn kªnh d÷ liÖu. CPU sÏ ®äc d÷ liÖu vµ cÊt d÷  liÖu vµo 1 trong c¸c thanh ghi néi  cña CPU.  NÕu kÝch ho¹t tÝn hiÖu ®iÒu khiÓn Write, CPU sÏ thùc  hiÖn   thao   t¸c   ghi   b»ng   c¸ch   xuÊt   d÷   liÖu   lªn   kªnh   d÷  liÖu. Nhê vµo tÝn hiÖu ®iÒu khiÓn, bé nhí nhËn biÕt ®îc  ®©y lµ thao t¸c ghi vµ lu d÷ liÖu vµo vÞ trÝ ®∙ ®îc x¸c  ®Þnh.   15 HT/2003 
  16. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn Kªnh d÷ liÖu cho phÐp trao ®æi th«ng tin gi÷a CPU vµ  bé nhí,  còng  nh  gi÷a CPU víi thiÕt  bÞ ngo¹i  vi. Th«ng  thêng   c¸c   hÖ   VXL   dµnh   hÇu   hÕt   thêi   gian   cho   viÖc   di  chuyÓn d÷ liÖu, ®a sè c¸c thao t¸c di chuyÓn d÷ liÖu x¶y  ra gi÷a 1 thanh ghi cña CPU víi ROM vµ RAM ngoµi. Do ®ã  ®é lín cña kªnh d÷ liÖu ¶nh hëng rÊt lín tíi hiÖu suÊt  cña hÖ VXL. NÕu bé nhí cña hÖ thèng rÊt lín vµ CPU cã  kh¶ n¨ng tÝnh to¸n cao, nhng viÖc truy xuÊt d÷ liÖu – di  chuyÓn d÷ liÖu gi÷a bé nhí vµ CPU th«ng qua kªnh d÷ liÖu  l¹i bÞ nghÏn th× hiÖn tîng “nghÏn cæ chai” nµy chÝnh lµ  hËu qu¶ cña ®é réng kªnh d÷ liÖu kh«ng ®ñ lín.  §Ó kh¾c  phôc hiÖn tîng nµy, cÇn t¨ng ®êng tÝn hiÖu cho kªnh d÷  liÖu.      D CPU A A D Control Bus T R E E ROM S N S B B U U S RAM S 8   Bit 16 I/O       H×nh 1.3. CÊu tróc kªnh chung  cña hÖ thèng VXL  Nh ë h×nh 1.3, kªnh d÷ liÖu lµ kªnh 2 chiÒu, cßn kªnh  ®Þa chØ lµ kªnh 1 chiÒu. C¸c th«ng tin vÒ ®Þa chØ lu«n  ®îc cung cÊp bëi CPU, trong  khi c¸c d÷ liÖu  di chuyÓn  theo c¶ 2 híng tuú thuéc vµo thao t¸c thùc hiÖn lµ ®äc    16 HT/2003 
  17. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn hay ghi. ThuËt ng÷ “d÷ liÖu” ®îc sö dông theo nghÜa tæng  qu¸t: “th«ng tin” di chuyÓn trªn kªnh d÷ liÖu cã thÓ lµ  lÖnh cña ch¬ng tr×nh, ®Þa chØ theo sau lÖnh hoÆc d÷ liÖu  ®îc sö dông bëi ch¬ng tr×nh. Kªnh ®iÒu khiÓn lµ tËp hîp c¸c tÝn hiÖu, mçi tÝn hiÖu  cã mét vai trß riªng  trong viÖc  ®iÒu  khiÓn cã trËt tù  ho¹t ®éng cña hÖ thèng. C¸c tÝn hiÖu ®iÒu khiÓn ®îc cung  cÊp bëi CPU ®Ó ®ång bé viÖc di chuyÓn th«ng tin trªn c¸c  kªnh ®Þa chØ vµ d÷ liÖu. C¸c bé VXL thêng cã 3 tÝn hiÖu  ®iÒu   khiÓn:  Read,   Write,   Clock.   Tuy   nhiªn   tuú   vµo   yªu  cÇu cô thÓ còng nh cÊu tróc phÇn cøng cña tõng hÖ VXL mµ  sè lîng tÝn hiÖu ®iÒu khiÓn cã thÓ kh¸c nhau.   17 HT/2003 
  18. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn   ¬ng 2 Ch   :     Bé Vi ®iÒu khiÓn AT89C51  2.1. Giíi thiÖu chung: Vi ®iÒu khiÓn (V§K) lµ mét “hÖ” Vi xö lý (VXL) ®îc tæ  chøc trong mét chip.  Nã bao gåm: ­ Bé VXL ­ Bé nhí ch¬ng tr×nh (ROM/EPROM/EEPROM/FLASH).  ­ Bé nhí d÷ liÖu (RAM). ­ C¸c thanh ghi chøc n¨ng, c¸c cæng I/O, c¬ chÕ ®iÒu  khiÓn ng¾t vµ truyÒn tin nèi tiÕp. ­ C¸c bé thêi gian dïng trong lÜnh vùc chia tÇn vµ t¹o  thêi gian thùc.  ­ ... Bé V§K cã thÓ ®îc lËp tr×nh ®Ó ®iÒu khiÓn c¸c thiÕt  bÞ   th«ng   tin,   viÔn   th«ng,   thiÕt  bÞ   ®o   lêng,   thiÕt   bÞ  ®iÒu chØnh  còng nh c¸c øng dông trong c«ng nghÖ th«ng  tin vµ kü thuËt ®iÒu khiÓn tù ®éng. Cã thÓ xem bé V§K  nh  mét hÖ VXL On­chip, ®èi víi AT89C51,  nã cã ®Çy ®ñ  chøc n¨ng cña mét hÖ VXL 8 bit, ®ùoc ®iÒu khiÓn bëi mét  hÖ lÖnh, cã sè lÖnh ®ñ m¹nh, cho phÐp lËp tr×nh b»ng  hîp ng÷ (Assembly).  2.2. Sù kh¸c nhau gi÷a bé VXL vµ bé V§K. VXL V§K CPU, RAM, ROM, Timers,  SFR,   m¹ch   giao   tiÕp,  PhÇn  CPU ®¬n chÝp. hÖ   thèng   ng¾t   vµ   c¬  cøng chÕ   ®iÒu   khiÓn  ng¾t…..   18 HT/2003 
  19. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn Sö dông c¸c lÖnh ®iÒu  Sö dông c¸c tËp lÖnh  khiÓn xuÊt nhËp, cã  bao qu¸t, m¹nh vÒ  thÓ truy xuÊt d÷ liÖu  kiÓu ®Þnh ®Þa chØ.  ë d¹ng Bit hoÆc Byte.  TËp  C¸c lÖnh nµy cã thÓ  C¸c nhãm lÖnh chÝnh:  lÖnh truy xuÊt d÷ liÖu  ChuyÓn d÷ liÖu, ®iÒu  lín, thùc hiÖn ë d¹ng  khiÓn biÕn logic, rÏ  1/2   Byte, Byte,  nh¸nh ch¬ng tr×nh,  Word, Double Word. tÝnh to¸n sè häc vµ  logic. øng  Trong c¸c hÖ m¸y vi  Trong c¸c hÖ thèng  dông tÝnh. ®iÒu khiÓn, ®o lêng vµ  ®iÒu chØnh…  2.3. S¬ ®å khèi. External Interrupts Timer 1 Interrupt 4K 128 Bytes Counter Control FLASH RAM Timer 0 Inputs CPU OSC Bus Serial 4 I/O Ports Control Ports /WR /RD TxD RxD P0 P2 P1 P3 Address/Data H×nh 2.1. S¬ ®å khèi hä V§K  AT89C51   19 HT/2003 
  20. ®¹i häc spkt hng yªn         Gi¸o tr×nh: Kü thuËt  Vi §iÒu KhiÓn Bé V§K 8 bit AT89C51 ho¹t ®éng ë tÇn sè 12 MHz, víi  bé nhí ROM 4Kbyte, bé nhí RAM 128 Byte c tró bªn trong  vµ cã thÓ më réng bé nhí ra ngoµi. ë bé V§K nµy cßn cã  4 cæng 8 bit (P0…P3) vµo/ ra 2 chiÒu ®Ó giao tiÕp víi  thiÕt bÞ ngo¹i vi. Ngoµi ra, nã cßn cã: ­ CPU ­ 2 bé ®inh thêi 16 bit (Timer 0 vµ Timer 1) ­ M¹ch giao tiÕp nèi tiÕp. ­ Bé xö lý bit (thao t¸c trªn c¸c bit riªng rÏ). ­ HÖ thèng ®iÒu khiÓn vµ xö lý ng¾t. ­ C¸c kªnh ®iÒu khiÓn/ d÷ liÖu/ ®Þa chØ. ­ C¸c thanh ghi chøc n¨ng ®Æc biÖt (SFR). Tuy nhiªn, tuú thuéc vµo tõng hä V§K cña tõng h∙ng  s¶n   xuÊt   kh¸c   nhau   mµ   tÝnh   n¨ng   còng   nh  ph¹m   vi   øng  dông cña mçi bé V§K lµ kh¸c nhau, vµ chóng ®îc thÓ hiÖn  trong c¸c b¶ng thèng kª sau: Timer RAM ROM Tèc ®é  Ch©n  / Nguån  Hä V§K (byte UART (bytes) (MHz) I/O Count ng¾t s) er 8051 8031AH ROMLESS 128 12 32 2 1 5 8051AH 4K ROM 128 12 32 2 1 5 8051AHP 4K ROM 128 12 32 2 1 5 8751H 4K EPROM 128 12 32 2 1 5 8751BH 4K EPROM 128 12 32 2 1 5 8052 8032AH ROMLESS 256 12 32 3 1 6 8052AH 8K ROM 256 12 32 3 1 6 8752BH 8K EPROM 256 12 32 3 1 6 80C51 32 80C31BH ROMLESS 128 12,16 32 2 1 5 80C51BH 4K ROM 128 12,16 32 2 1 5 80C31BHP 4K ROM 128 12,16 32 2 1 5 87C51 4K EPROM 128 12,16,20 32 2 1 5 ,24 8xC52/54/58 80C32 ROMLESS 256 12,16,20 32 3 1 6   20 HT/2003 
Đồng bộ tài khoản