Ky Thuat Vi Dieu Khien 1

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Ky Thuat Vi Dieu Khien 1 as PDF for free.

More details

  • Words: 33,288
  • Pages: 121
Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Ch−¬ng I Tæng quan vÒ Vi ®iÒu khiÓn

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H

Trang 1

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Ch−¬ng I Tæng quan vÒ Vi ®iÒu khiÓn 1.1 Giíi thiÖu vÒ c¸c hä vi xö lÝ vµ c¸c hä vi ®iÒu khiÓn th«ng dông 1.1.1 LÞch sö ph¸t triÓn cña bé vi xö lÝ vµ bé vi ®iÒu khiÓn Sù ra ®êi vµ ph¸t triÓn nhanh chãng cña kü thuËt vi ®iÖn tö mµ ®Æc tr−ng lµ kü thuËt vi xö lÝ ®! t¹o ra mét b−íc ngoÆt quan träng trong sù ph¸t triÓn cña khoa häc tÝnh to¸n, ®iÒu khiÓn vµ xö lÝ th«ng tin. Kü thuËt vi xö lÝ ®ãng mét vai trß rÊt quan träng trong tÊt c¶ c¸c lÜnh vùc cña cuéc sèng vµ khoa häc kü thuËt, ®Æc biÖt lµ lÜnh vùc Tin häc vµ Tù ®éng hãa. N¨m 1971, h!ng Intel ®! cho ra ®êi bé vi xö lÝ (microprocessor) ®Çu tiªn trªn thÕ giíi tªn gäi lµ Intel-4004/4bit , nh»m ®¸p øng nhu cÇu cÊp thiÕt cña mét c«ng ty kinh doanh lµ h!ng truyÒn th«ng BUSICOM. Intel-4004 lµ kÕt qu¶ cña mét ý t−ëng quan träng trong kü thuËt vi xö lÝ sè. §ã lµ mét kÕt cÊu logic mµ cã thÓ thay ®æi ®−îc chøc n¨ng cña nã b»ng ch−¬ng tr×nh ngoµi chø kh«ng ph¸t triÓn theo h−íng t¹o ra mét cÊu tróc cøng chØ thùc hiÖn mét sè chøc n¨ng nhÊt ®Þnh nh− tr−íc ®©y. Sau ®ã, c¸c bé vi xö lÝ míi liªn tôc ®−îc ®−a ra thÞ tr−êng vµ ngµy cµng ®−îc ph¸t triÓn, hoµn thiÖn h¬n trong c¸c thÕ hÖ sau : Vµo n¨m 1972, h!ng Intel ®−a ra bé vi xö lÝ 8-bit ®Çu tiªn víi tªn Intel8008/8bit. Tõ 1974 ®Õn 1975 , Intel chÕ t¹o c¸c bé vi xö lÝ 8-bit 8080 vµ 8085A. Còng vµo kho¶ng thêi gian nµy, mét lo¹t c¸c h!ng kh¸c trªn thÕ giíi còng ®! cho ra ®êi c¸c bé vi xö lÝ t−¬ng tù nh− : 6800 cña Motorola víi 5000 tranzitor, Signetics 6520, 1801 cña RCA, kÕ ®Õn lµ 6502 cña h!ng MOS Technology vµ Z80 cña h!ng Zilog.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 2

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Vµo n¨m 1976 Intel giíi thiÖu bé vi ®iÒu khiÓn (microcontroller) 8748, mét chip t−¬ng tù nh− c¸c bé vi xö lÝ vµ lµ chip ®Çu tiªn trong hä vi ®iÒu khiÓn MCS-48. 8748 lµ mét vi m¹ch chøa trªn 17000 transistor, bao gåm mét CPU, 1K byte EPROM, 64 byte RAM, 27 ch©n xuÊt nhËp vµ mét bé ®Þnh thêi 8-bit. IC nµy vµ c¸c IC kh¸c tiÕp theo cña hä MCS-48 ®! nhanh chãng trë thµnh chuÈn c«ng nghiÖp trong c¸c øng dông h−íng ®iÒu khiÓn (control-oriented application). N¨m 1978 xu©t hiÖn Intel 8086 lµ lo¹i bé xi xö lý 16 bit víi 29.000 tranzitor, Motorola 68000 tÝch hîp 70.000 tranzitor, APX 432 chøa 120.000 tranzitor. Bé vi xö lý cña Hewlet Pakard cã kho¶ng 450.000 tranzitor. Tõ n¨m 1974 ®Õn 1984 sè tranzitor tÝch hîp trong mét chip t¨ng kho¶ng 100 lÇn. N¨m 1983, Intel ®−a ra bé vi xö lý 80286 dung trong c¸c m¸y vi tinh hä AT (Advanced Technology). 80286 sö dông I/O 16 bit, 24 ®−êng ®Þa chØ vµ kh«ng gian nhí ®Þa chØ thùc 16MB. N¨m 1987, Intel ®−a ra bé vi xö lý 80386 32-bit. N¨m 1989 xuÊt hiÖn xuÊt hiÖn bé vi xö lý Intel 80486 lµ c¶I tiÕn cña Intel 80386 víi bé nhí Èn vµ m¹ch tÝnh phÐp to¸n ®¹i sè dÊu phÈy ®éng. N¨m 1992, xuÊt hiÖn Intel 80586 cßn gäi lµ Pentium 64 bit chøa 4 triÖu tranzitor. So át r a n z i t o r t íc h h ô ïp

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 3

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

H×nh 1.1 Sè tranzitor tÝch hîp trong mét chip cña bé vi xö lý Intel 8086 §é phøc t¹p, sù gän nhÑ vÒ kÝch th−íc vµ kh¶ n¨ng cña c¸c bé vi ®iÒu khiÓn ®−îc t¨ng thªm mét bËc quan träng vµo n¨m 1980 khi Intel c«ng bè chip 8051, bé vi ®iÒu khiÓn ®Çu tiªn cña hä vi ®iÒu khiÓn MCS-51. So víi 8048, chip 8051 chøa trªn 60.000 transistor bao gåm 4K byte ROM, 128 byte RAM, 32 ®−êng xuÊt nhËp, 1 port nèi tiÕp vµ 2 bé ®Þnh thêi 16-bit – mét sè l−îng m¹ch ®¸ng chó ý trong mét IC ®¬n.

Tõ c¸c bé vi xö lý ban ®Çu chØ lµ c¸c bé xö lý trung t©m trong mét hÖ thèng, kh«ng thÓ ho¹t ®éng nÕu thiÕu c¸c bé phËn nh− RAM, ROM, bo m¹ch chñ... c¸c h!ng ®! ph¸t triÓn c¸c bé vi xö lý nµy lªn thµnh c¸c bé vi ®iÒu khiÓn ®Ó phôc vô c¸c môc ®Ých riªng biÖt, kh¸c nhau trong c«ng nghiÖp. Mét bé vi ®iÒu khiÓn lµ mét hÖ vi xö lÝ thËt sù ®−îc tæ chøc trong mét chip (trong mét vá IC) bao gåm mét bé vi xö lÝ (microprocessor), bé nhí ch−¬ng tr×nh (ROM), bé nhí d÷ liÖu (RAM), tuy kh«ng b»ng dung l−îng RAM ë c¸c m¸y vi tÝnh nh−ng ®©y kh«ng ph¶i lµ mét h¹n chÕ v× c¸c bé vi ®iÒu khiÓn ®−îc thiÕt kÕ cho mét môc ®Ých hoµn toµn kh¸c, ngoµi ra trªn chip cßn cã bé xö lý sè häc-logic (ALU) cïng víi c¸c thanh ghi chøc n¨ng, c¸c cæng vµo/ra, c¬ chÕ ®iÒu khiÓn ng¾t, truyÒn tin nèi tiÕp, c¸c bé ®Þnh thêi... HiÖn nay, c¸c bé vi ®iÒu khiÓn ®−îc sö dông rÊt réng r!i vµ ngµy cµng ®−îc chuÈn hãa ®Ó cã thÓ sö dông réng r!i trong c¸c ngµnh c«ng nghiÖp, cã mÆt trong nhiÒu m¸y mãc, trong c¸c hµng tiªu dïng. 1.1.2 ¦u vµ khuyÕt ®iÓm cña c¸c bé vi ®iÒu khiÓn

C¸c c«ng viÖc ®−îc thùc hiÖn bëi c¸c bé vi ®iÒu khiÓn th× kh«ng míi. §iÒu míi lµ c¸c thiÕt kÕ hiÖn thùc víi Ýt thµnh phÇn h¬n so víi c¸c thiÕt kÕ tr−íc ®ã. C¸c thiÕt kÕ tr−íc ®ã ®ßi hái ph¶i vµi chôc hoÆc vµi tr¨m IC ®Ó hiÖn thùc nay chØ cÇn mét Ýt thµnh phÇn trong ®ã bao gåm bé vi ®iÒu khiÓn. Sè thµnh phÇn ®−îc gi¶m bít, hiÖu qu¶ trùc tiÕp cña tÝnh kh¶ lËp tr×nh cña c¸c bé vi ®iÒu khiÓn vµ ®é

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 4

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

tÝch hîp cao trong c«ng nghÖ chÕ t¹o vi m¹ch, th−êng chuyÓn thµnh thêi gian ph¸t triÓn ng¾n h¬n, gi¸ thµnh khi s¶n xuÊt thÊp h¬n, c«ng suÊt tiªu thô thÊp h¬n vµ ®é tin cËy cao h¬n. VÊn ®Ò ë ®©y lµ tèc ®é. C¸c gi¶i ph¸p dùa trªn bé vi ®iÒu khiÓn kh«ng bao giê nhanh b»ng gi¶i ph¸p dùa trªn c¸c thµnh phÇn rêi r¹c. Nh÷ng t×nh huèng ®ßi hái ph¶i ®¸p øng thËt nhanh (cì nsec) ®èi víi c¸c sù kiÖn (th−êng chiÕm thiÓu sè trong c¸c øng dông) sÏ ®−îc qu¶n lý tåi khi dùa vµo c¸c bé vi ®iÒu khiÓn. Tuy nhiªn trong vµi øng dông, ®Æc biÖt lµ c¸c øng dông liªn quan ®Õn con ng−êi, c¸c kho¶ng thêi gian trÔ tÝnh b»ng nsec, usec hoÆc thËm chÝ msec lµ kh«ng quan träng. ViÖc gi¶m bít c¸c thµnh phÇn lµ mét ®iÒu lîi nh− ®! ®Ò cËp, c¸c thao t¸c trong ch−¬ng tr×nh ®iÒu khiÓn lµm cho thiÕt kÕ cã thÓ thay ®æi b»ng c¸ch thay ®æi phÇn mÒm. §iÒu nµy cã ¶nh h−ëng tèi thiÓu ®Õn chu kú s¶n xuÊt. Do ®ã c¸c bé vi ®iÒu khiÓn cã thÓ ®−îc øng dông réng r!i trong c¸c øng dông phôc vô con ng−êi.

§Ó cã thÓ hiÓu râ h¬n vÒ c¸c bé vi ®iÒu khiÓn, chóng ta sÏ t×m hiÓu vÒ mét sè c¸c hä vi ®iÒu khiÓn cña mét sè h!ng ®iÖn tö ®iÓn h×nh ®ang ®−îc sö dông réng r!i trong khoa häc kü thuËt vµ ®êi sèng.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 5

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

1.1.3 Giíi thiÖu vÒ hä vi ®iÒu khiÓn MCS-51 1.1.3.1 Tãm t¾t phÇn cøng Hä vi ®iÒu khiÓn MCS-51 ®−îc h!ng Intel cho ra ®êi vµo n¨m 1980 víi bé vi ®iÒu khiÓn ®Çu tiªn cña nã lµ chip 8051. CÊu tróc c¬ b¶n cña chip vi ®iÒu khiÓn 8051 ®−îc biÓu diÔn nh− h×nh 1.2.

H×nh 1.2- S¬ ®å khèi cña chip 8051 31

H×nh 1.3 cho ta s¬ ®å ch©n cña chip 8051. Nh− ta thÊy, 32 trong sè 40 ch©n cña 8051 cã t¸c dông xuÊt/nhËp, h×nh thµnh 4 port 8-bit. Víi c¸c thiÕt kÕ yªu cÇu mét møc tèi thiÓu bé nhí ngoµi hoÆc c¸c thµnh phÇn bªn ngoµi kh¸c, ta cã thÓ sö dông c¸c port nµy lµm nhiÖm vô xuÊt/nhËp, 8 ®−êng cho mçi port cã thÓ ®−îc xö lÝ nh− lµ mét ®¬n vÞ giao tiÕp víi c¸c thiÕt bÞ song song nh− m¸y in, bé biÕn ®æi

19 18 9 12 13 14 15 1 2 3 4 5 6 7 8

X1 X2

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

RESET INT0 INT1 T0 T1 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7

P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 RD WR PSEN ALE/P TXD RXD

39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 17 16 29 30 11 10

8051 H×nh 1.3 - S¬ ®å ch©n cña 8051

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

EA/VP

Trang 6

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

D/A,.v.v..hoÆc mçi ®−êng cã thÓ ho¹t ®éng ®éc lËp giao tiÕp víi mét thiÕt bÞ ®¬n bit nh− chuyÓn m¹ch, LED, tranzistor, cuén d©y, ®éng c¬... 1. Port 0 Port 0 cã 2 t¸c dông. Trong c¸c thiÕt kÕ øng dông tèi thiÓu, kh«ng cã giao tiÕp víi c¸c thµnh phÇn bªn ngoµi nh− RAM ngoµi, ROM ngoµi..., port 0 ®−îc sö dông nh− mét cæng xuÊt/nhËp th«ng th−êng. Khi thiÕt kÕ hÖ thèng mµ cÇn sö dông bé nhí ngoµi, port 0 ®−îc sö dông lµ cæng ®Þa chØ vµ d÷ liÖu ®a hîp. Port 0 nÕu lµ cæng ®Þa chØ th× nã sÏ lµ phÇn byte thÊp cña bus ®Þa chØ. 2. Port 1 Port 1 chØ cã mét t¸c dông lµ cæng xuÊt nhËp. Nã chØ dïng ®Ó giao tiÕp víi thiÕt bÞ ngo¹i vi khi cã yªu cÇu. Kh«ng cã chøc n¨ng nµo ®Æc biÖt cho c¸c ch©n cña port 1. Tuy nhiªn víi c¸c bé vi ®iÒu khiÓn kh¸c nh− 8052 th× c¸c ch©n P1.0 vµ P1.1 cßn ®−îc sö dông lµm c¸c ®−êng ngâ vµo cho m¹ch ®Þnh thêi thø ba. 3. Port 2 Port 2 cã hai t¸c dông, hoÆc lµm nhiÖm vô lµ cæng xuÊt nhËp, hoÆc lµ phÇn byte cao cña bus ®Þa chØ 16-bit cho c¸c thiÕt kÕ hÖ thèng cÇn nhiÒu h¬n 256 byte bé nhí ngoµi. 4. Port 3 Port 3 cã hai t¸c dông. Nã lµm nhiÖm vô nh− mét cæng xuÊt nhËp th«ng th−êng. Khi kh«ng ho¹t ®éng xuÊt nhËp, mçi ch©n cña port 3 ®Òu cã mét chøc n¨ng riªng. 5. Ch©n cho phÐp bé nhí ngoµi /PSEN - Program Store ENable Ch©n nµy th−êng ®−îc nèi víi ch©n cho phÐp xuÊt /OE (Output Entable) cña EPRROM (hoÆc cña ROM) ®Ó cho phÐp ®äc c¸c byte lÖnh. TÝn hiÖu /PSEN ë l«gic ‘0‘ trong suèt thêi gian t×m n¹p lÖnh. C¸c m! nhÞ ph©n cña ch−¬ng tr×nh (opcode) ®−îc ®äc tõ EPROM, qua bus d÷ liÖu vµ ®−îc chèt vµo thanh ghi lÖnh IR cña 8051 ®Ó ®−îc gi¶i m!. Khi thùc thi mét ch−¬ng tr×nh trong ROM néi, /PSEN ®−îc duy tr× ë l«gic kh«ng tÝch cùc (logic 1). Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 7

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

6. Ch©n cho phÐp chèt ®Þa chØ ALE - Address Latch Enable Lµ tÝn hiÖu xuÊt ra ®Ó gi¶i ®a hîp bus ®Þa chØ vµ bus d÷ liÖu. Trong 1/2 chu kú ®Çu bé nhí, ch©n ALE xuÊt tÝn hiÖu ®Ó chèt ®Þa chØ (byte thÊp cña bus ®Þa chØ 16 bit) vµo thanh ghi ngoµi khi ta sö dông port 0 lµm byte thÊp ®Þa chØ. Trong 1/2 chu kú bé nhí cßn l¹i port 0 sÏ xuÊt/nhËp d÷ liÖu. TÝn hiÖu ALE cã tÇn sè b»ng 1/6 tÇn sè cña m¹ch dao ®éng bªn trong chip vi ®iÒu khiÓn vµ cã thÓ lµm xung clock cho c¸c phÇn cßn l¹i cña hÖ thèng (tr−êng hîp ngo¹i lÖ khi thùc hiÖn lÖnh MOVX, mét xung ALE (vµ c¶ /PSEN) sÏ bÞ bá qua). Ch©n ALE cßn ®−îc dïng ®Ó nhËp xung ngâ vµo lËp tr×nh cho EPROM hoÆc Flash ROM trªn chip ®èi víi chip cã lo¹i ROM nµy. 7. Ch©n truy xuÊt ngoµi /EA - External Address Ch©n nµy ®−îc nèi lªn 5V khi thùc thi ch−¬ng tr×nh trong ROM néi vµ ®−îc nèi ®Êt khi thùc thi ch−¬ng tr×nh bé nhí ngoµi. Chó ý ®èi víi c¸c chip kh«ng cã ROM néi /EA ph¶i ®−îc nèi ®Êt. C¸c chip hä 8051 cã EPROM cßn nhËn ch©n /ALE lµm ch©n nhËn ®iÖn ¸p cÊp ®iÖn 12V cho viÖc lËp tr×nh (n¹p) cho EPROM néi.

8. Ch©n RESET (RST) Dïng ®Ó thiÕt lËp l¹i tr¹ng th¸i ban ®Çu cña hÖ thèng hay gäi t¾t lµ reset hÖ thèng khi ®−îc treo ë møc logic 1 Ýt nhÊt 2 chu kú m¸y. C¸c thanh ghi bªn trong cña 8051 ®−îc n¹p c¸c gi¸ trÞ thÝch hîp cho viÖc khëi ®éng l¹i hÖ thèng. 9. C¸c ch©n XTAL1 vµ XTAL2 M¹ch dao ®éng bªn trong chip 8051 ®−îc ghÐp víi th¹ch anh bªn ngoµi ë 2 ch©n XTAL1 vµ XTAL2. Th−êng tÇn sè lµ 12MHz vµ c¸c tô æn ®Þnh cã gi¸ trÞ trong kho¶ng 30pF

33 pF.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 8

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

1.1.3.2 Tæ chøc bé nhí cña 8051 C¸c chip vi ®iÒu khiÓn dïng lµm thµnh phÇn trung t©m trong c¸c thiÕt kÕ h−íng ®iÒu khiÓn. Bé nhí th−êng cã dung l−îng bÐ h¬n nhiÒu so víi mét hÖ vi xö lý. Nã cßn kh«ng cã æ ®Üa vµ hÖ ®iÒu hµnh. Ch−¬ng tr×nh ®iÒu khiÓn ph¶i th−êng tró trong ROM. Do vËy, ch−¬ng tr×nh vÉn ®−îc l−u gi÷ ngay c¶ khi mÊt ®iÖn. Do lý do trªn, chip 8051 cã kh«ng gian bé nhí riªng cho ch−¬ng tr×nh vµ d÷ liÖu. C¶ bé nhí ch−¬ng tr×nh vµ bé nhí d÷ liÖu ®Òu n»m trong chip. Tuy nhiªn ta cã thÓ më réng bé nhí ch−¬ng tr×nh vµ bé nhí d÷ liÖu b»ng c¸ch sö dông c¸c chip nhí bªn ngoµi víi dung l−îng tèi ®a lµ 64K cho bé nhí ch−¬ng tr×nh vµ 64K cho bé nhí d÷ liÖu.

Bé nhí ch−¬ng tr×nh (ROM) Bé nhí ch−¬ng tr×nh l−u gi÷ ch−¬ng tr×nh ®iÒu khiÓn chip 8051. Sau khi RESET, CPU b¾t ®Çu thùc hiÖn ch−¬ng tr×nh tõ ®Þa chØ 0000H. Khi ch−¬ng tr×nh lín qu¸ kÝch th−íc bé nhí ch−¬ng tr×nh bªn trong chip, ch−¬ng tr×nh nµy ph¶i ®−îc n¹p vµo bé nhí ch−¬ng tr×nh ngoµi. NÕu ch−¬ng tr×nh n»m trong ROM néi, ch©n /EA cña 8051 ph¶i ®−îc treo lªn 5V. NÕu ch−¬ng tr×nh ë ROM ngoµi, ch©n /EA ph¶i nèi ®Êt. ViÖc truy xuÊt ch−¬ng tr×nh ë bé nhí ngoµi ph¶i kÕt hîp víi ch©n tÝn hiÖu truy xuÊt bé nhí ngoµi /PSEN.

Bé nhí d÷ liÖu (RAM) 8051 cã 128 byte RAM ë bªn trong chip. Chóng ®−îc chia lµm nhiÒu vïng kh¸c nhau : vïng RAM ®a môc ®Ých, vïng RAM ®Þnh ®Þa chØ bit, c¸c d!y thanh ghi, vµ c¸c thanh ghi chøc n¨ng ®Æc biÖt. Ta h!y xem xÐt tõng vïng RAM cô thÓ.

- Vïng RAM ®a môc ®Ých : Cã ®Þa chØ tõ 30H ®Õn 7FH (80 byte). Vïng RAM nµy cã thÓ truy xuÊt b»ng c¸ch ®Þnh ®Þa chØ trùc tiÕp hoÆc ®Þnh ®Þa chØ gi¸n tiÕp. Nã cã thÓ dïng ®Ó chøa c¸c biÕn trong ch−¬ng tr×nh hay dïng ®Ó ®Þnh ®Þa chØ cho c¸c cæng ngo¹i vi tuú theo môc ®Ých cña ng−êi sö dông. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 9

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

- Vïng RAM ®Þnh ®Þa chØ tõng bit : Cã 128 bit chøa trong c¸c byte ë ®Þa chØ tõ 20H ®Õn 2FH vµ 32 byte chøa c¸c thanh ghi (00H ®Õn 1FH). - C¸c dNy thanh ghi tõ Bank 0 tíi Bank 3 : N»m ë 32 byte thÊp nhÊt cña vïng nhí d÷ liÖu. Khi RESET hÖ thèng d!y thanh ghi mÆc ®Þnh lµ Bank 0. Cã thÓ chän Bank bëi thanh ghi tõ tr¹ng th¸i ch−¬ng tr×nh (PSW- Program Status Word) . C¸c lÖnh sö dông c¸c thanh ghi tõ R0 ®Õn R7 lµ c¸c lÖnh ng¾n vµ thùc hiÖn nhanh h¬n so víi c¸c lÖnh t−¬ng ®−¬ng sö dông kiÓu ®Þnh ®Þa chØ trùc tiÕp. C¸c gi¸ trÞ d÷ liÖu th−êng ®−îc sö dông nªn chøa ë mét trong c¸c thanh ghi nµy.

C¸c thanh ghi chøc n¨ng ®Æc biÖt (SFR- Special Function Register) Cã 21 thanh ghi chøc n¨ng ®Æc biÖt chiÕm phÇn trªn cña RAM néi cã ®Þa chØ tõ 80H ®Õn FFH. C¸c ®Þa chØ ®−îc ®Þnh nghÜa trong vïng RAM nµy gåm c¸c thanh ghi ®iÒu khiÓn cña 8051, c¸c thanh ghi ®Öm, vµ c¸c cæng vµo ra. - Thanh ghi tõ tr¹ng th¸i PSW - Program Status Word : Cã ®Þa chØ lµ D0H. Chøa c¸c bit tr¹ng th¸i cã chøc n¨ng kh¸c nhau. - Thanh ghi chøa ACC: Cã ®Þa chØ lµ A0H. Th−êng ®−îc dïng lµm biÕn nhí trung gian trong c¸c phÐp tÝnh to¸n sè häc. - Thanh ghi B: Cã ®Þa chØ lµ F0H. Th−êng ®−îc dïng chung víi thanh ghi ACC trong c¸c phÐp to¸n nh©n chia. - C¸c cæng giao tiÕp song song : §ã lµ c¸c cæng P0, P1, P2, P3. §−îc ®Þnh ®Þa chØ t−¬ng øng lµ 80H, 90H, A0H, B0H. - C¸c thanh ghi phôc vô cho truyÒn th«ng nèi tiÕp SCON (Serial port CONtrol) vµ SBUF (Serial data BUFfer): Thanh ghi SCON dïng ®Ó thiÕt lËp c¸c th«ng sè cho viÖc truyÒn th«ng nèi tiÕp. Cßn thanh ghi SBUF dïng lµm vïng nhí ®Öm buffer cho viÖc truyÒn th«ng. - Thanh ghi PCON - Power CONtrol: §©y lµ thanh ghi ®iÒu khiÓn nguån cÊp cho 8051. Cã thÓ dïng thanh ghi nµy ®Ó ®Æt bé vi ®iÒu khiÓn vµo chÕ ®é Power Down hoÆc IDE. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 10

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

- C¸c thanh ghi ®iÒu khiÓn ng¾t IP (Interrupt Priority) vµ IE (Interrupt Enable) : Thanh ghi IE dïng ®Ó cho phÐp c¸c ng¾t ho¹t ®éng/kh«ng ho¹t ®éng. Cßn thanh ghi IP dïng ®Ó x¸c ®Þnh møc −u tiªn cho c¸c ng¾t cña 8051. - C¸c thanh ghi ®iÒu khiÓn bé ®Þnh thêi : §ã lµ c¸c thanh ghi TMOD, TCON, TH0, TL0, TH1, TL1. C¸c thanh ghi nµy ®−îc sö dông ®Ó ®iÒu khiÓn bé ®Þnh thêi 0 vµ 1. - Thanh ghi SP - Stack Pointer : Thanh ghi con tror ng¨n xÕp (stack), SP chøa ®Þa chØ cña d÷ liÖu hiÖn ®ang ë ®Ønh stack. Néi dung mÆc ®Þnh cña SP khi khëi ®éng lµ 07H. Thao t¸c cÊt vµo stack ®Çu tiªn sÏ l−u d÷ liÖu vµo vÞ trÝ nhí cã ®Þa chØ 08H v× c¬ chÕ lµm viÖc cña chip 8051 lµ t¨ng néi dung SP lªn 1 tr−íc khi thùc hiÖn l−u d÷ liÖu vµo ng¨n xÕp. - Con trá d÷ liÖu DPTR - Data PoinTeR : §−îc dïng ®Ó truy xuÊt bé nhí ch−¬ng tr×nh ngoµi hoÆc bé nhí d÷ liÖu ngoµi. DPTR lµ thanh ghi 16 bit gåm 2 phÇn lµ DPH vµ DPL. 1.1.3.3 C¸c ho¹t ®éng chøc n¨ng chÝnh cña 8051

Ho¹t ®éng ®Þnh thêi C¸c bé ®Þnh thêi dïng ®Ó t¹o ra c¸c kho¶ng thêi gian kh¸c nhau, dïng ®Ó ®Õm sù kiÖn hoÆc dïng ®Ó t¹o tèc ®é baud cho viÖc truyÒn th«ng nèi tiÕp. Trong 8051 cã hai bé ®Þnh thêi lµ T0 vµ T1. ViÖc lùa chän chÕ ®é ho¹t ®éng cho c¸c Timer nµy nhê vµo thanh ghi TMOD. Cßn viÖc ®iÒu khiÓn c¸c Timer ho¹t ®éng nhê vµo thanh ghi TCON. Cã 4 mode ho¹t ®éng cho c¸c Timer. Mode 0 lµ chÕ ®é ®Þnh thêi 13-bit, Mode 1 lµ chÕ ®é ®Þnh thêi 16-bit, Mode 2 lµ chÕ ®é ®Þnh thêi tù n¹p l¹i 8-bit, Mode 3 lµ chÕ ®é ®Þnh thêi chia xÎ vµ cã ho¹t ®éng kh¸c nhau cho tõng bé ®Þnh thêi.

Ho¹t ®éng cña port nèi tiÕp Chøc n¨ng c¬ b¶n cña port nèi tiÕp lµ chuyÓn ®æi d÷ liÖu tõ song song thµnh nèi tiÕp khi ph¸t vµ tõ nèi tiÕp thµnh song song khi thu. D÷ liÖu ®−îc truyÒn ®i hoÆc nhËn Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 11

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

vÒ th«ng qua bé ®Öm d÷ liÖu nèi tiÕp SBUF (Serial data BUFfer). Khi truyÒn ®i, d÷ liÖu ®−îc chuyÓn tõ song song sang nèi tiÕp th«ng qua ch©n TxD. Khi thu, d÷ liÖu ®−îc chuyÓn tõ nèi tiÕp sang song song th«ng qua ch©n RxD. Thanh ghi SBUF cã ®Þa chØ 99H. ViÖc ghi d÷ liÖu cho SBUF tøc lµ ph¸t d÷ liÖu, viÖc ®äc SBUF tøc truy xuÊt d÷ liÖu nhËn ®−îc (thu d÷ liÖu). §iÒu khiÓn port nèi tiÕp th«ng qua thanh ghi SCON cã ®Þa chØ lµ 98H, thanh ghi nµy lµ thanh ghi ®Þnh ®Þa chØ tõng bit cho ta x¸c ®Þnh ®−îc c¸c chÕ ®é lµm viÖc cña port nèi tiÕp (th«ng qua hai bit MS0 & MS1).

Ho¹t ®éng cña ng¾t trong 8051 Cã 5 nguyªn nh©n ®Ó t¹o ra ng¾t trong 8051. §ã lµ 2 ng¾t ngoµi, hai ng¾t do bé ®Þnh thêi vµ mét ng¾t do port nèi tiÕp. Khi ta thiÕt lËp tr¹ng th¸i ban ®Çu (sau khi RESET), tÊt c¶ c¸c ng¾t ®Òu bÞ v« hiÖu ho¸ vµ sau ®ã chóng ®−îc cho phÐp riªng rÏ b»ng phÇn mÒm. Khi ch−¬ng tr×nh ®ang thùc hiÖn, nÕu cã ng¾t víi −u tiªn cao xuÊt hiÖn, tr×nh phôc vô ng¾t cho ng¾t cã møc −u tiªn thÊp t¹m dõng. Ta kh«ng thÓ t¹m dõng mét ch−¬ng tr×nh ng¾t cã møc −u tiªn cao h¬n. Khi cã 2 ng¾t kh¸c nhau xuÊt hiÖn ®ång thêi, ng¾t cã mùc −u tiªn cao sÏ ®−îc phôc vô tr−íc. Khi 2 ng¾t cã cïng møc −u tiªn xuÊt hiÖn ®ång thêi, chuçi vßng cè ®Þnh sÏ x¸c ®Þnh ng¾t bµo ®−îc phôc vô tr−íc. Chuçi vßng nµy sÏ lµ ng¾t ngoµi 0, ng¾t ngoµi 1, ng¾t do bé ®Þnh thêi 0, ng¾t do bé ®Þnh thêi 1, ng¾t do port nèi tiÕp, ng¾t do bé ®Þnh thêi 2 (®èi víi 8052). Khi mét ng¾t ®−îc chÊp nhËn, gi¸ trÞ ®−îc n¹p cho bé ®Õm ch−¬ng tr×nh ®−îc gäi lµ vÐc t¬ ng¾t. VÐc t¬ ng¾t lµ ®Þa chØ b¾t ®Çu cña tr×nh phôc vô ng¾t cña c¸c ng¾t t−¬ng øng. C¸c vÐc t¬ ng¾t ®−îc cho ë b¶ng sau :

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 12

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Nguån ng¾t



§Þa chØ vector ng¾t

Reset hÖ thèng

RST

0000H

Ng¾t ngoµi 0

IE0

0003H

Bé ®Þnh thêi 0

TF0

000BH

Ng¾t ngoµi 1

IE1

0013H

Bé ®Þnh thêi 1

TF1

001BH

Port nèi tiÕp

RI or TI

0023H

Bé ®Þnh thêi 2

TF2 or EXF2

002BH

Ho¹t ®éng RESET cña 8051 8051 ®−îc reset b»ng c¸ch gi÷ ch©n RST ë møc cao tèi thiÓu hai chu kú m¸y vµ sau ®ã chuyÓn vÒ møc thÊp. Tr¹ng th¸i cña tÊt c¶ c¸c thanh ghi sau khi reset hÖ thèng nh− sau : Thanh ghi Bé ®Õm ch−¬ng tr×nh PC

Néi dung 0000H

Thanh chøa A

00H

Thanh ghi B

00H

PSW

00H

SP

07H

DPTR Port 0 ®Õn port 3

0000H FFH

IP

xxx00000B

IE

0xx00000B

C¸c thanh ghi ®Þnh thêi

00H

SCON

00H

SBUF

00H

PCON ( HMOS)

0xxxxxxxB

PCON ( CMOS)

0xxx0000B

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 13

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Khi reset hÖ thèng thanh ghi PC ®−îc n¹p ®Þa chØ 0000H, khi ®ã ch−¬ng tr×nh sÏ b¾t ®Çu tõ ®Þa chØ ®Çu tiªn trong bé nhí ch−¬ng tr×nh. Néi dung cña RAM trªn chip kh«ng bÞ ¶nh h−ëng khi ta reset hÖ thèng. 1.1.4 Giíi thiÖu hä vi ®iÒu khiÓn 8 bit cña Motorola C¸c hä vi ®iÒu khiÓn cña Motorola ®−îc kÝ hiÖu b¾t ®Çu bëi ch÷ c¸i MC. V× cè g¾ng gi÷ l¹i phÇn mÒm c¸c nhµ chÕ t¹o linh kiÖn b¸n dÉn th−êng duy tr× sù t−¬ng thÝch víi c¸c bé vi xö lÝ ®Çu ®êi. H!ng Motorola ®−a ra bé vi ®iÒu khiÓn M6801 ®Çu tiªn cña h!ng trªn thÞ tr−êng thÕ giíi vµo n¨m 1978 vµ bé vi ®iÒu khiÓn nµy ®−îc chÕ t¹o trªn c¬ së sö dông bé vi xö lÝ M6800. Bé vi ®iÒu khiÓn M6801 cã bé nhí ROM vµ RAM ngoµi lín nhÊt lªn ®Õn 64KB víi m¹ch giao diÖn vµo/ra, truyÒn th«ng nèi tiÕp kh«ng ®ång bé ®! b¾t ®Çu phæ biÕn trong hÖ thèng ®iÒu khiÓn «t«. Sau ®ã vµo n¨m 1985 Motorola ®! ph¸t triÓn bé vi ®iÒu khiÓn 68HC11 t−¬ng thÝch víi bé vi xö lÝ M6800. Bé vi ®iÒu khiÓn MC68HC11 tiªu thô Ýt c«ng suÊt h¬n vµ cho phÐp tÝn hiÖu nhiÔu cao h¬n so víi c¸c bé vi xö lÝ ®Çu ®êi. MC68HC11 cã nhiÒu phiªn b¶n, vÝ dô MC68HC11A8 vµ MC68HC11E9. Mét sè h!ng nh− Mitsubishi, Toshiba còng s¶n xuÊt c¸c bé vi ®iÒu khiÓn nµy theo c«ng nghÖ cña Motorola. B¶ng d−íi ®©y liÖt kª c¸c ®Æc ®iÓm c¬ b¶n cña mét sè chip vi ®iÒu khiÓn trong hä 68HC11: MC

ROM

RAM

EEPROM

ADC

I/O

68HC11A8

8KB

256 bytes

512 bytes

8 channels

38 pins

68HC811E2

0

256 bytes

2 KB

-

-

68HC11F1

0

1 KB

-

-

-

68HC11E9

12 KB

512 bytes

512 bytes

-

-

68HC11B8

8 KB

256 bytes

512 bytes

-

-

68HC11B0

0

256 bytes

0

-

-

68HC11B1

0

256 bytes

512bytes

-

-

68HC11D3

4 KB

192 bytes

-

-

40 pins

68HC11A0

0

256 bytes

0

-

22 pins

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 14

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

1.1.5 Giíi thiÖu c¸c hä vi ®iÒu khiÓn 8 bit cña h·ng Microchip Technology H!ng Microchip Technology lµ mét trong nh÷ng nhµ cung cÊp hµng ®Çu vÒ c¸c gi¶i ph¸p ®iÒu khiÓn cho c¸c hÖ thèng nhóng (Embedded control system). Hai dßng s¶n phÈm chÝnh cña h!ng lµ c¸c hä vi ®iÒu khiÓn 8-bit PIC16/17 vµ c¸c chip nhí kh«ng bay h¬i EEPROM nèi tiÕp, nh÷ng s¶n phÈm nµy ®−îc ®−a vµo øng dông cho viÖc ®−a ra c¸c gi¶i ph¸p thiÕt kÕ c¸c hÖ thèng ®iÒu khiÓn nhóng cña h!ng cung cÊp cho kh¸ch hµng. C¸c hä vi ®iÒu khiÓn PIC16Cxx vµ PIC17Cxx cña h!ng Microchip Technology ®−îc sö dông kh¸ th«ng dông vµ réng r!i cho c¸c øng dông ®iÒu khiÓn trong viÖc chÕ t¹o c¸c s¶n phÈm tiªu dïng, trong tù ®éng hãa v¨n phßng, thiÕt bÞ ngo¹i vi cña m¸y tÝnh, c¸c hÖ thèng tù ®éng ®iÒu khiÓn ... D−íi ®©y liÖt kª c¸c ®Æc ®iÓm chÝnh, c¸c thµnh phÇn c¬ b¶n cña mét sè chip vi ®iÒu khiÓn trong c¸c hä vi ®iÒu khiÓn 8- bit PIC16Cxx vµ PIC17Cxx.

Hä PIC16Cxx Memory PIC

(0)

16C61

Peripheral

Features

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

(10)

(12)

(13)

20

1K

_

36

_

1

_

_

_

_

_

3

13

16C62

20

2K

_

128

_

3

2

Yes

_

_

_

10

22

16C63

20

4K

_

192

_

3

2

Yes

_

_

_

10

22

16C64

20

2K

_

128

_

3

1

Yes

Yes

_

_

8

33

16C65

20

4K

_

192

_

3

2

Yes

Yes

_

_

11

33

16C620

20

512

_

80

_

1

_

_

_

_

2

4

13

16C621

20

1K

_

80

_

1

_

_

_

_

2

4

13

16C622

20

2K

_

128

_

1

_

_

_

_

2

4

13

16C71

20

1K

_

36

_

1

_

_

_

4

_

4

13

16C73

20

4K

_

192

_

3

2

Yes

_

5

_

11

22

16C74

20

4K

_

192

_

3

2

Yes

Yes

8

_

12

33

16C84

10

_

1K

36

64

1

_

_

_

_

_

4

13

Chó thÝch : Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 15

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

(0)

: TÇn sè cÊp t¹o xung Clock (MHz).

(1)

: Dung l−îng bé nhí ch−¬ng tr×nh EPROM trong.

(2)

: Dung l−îng bé nhí ch−¬ng tr×nh EEPROM trong.

(3)

: Dung l−îng bé nhí d÷ liÖu RAM trong (bytes).

(4)

: Dung l−îng bé nhí d÷ liÖu EEPROM trong (bytes).

(5)

: Sè Module Timer.

(6)

: Sè Capture, Module PWM.

(7)

: Cæng nèi tiÕp.

(8)

: Cæng song song.

(9)

: Sè kªnh chuyÓn ®æi Analog – Digital (ADC).

(10) : Sè bé so s¸nh (Comparator). (11) : Sè nguån ng¾t (Interrup source). (12) : Sè ®−êng vµo/ra (I/O pins).

Hä PIC17Cxx

Memory

Peripherals

Features

PIC (0)

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

17C42

25

2K

232

4

2

Yes

Yes

11

33

55

17C43

25

4K

454

4

2

Yes

Yes

11

33

58

17C44

25

8K

454

4

2

Yes

Yes

11

33

58

Chó thÝch : (0) : TÇn sè cÊp t¹o xung Clock (MHz). (1) : Dung l−îng bé nhí ch−¬ng tr×nh EPROM bªn trong. (2) : Dung l−îng bé nhí d÷ liÖu RAM bªn trong. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 16

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

(3) : Sè Module Timer. (4) : Sè Module PWM. (5) : Cæng nèi tiÕp. (6) : Ng¾t ngoµi (External interrupts). (7) : Sè nguån ng¾t (Interrupt sources). (8) : Sè ®−êng vµo/ra (I/O pins). (9) : Sè lÖnh ®iÒu khiÓn (Instructions). §¸nh gi¸ c¸c dßng PIC - Dßng PIC nhiÒu ch©n nhÊt lµ dßng dsPIC30Fxxxx vµ PIC18Fxxxx, cã nh÷ng con sè ch©n lªn ®Õn 80 ch©n. - Dßng PIC Ýt ch©n nhÊt lµ dßng PIC10Fxxx, chØ cã 6 ch©n - Dßng PIC phæ biÕn nhÊt lµ dßng PIC16F877A (®ñ m¹nh vÒ tÝnh n¨ng, 40 ch©n, bé nhí ®ñ cho hÇu hÕt c¸c øng dông th«ng th−êng) - Dßng PIC mµ ®−îc c¸c chuyªn gia ®¸nh gi¸ cao nhÊt lµ dßng PIC16F876A (28 ch©n, chøc n¨ng kh«ng kh¸c g× so víi PIC16F877A, nh−ng nhá gän h¬n nhiÒu, vµ sè ch©n còng kh«ng qu¸ Ýt nh− PIC16F88). - Dßng PIC hç trî giao tiÕp USB lµ dßng PIC18F2550 vµ PIC18F4550 - Dßng PIC ®iÒu khiÓn ®éng c¬ m¹nh nhÊt lµ dßng PIC18F4x31 vµ dßng dsPIC30F dïng ®iÒu khiÓn ®éng c¬ - Dßng PIC hiÖn nay ®! kh«ng cßn ®−îc s¶n xuÊt n÷a lµ dßng PIC17xxxxx. *(C¸c ®¸nh gi¸ vÒ PIC ®−îc trÝch ë website www.picvietnam.com)

1.1.6 Giíi thiÖu chip vi ®iÒu khiÓn th«ng minh PSoC PSoC lµ ch÷ viÕt t¾t cña Programmable System on Chip. §ã lµ mét c«ng nghÖ chÕ t¹o chip hiÖn ®¹i nhÊt cho ®Õn nay, cho phÐp t¹o ra c¸c chip hÖ thèng xö lÝ hçn hîp (Mixed signal) víi kh¶ n¨ng xö lÝ thuËt to¸n m¹nh. §Æc ®iÓm cña c¸c thÕ hÖ vi ®iÒu khiÓn chÕ t¹o theo c«ng nghÖ tr−íc ®©y lµ trªn mét chip vi ®iÒu khiÓn chØ cã thÓ thay ®æi ®−îc ch−¬ng tr×nh phÇn mÒm chø kh«ng thÓ lËp tr×nh thay ®æi ®−îc cÊu tróc phÇn cøng. Gi¸ thµnh cho viÖc sö dông c¸c chip vi ®iÒu

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 17

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

khiÓn vµ mua c¸c phÇn mÒm hç trî ®Ó ph¸t triÓn c¸c øng dông lµ rÊt ®¾t vµ mang l¹i hiÖu qu¶ kh«ng cao, khã cã thÓ th«ng minh hãa viÖc ®iÒu khiÓn hÖ thèng. Víi chip vi ®iÒu khiÓn th«ng minh chÕ t¹o theo c«ng nghÖ PSoC, chóng ta cã thÓ lËp tr×nh trªn chip ®Ó thay ®æi kh«ng nh÷ng c¶ phÇn mÒm ®iÒu khiÓn mµ c¶ cÊu tróc phÇn cøng ngay khi hÖ thèng ®ang ho¹t ®éng. ViÖc øng dông chip vi ®iÒu khiÓn th«ng minh theo c«ng nghÖ PSoC mang l¹i hiÖu qu¶ cao vÒ kü thuËt vµ gi¸ thµnh gi¶m ®i nhiÒu lÇn so víi viÖc sö dông c¸c chip vi ®iÒu khiÓn tr−íc ®©y. §èi víi c¸c chip vi ®iÒu khiÓn th«ng minh, bªn trong nã ®! tÝch hîp ®Çy ®ñ c¸c thµnh phÇn CPU, c¸c bé nhí, c¸c khèi (block) t−¬ng tù vµ sè nªn mét sè thµnh phÇn ngo¹i vi bªn ngoµi chip trong hÖ thèng cã thÓ gi¶m ®i. V× thÕ, gi¸ thµnh vµ kÝch th−íc cña hÖ thèng gi¶m ®i nhiÒu so víi hÖ thèng sö dông c¸c chip vi ®iÒu khiÓn thÕ hÖ tr−íc ®©y. HiÖn nay, cã nhiÒu h!ng ®iÖn tö trªn thÕ giíi quan t©m ®Çu t− cho viÖc nghiªn cøu vµ ¸p dông c«ng nghÖ chÕ t¹o chip míi nµy. Trong ®ã cã thÓ kÓ ®Õn h!ng Cypress Microchip ®! ¸p dông thµnh c«ng c«ng nghÖ PSoC ®Ó cho ra ®êi c¸c hä vi ®iÒu khiÓn th«ng minh CY8C24xxx, CY8C25xxx, CY8C26xxx vµ CY8C27xxx. Mét vÝ dô cô thÓ vÒ kh¶ n¨ng lËp tr×nh thay ®æi c¶ cÊu h×nh phÇn cøng vµ ch−¬ng tr×nh phÇn mÒm ®iÒu khiÓn lµ ®Ò tµi øng dông chip vi ®iÒu khiÓn th«ng minh c«ng nghÖ PSoC ®Ó chÕ t¹o m¸y b¸n hµng th«ng minh tù ®éng. M¸y cã chøc n¨ng b¸n hµng tù ®éng vµo ban ngµy vµ ban ®ªm th× nã thay ®æi c¶ cÊu h×nh phÇn cøng vµ ch−¬ng tr×nh phÇn mÒm ®Ó lµm chøc n¨ng truyÒn th«ng.

H×nh 1.3 - CÊu h×nh cña mét chip PSoC Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 18

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

1.2 Giíi thiÖu c¸c c«ng cô ph¸t triÓn hÖ vi xö lÝ vµ vi ®iÒu khiÓn 1.2.1 C«ng cô ph¸t triÓn cho hä MCS-51 1.2.1.1 PhÇn mÒm Keil cña h·ng Keil Software PhÇn mÒm Keil Vision2 lµ mét ch−¬ng tr×nh biªn dÞch cho phÐp ng−êi sö dông cã thÓ viÕt ®−îc c¸c ch−¬ng tr×nh ®iÒu khiÓn cho hä vi ®iÒu khiÓn MSC-51 b»ng ng«n ng÷ C vµ c¶ ASM. Nã cã chøa hÇu hÕt c¸c hµm chuÈn cña ANSI-C. §iÒu nµy gióp cho ng−êi sö dông cã thÓ tËn dông ®−îc nh÷ng hµm chuÈn cña C ®Ó viÕt ch−¬ng tr×nh cho vi ®iÒu khiÓn. ViÖc tæ chøc ch−¬ng tr×nh thµnh c¸c m«dun nhá còng rÊt dÔ thùc hiÖn. Ch−¬ng tr×nh biªn dÞch cho ng«n ng÷ C cña nã chÝnh lµ Cx51 Compiler. Cx51 Compiler hç trî tÊt c¶ c¸c kiÓu d÷ liÖu chuÈn cña C nh− : char, short, int, long, float. Ngoµi ra nã cßn cã mét vµi kiÓu d÷ liÖu ®Æc biÖt t−¬ng thÝch víi hä vi ®iÒu khiÓn MSC-51. - KiÓu bit : ®©y lµ kiÓu d÷ liÖu chØ gåm 2 gi¸ trÞ 0 vµ 1. Nã ®−îc sö dông ®Ó g¸n gi¸ trÞ cho c¸c thanh ghi hay c¸c ®Þa chØ cã thÓ truy nhËp ®−îc ®Õn tõng bit. - KiÓu sbit, sfr, sfr16 : ®©y lµ c¸c kiÓu d÷ liÖu dïng ®Ó ®Þnh nghÜa cho c¸c thanh ghi chøc n¨ng ®Æc biÖt. KiÓu sfr dïng ®Ó ®Þnh nghÜa cho c¸c thanh ghi SFR 8-bit. Cßn kiÓu sfr16 dïng ®Ó ®Þnh nghÜa cho c¸c thanh ghi SFR 16-bit nh− thanh ghi RCAP2 dïng ®Ó l−u gi÷ gi¸ trÞ n¹p l¹i cho Timer 2. KiÓu sbit dïng ®Ó ®Þnh nghÜa tõng bit cho c¸c bit trong c¸c thanh ghi ®Æc biÖt mµ cã thÓ ®Þnh ®Þa chØ bit. VÝ dô khai b¸o : sfr P0

= 0x80;

/* Port 0 */

sfr SP

= 0x81;

/* Stack Pointer */

sbit P0_0 = 0x80; sbit P0_1 = 0x81;

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 19

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

VÒ c¸ch tæ chøc bé nhí cña vi ®iÒu khiÓn trong phÇn mÒm Keil C51 : - Bé nhí ch−¬ng tr×nh : §©y lµ vïng nhí chØ ®äc trong vi ®iÒu khiÓn. Nã cã thÓ cã dung l−îng tíi 64KB. Trong phÇn mÒm Keil C51 th× vïng nhí nµy ®−îc ®Þnh d¹ng b»ng tõ kho¸ code. VÝ dô khai b¸o biÕn thuéc vïng code : char code str[]={“DHBKDN”}; //Khai b¸o mét m¶ng ký tù chøa trong vïng nhí code - Bé nhí d÷ liÖu trong : §©y lµ vïng nhí cã thÓ võa ghi vµ ®äc. Cã 3 kiÓu vïng nhí d÷ liÖu ë bªn trong vi ®iÒu khiÓn. §ã lµ c¸c kiÓu : data, idata, bdata. Vïng nhí d÷ liÖu kiÓu data lµ vïng nhí chøa 128 byte d÷ liÖu ®Çu tiªn cña vi ®iÒu khiÓn. Vïng nhí nµy cã thÓ truy cËp th«ng qua ®Þa chØ trùc tiÕp ®−îc. Vïng nhí d÷ liÖu kiÓu idata lµ vïng nhí 256 byte d÷ liÖu truy nhËp th«ng qua ®Þa chØ gi¸n tiÕp. Vïng nhí d÷ liÖu kiÓu bdata lµ vïng nhí chøa 16 byte ®Þnh ®Þa chØ bit tõ ®Þa chØ 20H ®Õn 2FH. VÝ dô khai b¸o biÕn trong vïng nhí d÷ liÖu trong : unsigned char data v1; //Khai b¸o biÕn v1 unsigned int idata v2; //Khai b¸o biÕn v2 - Bé nhí d÷ liÖu ngoµi : Cã 2 kiÓu d÷ liÖu ngoµi ë trong Keil C51 lµ XDATA vµ PDATA. XDATA lµ vïng nhí d÷ liÖu ngoµi cã thÓ ®Þnh ®Þa chØ ®−îc ®Õn 64 KB d÷ liÖu. PDATA lµ vïng nhí chøa tõng trang d÷ liÖu. Mçi trang d÷ liÖu ngoµi chøa ®−îc 256 byte. §Ó cã thÓ truy cËp ®−îc bé nhí d÷ liÖu ngoµi, ta ph¶i dïng tõ kho¸ _at_ ®Ó ®Þnh ®Þa chØ cho c¸c biÕn. VÝ dô khai b¸o biÕn trong vïng nhí d÷ liÖu ngoµi : float xdata a1 _at_ 0x2000; //Khai b¸o biÕn a1 cã ®Þa chØ 2000H unsigned long pdata a2 _at_ 0x2004; // BiÕn a2 cã ®Þa chØ 2004 Con trá trong Keil C51 ®−îc khai b¸o gièng nh− khai b¸o con trá trong ng«n ng÷ C. VÝ dô vÒ khai b¸o con trá : char *s; //Con trá cña mét string int *p; //Con trá kiÓu int

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 20

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Con trá ®−îc sö dông ®Ó truy cËp tíi bÊt cø phÇn bé nhí nµo cña vi ®iÒu khiÓn. Cã hai c¸ch khai b¸o sö dông con trá. Generic Pointers lµ kiÓu con trá dïng chung. Khai b¸o con trá sÏ chiÕm 3 byte cña vïng nhí d÷ liÖu mµ nã trá ®Õn. Con trá cßn cã thÓ khai b¸o vïng nhí d÷ liÖu cho con trá. VÝ dô : char data *str; /* ptr to string in data */ int xdata *numtab; /* ptr to int(s) in xdata */ long

code *powtab; /* ptr to long(s) in code */

Ngoµi ra, Keil C51 cßn lµ ch−¬ng tr×nh m« pháng chip rÊt tèt b»ng ch−¬ng tr×nh tÝch hîp dScope. Nã cho phÐp ng−êi sö dông m« pháng ch−¬ng tr×nh viÕt trong C ch¹y trªn nÒn chip gièng nh− thËt. Ng−êi sö dông cã thÓ dÔ dµng theo dâi gi¸ trÞ cña Timer, tr¹ng th¸i c¸c ng¾t, ®Çu ra cæng nèi tiÕp, ®Çu ra c¸c port P0...P3. 1.2.1.2 PhÇn mÒm Borland Delphi 7.0 cña h·ng Borland

Borland Delphi 7.0 lµ mét c«ng cô m¹nh dïng ®Ó x©y dùng c¸c øng dông 32 bit ch¹y trªn nÒn Windows bao gåm c¶ Windows 9x vµ NT. 1.2.3 C«ng cô ph¸t triÓn cho hä vi ®iÒu khiÓn MC68HC11 C¸c chip vi ®iÒu khiÓn hä Motorola 68HC11 cã thÓ ®−îc lËp tr×nh b»ng ng«n ng÷ Assembly hoÆc C nh− c¸c hä vi ®iÒu khiÓn kh¸c. Chóng ta cã thÓ tham kh¶o c«ng cô ph¸t triÓn hç trî cho viÖc lËp tr×nh, m« pháng vµ ph¸t triÓn c¸c øng dông víi chip vi ®iÒu khiÓn MC68HC11 sau ®©y.

PhÇn mÒm Micro-IDE PhÇn mÒm Micro-IDE lµ mét c«ng cô ph¸t triÓn m¹nh hç trî cho viÖc lËp tr×nh, m« pháng cho nhiÒu lo¹i chip vi ®iÒu khiÓn kh¸c nhau, ch¹y trªn m«i tr−êng Windows. Giao diÖn ng−êi dïng cña nã nh− h×nh vÏ, víi phÇn mÒm nµy ta cã thÓ lùa chän ®Ó lµm viÖc víi c¸c chip trong hä 8051, M68HC11, M68HC12, M68HC16, 8085, 8086,... vµ c¸c chip hä AVR. C¸c tÝnh n¨ng, ®Æc ®iÓm cña phÇn

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 21

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

mÒm nµy t−¬ng tù nh− phÇn mÒm Keil C51 nh−ng øng dông cña nã th× réng h¬n cho nhiÒu lo¹i chip kÓ trªn. Ng«n ng÷ lËp tr×nh cã thÓ so¹n th¶o vµ biªn dÞch trªn m«i tr−êng cña Micro-IDE cã thÓ b»ng C hoÆc Assembly.

H×nh 1.4 - Giao diÖn cña phÇn mÒm Micro-IDE 1.2.4 C«ng cô ph¸t triÓn cho hä vi ®iÒu khiÓn PIC16/17 Hä vi ®iÒu khiÓn PIC16/17 ®−îc hç trî bëi ®Çy ®ñ c¸c c«ng cô ph¸t triÓn c¶ vÒ phÇn cøng vµ phÇn mÒm sau ®©y : PICMASTER® Real-Time In-Curcirt Emulator. PROMATETM Universal Programmer. PICSTART® Low-Cost Prototype Programmer. PICDEM-1 Low-Cost Demonstration Board. PICDEM-2 Low-Cost Demonstration Board. MPASM Assembler. MPSIM Softwave Simulator. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 22

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

C Compiler (MP-C). Fuzzy logic development system (fuzzy TECH®-MP). D−íi ®©y ta sÏ ®i vµo giíi thiÖu hai c«ng cô ph¸t triÓn phÇn mÒm th−êng ®−îc sö dông lµ MPASM Assembler vµ C Compiler (MP-C).

MPASM Assembler MPASM cã hç trî ®Çy ®ñ cho viÖc viÕt t¹o ra c¸c Macro trong ch−¬ng tr×nh m! ng÷, viÕt ch−¬ng tr×nh b»ng ng«n ng÷ Assembly, cung cÊp c¸c m! nguån cã s½n vµ c¸c ®Þnh d¹ng file kh¸c nhau. Nã t¹o ra mét m«i tr−êng cho phÐp so¹n th¶o m! nguån, biªn dÞch còng nh− gì rèi c¸c ch−¬ng tr×nh cña ng−êi sö dông lËp tr×nh cho c¸c chip vi ®iÒu khiÓn kh¸c nhau bao gåm c¶ hä PIC16Cxx, PIC 16Cxx vµ PIC16C5x. MPASM cã c¸c ®Æc ®iÓm chÝnh sau ®©y trong viÖc hç trî ph¸t triÓn c¸c øng dông cña ng−êi dïng: + Cho phÐp biªn dÞch ch−¬ng tr×nh tõ m! Assembly sang m! ®èi t−îng cho tÊt c¶ c¸c vi ®iÒu khiÓn cña h!ng Microchip. + Cho phÐp t¹o ra c¸c ch−¬ng tr×nh Macro. + T¹o ra tÊt c¶ c¸c file cÇn thiÕt (Object, Listing, Symbol, vµ c¸c d¹ng ®Æc biÖt kh¸c) khi biªn dÞch vµ gì rèi cho c¸c hÖ vi ®iÒu khiÓn cña Microchip. + Hç trî viÖc sö dông vµ t¹o ra c¸c file ®Þnh d¹ng Hex, Decimal vµ Octal.

C Compiler (MP-C) C«ng cô ph¸t triÓn phÇn mÒm MP-C lµ mét tr×nh biªn dÞch hoµn chØnh vµ ®−îc tÝch hîp vµo trong m«i tr−êng ph¸t triÓn cho c¸c chip vi ®iÒu khiÓn hä PIC16/17 cña Microchip. Tr×nh biªn dÞch nµy cã nhiÒu kh¶ n¨ng m¹nh mÏ vµ rÊt dÔ sö dông, ®iÒu nµy khã cã thÓ t×m thÊy ë mét c«ng cô ph¸t triÓn nµo kh¸c. §Ó dÔ dµng cho viÖc sö dông vµ gì rèi, tr×nh biªn dÞch MP-C sö dông c¸c ký hiÖu th«ng tin thÝch hîp víi c¸c kÝ hiÖu cña c«ng cô ph¸t triÓn kh¸c lµ PICMASTER® Universal Emulator.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 23

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Ngoµi ra hiÖn nay cßn cã mét sè phÇn mÒm kh¸c rÊt linh ho¹t, hç trî viÕt cho nhiÒu dßng PIC, tõ 16/17/18 ®Õn dsPIC b»ng C nh− CCS C, HT PIC, HT PIC 18 hay b»ng Pascal nh− MikroPascal ... 1.2.5 C«ng cô ph¸t triÓn cho hä vi ®iÒu khiÓn th«ng minh PSoC PhÇn mÒm PSoC Designer lµ mét c«ng cô hoµn chØnh ®−îc tÝch hîp vµo hÖ thèng hç trî cho viÖc ph¸t triÓn c¶ vÒ mÆt lËp tr×nh cÊu h×nh phÇn cøng vµ ch−¬ng tr×nh phÇn mÒm cho c¸c chip vi ®iÒu khiÓn th«ng minh chÕ t¹o theo c«ng nghÖ PSoC cña h!ng Cypress Microchip, vÝ dô nh− hä CY8C25-26xxx. PhÇn mÒm PSoC Designer ®−îc x©y dùng trªn nÒn hÖ ®iÒu hµnh Windows vµ nã cã thÓ ch¹y ®−îc trªn Windows98, Windows NT 4.0, Windows 2000, Windows Millennium (Me), or Windows XP. PSoC Designer gióp ng−êi sö dông lùa chän mét thuËt to¸n cÊu h×nh phÇn cøng cho vi ®iÒu khiÓn, lËp tr×nh phÇn mÒm cho vi ®iÒu khiÓn, vµ gì rèi. HÖ thèng nµy cho phÐp qu¶n lÝ c¬ së d÷ liÖu b»ng c¸c project, tÝch hîp phÇn gì rèi víi In-Circuit Emulator, cho phÐp lËp tr×nh ngay trªn hÖ thèng (In-system programming), vµ hç trî viÖc t¹o ra c¸c Macro CYASM cho ch−¬ng tr×nh b»ng hîp ng÷. PSoC Designer còng hç trî viÖc lËp tr×nh b»ng ng«n ng÷ bËc cao C vµ biªn dÞch, gì rèi c¸c ch−¬ng tr×nh ®ã cho c¸c thiÕt bÞ cña h!ng Cypress Microchip. 1.3 KIT vi ®iÒu khiÓn 1.3.1 Môc ®Ých Kü thuËt vi ®iÒu khiÓn lµ m«n häc c¬ b¶n quan träng ®èi víi sinh viªn c¸c ngµnh §iÒu khiÓn, Tù ®éng hãa , §iÖn tö, Tin häcv..v…. nh»m trang bÞ cho sinh viªn nh÷ng kiÕn thøc cÇn thiÕt vÒ mét hä vi ®iÒu khiÓn, ë ®©y lµ hä 8051, nh− cÊu tróc, nguyªn t¾c ho¹t ®éng cïng c¸c m¹ch phô trî, tËp lÖnh, c¸ch lËp tr×nh b»ng hîp ng÷, c¸c ph−¬ng thøc ®iÒu khiÓn vµo ra vµ c¸c ph−¬ng ph¸p kÕt nèi thiÕt bÞ ngo¹i vi. Dùa trªn nÒn t¶ng kiÕn thøc cña m«n häc kü thuËt vi ®iÒu khiÓn, sinh viªn tiÕp thu nh÷ng m«n häc kü thuËt chuyªn ngµnh vµ tiÕp cËn dÔ dµng h¬n víi nh÷ng kü thuËt, trang thiÕt bÞ hiÖn Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 24

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

®¹i.§ång thêi cho phÐp sinh viªn cã c¸i nh×n trùc quan vµ kiÓm chøng, kh¼ng ®Þnh sù ®óng ®¾n c¸c kiÕn thøc ®! häc. Do vËy viÖc ®−a vµo gi¸o tr×nh phÇn x©y dùng thiÕt kÕ Kit vi ®iÒu khiÓn lµ hÕt søc quan träng vµ rÊt thiÕt thùc ®èi sinh viªn chuyªn ngµnh tù ®éng hãa, ®iÖn tö viÔn th«ng, ®o l−êng ….. C¸c Kit vi ®iÒu khiÓn ®Òu ®−îc thiÕt kÕ dù trªn c¸c hä vi ®iÒu khiÓn mµ sinh viªn ®ang häc trong gi¸o tr×nh nµy. Sinh viªn cã thÓ dïng c¸c Kit vi ®iÒu khiÓn nµy ®Ó ®iÒu khiÓn c¸c qu¸ tr×nh nhiÖt ®é, ®iÒu khiÓn ®éng c¬,®iÒu khiÓn c¸c ®èi t−îng giao th«ng, ®iÒu khiÓn c¸c qu¸ tr×nh s¶n xuÊt …….. Trªn thÕ giíi cã rÊt nhiÒu nguån cung cÊp c¸c m¹ch Kit nãi trªn nh− : + Tõ c¸c h!ng cña n−íc ngoµi, vÝ dô nh− bé KIT MDA-EMS51 cña h!ng Midas cña Hµn Quèc, KIT vµ phÇn mÒm ph¸t triÓn cho hä vi ®iÒu khiÓn PIC cña MikroElektronika (Website http://www.mikroelektronika.co.yu/), hay mét h!ng næi tiÕng kh¸c lµ OLIMEX (Website http://www.olimex.com) víi c¸c s¶n phÈm KIT ph¸t triÓn cho c¸c dßng AVR, PIC, MAXQ, MSP430, ARM... §Æc ®iÓm cña c¸c s¶n phÈm nµy lµ cã c¸c tÝnh n¨ng m¹nh, mÉu m! ®Ñp, phôc vô tèt nhu cÇu thùc hµnh cña m«n häc. Tuy nhiªn gi¸ thµnh cña thiÕt bÞ lµ rÊt ®¾t (gi¸ kho¶ng 700$ ®èi víi KIT MDAEMS51, vµ viÖc ®Æt mua kh«ng ®−îc thuËn tiÖn. + Do c¸c trung t©m nghiªn cøu vµ c¸c tr−êng ®¹i häc trong n−íc tù chÕ t¹o. Trong c¸c tr−êng ®¹i häc ( §¹i häc BK§N – bé m«n tù ®éng hãa ®! chÕ t¹o vµ s¶n xuÊt hoµn chØnh KIT vi ®iÒu khiÓn phôc vô ®µo t¹o vµ s¶n xuÊt), c¸c thiÕt bÞ thùc hµnh m«n häc vi ®iÒu khiÓn cã thÓ do c¸c c¸n bé gi¶ng d¹y m«n häc chÕ t¹o hoÆc do c¸c sinh viªn tù chÕ t¹o d−íi sù h−íng dÉn cña gi¸o viªn. −u ®iÓm cña c¸c s¶n phÈm chÕ t¹o trong n−íc lµ gi¸ thµnh rÎ mµ chÊt l−îng, mÉu m! kh«ng thua kÐm n−íc ngoµi. CÊu h×nh cña s¶n phÈm vµ néi dung thùc hµnh phï hîp víi môc ®Ých, ch−¬ng tr×nh ®µo t¹o, víi ®iÒu kiÖn häc tËp cña sinh viªn c¶ n−íc nãi chung vµ sinh viªn §HBK §µ N½ng nãi riªng. XuÊt ph¸t tõ t×nh h×nh thùc tÕ vµ sù cÇn thiÕt ®¸p øng nhu cÇu thùc hµnh trong qu¸ tr×nh häc tËp m«n häc vi ®iÒu khiÓn nãi trªn, viÖc thiÕt kÕ, x©y dùngmét bé KIT vi Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 25

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

®iÒu khiÓn víi ®Çy ®ñ c¸c thµnh phÇn c¬ b¶n (nªu ë phÇn yªu cÇu), lµ vÊn ®Ò hÕt søc cÇn thiÕt ®èi víi c¸ sinh viªn ngµnh tù ®éng hãa trong tr−êng ®¹i häc BK§N. §©y lµ vÊn ®Ò träng t©m trong gi¸o tr×nh nµy. 1.3.2 Yªu cÇu thiÕt kÕ KIT vi ®iÒu khiÓn phôc vô thÝ nghiÖm : + PhÇn cøng : Bëi v× môc ®Ých cña s¶n phÈm lµ phôc vô cho viÖc ®µo t¹o nªn cÊu h×nh phÇn cøng ph¶i râ rµng, dµn tr¶i. KÝch th−íc cña bé KIT gän nhÑ, dÔ dµng di chuyÓn vµ b¶o qu¶n. C¸c thµnh phÇn cña bé KIT ®−îc thÓ hiÖn râ rµng, dÔ nhËn biÕt, mét ®Æc ®iÓm n÷a lµ nã ®−îc ph©n thµnh c¸c module nhá vµ liªn kÕt víi module trung t©m b»ng BUS, ®iÒu nµy còng gióp ng−êi häc cã thÓ nh×n thÊy mét c¸ch trùc quan c¸c thµnh phÇn cña bµi thÝ nghiÖm sÏ tiÕn hµnh. §ång thêi viÖc tæ chøc thµnh c¸c module nhá còng tiÖn cho viÖc söa chöa, thiÕt kÕ më réng, vµ cã thÓ dÔ dµng trong viÖc th−¬ng m¹i hãa s¶n phÈm sau nµy. + C¸c thµnh phÇn cña bé KIT : Bé KIT cã ®Çy ®ñ c¸c thµnh phÇn c¬ b¶n cña mét hÖ vi ®iÒu khiÓn vµ c¸c nguån tµi nguyªn ngo¹i vi phong phó, cho phÐp ng−êi sö dông cã thÓ tù do ph¸t triÓn c¸c øng dông cña m×nh : Bé vi ®iÒu khiÓn trung t©m. C¸c bé nhí ROM (néi), RAM (néi/ngo¹i), EEPROM(néi/ngo¹i). C¸c cæng vµo/ra t−¬ng tù, vµo/ra sè, c¸c cæng ghÐp nèi ngo¹i vi më réng lËp tr×nh ®−îc. Giao tiÕp bµn phÝm. HiÓn thÞ LCD. HiÓn thÞ tr¹ng th¸i b»ng ®Ìn LED . HiÓn thÞ LED 7 thanh. HiÓn thÞ ma trËn LED (8x8). C¸c ®Çu vµo xung. M¹ch ®iÒu khiÓn ®éng c¬ mét chiÒu, ®éng c¬ b−íc.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 26

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Giao tiÕp víi m¸y tÝnh PC qua cæng truyÒn th«ng nèi tiÕp (COM) vµ song song (LPT). + C¸c bµi thÝ nghiÖm thùc hiÖn trªn bé KIT : C¸c bµi c¬ b¶n : Gióp sinh viªn lµm quen víi hÖ lÖnh cña chip vi ®iÒu khiÓn, nhËp c¸c lÖnh vµ ch¹y ch−¬ng tr×nh ®Ó xem kÕt qu¶ thùc hiÖn cña c¸c lÖnh ®ã. C¸c bµi n©ng cao : Gåm c¸c bµi thÝ nghiÖm phøc t¹p h¬n thùc hiÖn sö dông c¸c thµnh phÇn ngo¹i vi trªn bé KIT. C¸c bµi thÝ nghiÖm thùc hiÖn viÖc ®iÒu khiÓn mét qu¸ tr×nh t−¬ng tù hoÆc sè, vÝ dô : ®iÒu khiÓn hiÓn thÞ ®Ìn LED, LED 7 thanh, ma trËn LED, ®iÒu khiÓn vµo/ra sè - t−¬ng tù, ®iÒu khiÓn ®éng c¬ b−íc... + Thùc hiÖn c¸c bµi thÝ nghiÖm : C¸c bµi tËp mÉu x©y dùng tr−íc : §i kÌm víi s¶n phÈm bé KIT lµ mét hÖ thèng c¸c bµi tËp mÉu ®−îc x©y dùng cho c¸c øng dông trªn bé KIT nh− ®iÒu khiÓn c¸c thµnh phÇn ngo¹i vi cña KIT, ®iÒu khiÓn vµo/ra t−¬ng tù - sè... Sinh viªn cã thÓ ®äc h−íng dÉn sö dông vµ thùc hiÖn c¸c bµi tËp mÉu nµy trªn bé KIT. C¸c bµi tËp do sinh viªn tù lËp tr×nh : Sau khi ®! n¾m râ cÊu h×nh cña bé KIT vµ s¬ ®å bé nhí cña c¸c thµnh phÇn trªn bé KIT, sinh viªn cã thÓ tù lËp tr×nh c¸c bµi thÝ nghiÖm trªn bé KIT theo ý ®Þnh riªng cña m×nh. + C«ng cô lËp tr×nh : B»ng m¸y tÝnh PC : Cã thÓ sö dông ng«n ng÷ ASSEMBLY víi tr×nh biªn dÞch hîp ng÷ s½n cã cña nhµ s¶n xuÊt (ASM51.exe) hoÆc c¸c c«ng cô ph¸t triÓn vÝ dô nh− phÇn mÒm Keil, ProView32, 8051IDE hay 8051 Bascom… ®Ó lËp c¸c ch−¬ng tr×nh cho bé KIT tõ m¸y tÝnh b»ng ng«n ng÷ C, Assembly hay BASIC, sau ®ã biªn dÞch thµnh file d¹ng Hexa hoÆc Binary råi n¹p xuèng cho bé KIT thùc hiÖn c¸c ch−¬ng tr×nh ®ã.

+ C«ng cô ph¸t triÓn cho bé KIT : Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 27

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 1 : Tæng quan vÒ vi ®iÒu khiÓn

Ch−¬ng tr×nh MONITOR : Ch−¬ng tr×nh Monitor ®iÒu hµnh ho¹t ®éng cña c¶ bé KIT vµ cho phÐp lËp tr×nh tõ m¸y tÝnh. Ch−¬ng tr×nh hç trî chÕ ®é gì rèi b»ng c¸ch ch¹y tõng dßng lÖnh (STEP BY STEP) vµ quan s¸t c©u lÖnh võa ch¹y (vd MOV A, #1) ®ång thêi còng quan s¸t ®−îc gi¸ trÞ cña c¸c thanh ghi ®Æc biÖt SFR, c¸c PORT, c¸c « nhí RAM. Ngoµi ra ch−¬ng tr×nh Monitor cña bé KIT cßn cho phÐp söa ®æi néi dung cña c¸c thanh ghi ®Æc biÖt hoÆc néi dung c¸c « nhí trong cña chip vi ®iÒu khiÓn chÝnh. C«ng cô gì rèi : Trªn giao diÖn m¸y tÝnh cã thÓ sö dông c¸c phÇn mÒm ph¸t triÓn vÝ dô phÇn mÒm Keil, ASM51, Proview32 ®Ó gì rèi cho viÖc lËp tr×nh. (C¸c phÇn mÒm cã thÓ t×m thÊy ë th− môc Programming tools trªn CD ®i kÌm KIT)

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 28

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Ch−¬ng II ThiÕt kÕ KIT vi ®iÒu khiÓn

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 29

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Ch−¬ng II ThiÕt kÕ KIT vi ®iÒu khiÓn 2.1 Chän ph−¬ng ¸n thiÕt kÕ Hä vi ®iÒu khiÓn mµ bé KIT chän lµm thµnh phÇn trung t©m lµ hä 8051, v× nh÷ng lÝ do sau ®©y: + Hä 8051 lµ hä vi ®iÒu khiÓn phæ biÕn nhÊt hiÖn nay, ®−îc sö dông rÊt réng r3i trong c¸c øng dông c«ng nghiÖp còng nh− trong viÖc chÕ t¹o c¸c s¶n phÈm d©n dông. + Hä 8051 ®3 vµ ®ang lµ m«n häc ®−îc n»m trong ch−¬ng tr×nh ®µo t¹o cña c¸c tr−êng trung häc, cao ®¼ng vµ ®¹i häc trong c¶ n−íc, ®©y cßn lµ mét ®èi t−îng cô thÓ cho sinh viªn khi b¾t ®Çu nhËp m«n vi ®iÒu khiÓn. V× vËy, viÖc chän hä 8051 lµm thµnh phÇn trung t©m cña bé KIT lµ phï hîp víi ch−¬ng tr×nh ®µo t¹o vµ ®iÒu kiÖn häc tËp cña sinh viªn. V× nh÷ng lÝ do trªn, vµ xuÊt ph¸t tõ môc ®Ých, yªu cÇu cña ®å ¸n lµ thiÕt kÕ mét bé KIT vi ®iÒu khiÓn phôc vô môc ®Ých ®µo t¹o m«n häc nµy, ta quyÕt ®Þnh chän ph−¬ng ¸n sö dông chip vi ®iÒu khiÓn 89C52 cña h3ng ATMEL ®Ó lµm thµnh phÇn trung t©m cña KIT, cïng víi c¸c thµnh phÇn bé nhí ROM, RAM bªn ngoµi vµ c¸c thiÕt bÞ ngo¹i vi phong phó. Chip vi ®iÒu khiÓn AT89C52 lµ mét bé vi ®iÒu khiÓn còng thuéc hä 8051, do ®ã nã cã tÊt c¶ nh÷ng ®Æc tr−ng c¬ b¶n cña hä nµy. Ngoµi ra nã cßn cã thªm 1 bé ®Þnh thêi Timer 2 vµ 3 nguån ng¾t so víi 8051.

72.2 X©y dùng s¬ ®å khèi cña KIT Sau ®©y ta sÏ x©y dùng s¬ ®å khèi cña bé KIT vi ®iÒu khiÓn nh− sau:

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 30

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

PC

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

LCD

CPU

bµN PHÝM

A/D

D/A

LED 7 THANH

VµO/RA DIGITAL

§ÇU VµO XUNG

LED MATRIX 8x8

stepper motor

H×nh 2.1 - S¬ ®å khèi cña KIT

Trong s¬ ®å khèi cña bé KIT nh− trªn, chøc n¨ng cña c¸c khèi nh− sau - Khèi CPU : §©y lµ khèi trung t©m cña hÖ thèng. Nã bao gåm chip vi ®iÒu khiÓn AT89C52, EEPROM, RAM, c¸c cæng giao tiÕp më réng, m¹ch chèt, gi¶i m3 ®Þa chØ... Khèi nµy lµm nhiÖm vô trung t©m ®iÒu hµnh ho¹t ®éng cña c¶ bé KIT. - Khèi PC : §©y lµ khèi giao tiÕp gi÷a hÖ vi ®iÒu khiÓn cña bé KIT vµ m¸y tÝnh. PC gióp cho ng−êi sö dông cã thÓ ph¸t triÓn c¸c øng dông trªn bé KIT tõ m¸y tÝnh. Ng−êi sö dông dïng PC ®Ó n¹p c¸c ch−¬ng tr×nh øng dông cho bé KIT. Ngoµi ra PC cßn cho phÐp ng−êi sö dông n¹p c¸c ch−¬ng tr×nh ®iÒu hµnh cña ng−êi sö dông viÕt cho bé KIT hoÆc thay ®æi ch−¬ng tr×nh ®iÒu hµnh hiÖn ®ang cã trong bé KIT. Ch−¬ng tr×nh ®iÒu hµnh ph¶i ®−îc n¹p tõ c¸c m¹ch n¹p ngoµi vµ cè ®Þnh trªn KIT. Ch−¬ng tr×nh øng dông cña ng−êi sö dông ®−îc n¹p cho bé KIT tõ m¸y tÝnh th«ng qua phÇn mÒm n¹p ®i kÌm theo KIT. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 31

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- Bµn phÝm: §©y lµ khèi thiÕt bÞ ®Çu vµo giao tiÕp gi÷a vi ®iÒu khiÓn vµ ng−êi sö dông. Bµn phÝm cho phÐp ng−êi sö dông sö dông nã ®Ó ®iÒu khiÓn ho¹t ®éng cña KIT theo h−íng dÉn trªn mµn h×nh LCD nh−: Ch¹y ch−¬ng tr×nh tõng b−íc (nót STEP) Xem, söa ®æi c¸c thanh ghi (R0-R7), c¸c thanh ghi ®Æc biÖt (SFR), c¸c PORT (P0,P1,P2, P3), c¸c « nhí RAM ... ChuyÓn ®æi qua l¹i gi÷a c¸c kiÓu hiÓn thÞ d÷ liÖu nh− nhÞ ph©n, hexa hay thËp ph©n. - Khèi LCD: mµn h×nh tinh thÓ láng víi kÝch th−íc lín 24x8 kÝ tù gióp ta cã thÓ quan s¸t dÔ dµng gi¸ trÞ cña c¸c thanh ghi (R0-R7), c¸c thanh ghi ®Æc biÖt (SFR) c¸c PORT (P0,P1,P2, P3), c¸c « nhí trong RAM ... Ngoµi ra trªn mµn h×nh cßn cã c¸c h−íng dÉn ng−êi sö dông, chøc n¨ng cña c¸c phÝm tïy theo ng÷ c¶nh. LCD t¹o ra sù tiÖn lîi, th©n thiÖn cho ng−êi sö dông trong lµm quen còng nh− thÝ nghiÖm trªn KIT. - Khèi A/D : Cã chøc n¨ng chuyÓn ®æi tÝn hiÖu ®iÖn ¸p t−¬ng tù 0 – 5V thµnh tÝn hiÖu sè 8 bit ®Ó ®−a vµo vi ®iÒu khiÓn xö lÝ. TÝn hiÖu vµo 0-5V cã thÓ ®−îc ®−a tõ bªn ngoµi hoÆc th«ng qua DIP-SWITCH (Dual Inline Pakage - SWITCH) ®Ó nèi c¸c tÝn hiÖu t−¬ng tù cã s½n trªn kit nhê bé chia ¸p lµ 3 biÕn trë vi chØnh vµ ®Æc biÖt lµ ®Çu ra cña 1 bé c¶m biÕn nhiÖt ®é LM35, cã thÓ tiÕn hµnh ë ®©y mét bµi thÝ nghiÖm vÒ ®o nhiÖt ®é phßng. - Khèi D/A : Lµ khèi cho phÐp chuyÓn ®æi tÝn hiÖu sè 8 bit thµnh tÝn hiÖu t−¬ng tù 0 – 10V ®−a ra ngoµi, cã thÓ hiÓn thÞ ®−îc trªn m¸y hiÖn sãng. - Khèi vµo/ra xung sè - ®iÒu khiÓn ®éng c¬ b−íc vµ ®éng c¬ 1 chiÒu: Lµ khèi vµo/ra tÝn hiÖu sè, cho phÐp bé KIT nhËn vµo mét tÝn hiÖu sè 8 bit, 4 tÝn hiÖu vµo d¹ng xung b»ng c¸c nót Ên, 4 tÝn hiÖu vµo d¹ng xung tõ bªn ngoµi nh− c¸c bé encoder, ngoµi ra cßn cã 6 ®Çu ra xung, cã ®Öm tÇng khuyÕch ®¹i ®Ó ®iÒu khiÓn ®éng c¬ b−íc vµ ®éng c¬ 1 chiÒu. Ngoµi ra ng−êi sö dông cã thÓ sö lùa chän lo¹i ®iÖn 5V Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 32

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

hoÆc 12V tïy theo lo¹i ®éng c¬ b»ng c«ng t¾c thay ®æi nguån cÊp cho ®éng c¬ trªn m¹ch. - LED 7 thanh : Lµ khèi hiÓn thÞ LED 7 thanh, cã thÓ dïng ®Ó hiÓn thÞ c¸c gi¸ trÞ theo ch−¬ng tr×nh cña ng−êi sö dông. - Khèi LED Matrix (8x8) : Lµ mét ma trËn ®Ìn LED gåm 8 hµng x 8 cét, t¹i mçi ®iÓm cña ma trËn LED cã 2 ®Ìn víi 2 mµu xanh vµ ®á, nÕu ®iÒu khiÓn cho s¸ng cïng lóc c¶ 2 ®Ìn th× ta sÏ ®−îc mµu cam.

2.3 Chän thiÕt bÞ, gi¶i m· vµ thiÕt kÕ m¹ch nguyªn lý cña hÖ thèng: 2.3.1. Chän dung l−îng bé nhí vµ thiÕt bÞ ngo¹i vi: Ta chän c¸c thµnh phÇn cña bé nhí trªn KIT bao gåm: - 8K-byte parallel (song song) EEPROM – chip sö dông AT28C64. - 32K-byte RAM ngoµi – chip sö dông HM62256. - 5 chip 8255 më réng I/O ®Ó giao tiÕp víi c¸c thiÕt bÞ sau: LCD – 24x8 ký tù Bµn phÝm 5x4 8 LED ®¬n 4 LED 7 ®o¹n LED ma trËn 2 mµu 8x8 C¸c bé chuyÓn ®æi ADC, DAC Vµo ra xung sè, c¸c tÇng khuyÕch ®¹i ®Öm ®Ó ®iÒu khiÓn ®éng c¬ b−íc, ®éng c¬ 1 chiÒu.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 33

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

2.3.2. Gi¶i m· ®Þa chØ: Ta s¾p xÕp bé nhí vµ ®Þa chØ cña c¸c thiÕt bÞ ngo¹i vi giao tiÕp víi KIT trong b¶ng 2.1 nh− sau §Þa chØ ThiÕt bÞ 0000h - 1FFFh EEPROM RAM 4000h - 7FFFh 8000h - 8003h

8004h - 8007h

8008h - 800Bh

8255 (1)

Ghi chó Chøa ch−¬ng tr×nh Monitor Chøa ch−¬ng tr×nh øng dông 8000h - PortA : §iÒu khiÓn LCD. 8001h - PortB : Data bus cña LCD. 8002h - PortC : NhËn m3 cña bµn phÝm. 8003h - CW : Thanh ghi ®iÒu khiÓn.

8255 (5)

8004h - PortA: §iÒu khiÓn cÊp nguån cho c¸c Anot chung cña LED matrix (c¸c hµng). 8005h - PortB: §iÒu khiÓn ®Ìn mµu xanh cña LED matrix (c¸c cét xanh). 8006h - PortC: §iÒu khiÓn ®Ìn mµu ®á cña LED matrix (c¸c cét ®á). 8007h - CW: Thanh ghi ®iÒu khiÓn.

8255 (2)

8008h - PortA : §−êng Data cña ADC0809. 8009h - PortB : §−êng Data cña DAC0808. 800Ah - PortC : §iÒu khiÓn ADC0809. 800Bh - CW : Thanh ghi ®iÒu khiÓn.

800Ch - 800Fh

8255 (3)

C000h - C003h

8255 (4)

C004h – C007h

8255-EX

800Ch - PortA : §Çu vµo Digital. 800Dh - PortB : §iÒu khiÓn ®éng c¬ b−íc(PB0-PB3) vµ ®éng c¬ mét chiÒu (PB4 - PB5). 800Eh - PortC : 4 ®Çu vµo xung d¹ng nót Ên (PC4-PC7), 4 ®Çu vµo cho c¸c thiÕt bÞ ngoµi nh− encoder (PC0 - PC3). 800Fh - CW : Thanh ghi ®iÒu khiÓn. C000h - PortA : HiÓn thÞ 8 LED ®¬n. C001h - PortB : HiÓn thÞ 2 LED 7 thanh (tr¸i). C002h - PortC : HiÓn thÞ 2 LED 7 thanh (ph¶i). C003h - CW : Thanh ghi ®iÒu khiÓn. BUS më réng dù tr÷, cã thÓ g¾n thªm 1 module kh¸c

B¶ng 2.1 S¾p xÕp bé nhí vµ c¸ch ph©n ®Þa chØ cho c¸c thiÕt bÞ ngo¹i vi cña KIT Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 34

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Dùa vµo b¶ng 2.1 trªn ta cã s¬ ®å bé nhí cô thÓ nh− b¶ng 2.2 sau:

EEPROM AT28C64 8Kbyte

Address 0000h

15 14 13 12 11 10 0 0 0 0 0 0

9 8 0 0

7 0

6 0

5 0

4 0

3 0

2 0

1 0

0 0

1FFFh

0

0

0

1

1

1

1 1

1

1

1

1

1

1

1

1

4000h

0

1

0

0

0

0

0 0

0

0

0

0

0

0

0

0

7FFFh

0

1

1

1

1

1

1 1

1

1

1

1

1

1

1

1

8255-1 KEYPAD LCD

8000h 8001h 8002h 8003h

1 1 1 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 1 1

0 1 0 1

8255-5 MATRIX LED

8004h 8005h 8006h 8007h

1 1 1 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

1 1 1 1

0 0 1 1

0 1 0 1

8255-2 ADC DAC

8008h 8009h 800Ah 800Bh

1 1 1 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

1 1 1 1

0 0 0 0

0 0 1 1

0 1 0 1

8255-3 XUNG Sè STEPPER DC MOTOR

800Ch 800Dh 800Eh 800Fh

1 1 1 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

1 1 1 1

1 1 1 1

0 0 1 1

0 1 0 1

8255-4 LED 7 ®o¹n LED ®¬N

C000h C001h C002h C003h

1 1 1 1

1 1 1 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 1 1

0 1 0 1

C004h C005h C006h C007h

1 1 1 1

1 1 1 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

1 1 1 1

0 0 1 1

0 1 0 1

RAM HM62256 32Kbyte

8255-EX

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 35

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Nh×n vµo c¸c cét cã mµu x¸m trong b¶ng 2.2 trªn ta cã ®−îc c¸ch ph©n c«ng gi¶i m3 nh− sau: Ta sö dông 3 chip gi¶i m3 chuyªn dông lµ vi m¹ch 74HC138 ®Ó phôc vô viÖc gi¶i m3 ®Þa chØ cho c¸c chip nhí còng nh− c¸c chip më réng I/O lµ 8255, ®Çu vµo vµ ra cña c¸c chip gi¶i m3 ®−îc tr×nh bµy trong b¶ng sau: Chip gi¶i m·

A

B

A14

A15

0

0

74HC138 - 2 (U10) A2

A3

A4

Y2(U9) Y2(U9)

74HC138 - 3 (U11) A2

0

0

Y3(U9) Y3(U9)

74HC138 - 1 (U9)

C

G2A

G2B 0

§Çu vµo chän chip CS (Chip Select) cña c¸c chip EEPROM, RAM, vµ 8255 nh− b¶ng sau: Chip

CS (Chip Select)

EEPROM - 28C64

A13 + Y0(U9) (*)

RAM - 62256

Y1(U9)

8255(1) - Keypad, LCD

Y0(U10)

8255(5) - LED ma trËn

Y2(U10)

8255(2) - ADC, DAC

Y3(U10)

8255(3) - Xung sè, stepper, DC motor

Y1(U10)

8255(4) - LED 7 ®o¹n, LED ®¬n

Y0(U11)

8255(EX)

Y1(U11)

Ghi chó

U9,U10,U11 xem s¬ ®å nguyªn lý.

(*) Do yªu cÇu thiÕt kÕ cña bé KIT, c¸c chip nhí RAM vµ EEPROM võa ph¶i cã kh¶ n¨ng lµm bé nhí d÷ liÖu vµ bé nhí ch−¬ng tr×nh nªn c¸c ch©n OE (Output Enable) cña c¸c chip nhí nµyB¶ng cã logic = /PSEN /RD. 2.2.nh− B¶nsau ®å/OE bé nhí vµ gi¶i* m3 ®Þa chØ cña KIT §Ó râ h¬n ta t×m hiÓu kü vÒ chøc n¨ng cña ch©n /PSEN vµ EA trong øng dông më réng bé nhí ngoµi cña hä 8051. PSEN (Program Store Enable) cã nghÜa lµ cho Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 36

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

phÐp cÊt ch−¬ng tr×nh. §©y lµ tÝn hiÖu ra vµ ®−îc nèi víi ch©n OE cña bé nhí ch−¬ng tr×nh ngoµi. Khi ch©n EA ®−îc nèi ®Êt th× 8031/51 n¹p mM lÖnh tõ bé nhí ngoµi th«ng qua ch©n PSEN, ë ®©y bé nhí ngoµi ®ãng vai trß lµ bé nhí ch−¬ng tr×nh. Ngoµi ra khi bé nhí ngoµi lµm chøc n¨ng lµ bé nhí d÷ liÖu th× tÝn hiÖu RD ®−îc sö dông ®Ó truy cËp kh«ng gian d÷ liÖu ngoµi (dïng lÖnh MOVX), nªn RD ®−îc nèi ®Õn OE cña chip nhí. Trong thiÕt kÕ phÇn mÒm cña KIT ®ßi hái c¶ 2 chøc n¨ng nµy cña bé nhí, võa lµ bé nhí ch−¬ng tr×nh, võa lµ bé nhí d÷ liÖu do ®ã c¸c ch©n OE cña c¸c chip nhí ph¶i cã møc logic nh− trªn /OE = /PSEN * /RD. 2.3.3 Giíi thiÖu vÒ chøc n¨ng cña c¸c thiÕt bÞ ®−îc sö dông trªn KIT: 2.3.3.1 CPU

C PU

R10 VCC

VCC

1

D0 D1 D2 D3 D4 D5 D6 D7

2 3 4 5 6 7 8 9 10k VCC

ADRRESS: 0000H-1FFFH

VCC

CR4 104

CR3 104

VCC

GND

ADRRESS: 4000H-7FFFH

GND U3 62256 U13

T2 T2-EX STEP

1 2 3 4 5 6 7 8

GND

/EA RST 1 2 3 4

P1.0/T2 P3.0/RXD P1.1/T2-EX P3.1/TXD P1.2 P3.2/INT0 P1.3 P3.3/INT1 P1.4 P3.4/T0 P1.5 P3.5/T1 P1.6 P3.6/WR P1.7 P3.7/RD

19 18

J10 T0 T1 T2 T2-EX

P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15

31 9

XTAL1 XTAL2

ALE/PROG PSEN

EA/VPP RST AT89C52

VCC

21 22 23 24 25 26 27 28

A8 A9 A10 A11 A12 A13 A14 A15

CR5 104

10 11 12 13 14 15 16 17

RXD TXD /INT0 /INT1 T0 T1 /WR /RD

30 29

ALE /PSEN

VCC

U5A /PSEN

CR1 104

7404 U6A /EA

33pF

GND

7

2

CR6 104

1

P_COM GND

VCC

14

GND

VCC

RXD OUT TXD IN

28

VCC

VCC

C1.2

22 27 20

7

12 MHz

33pF

1 2

Y 1.1

C1.1

7408

10 9 8 7 6 5 4 3 25 24 21 23 2

3

40

GND

1 6 2 7 3 8 4 9 5

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12

GND

VCC CR8 104 GND

Cheá ñoä monitor thì INT1 ñöôïc noái GND

Ñaàu vaøo cho T0, T1, T2, T2-EX ôû cheá ñoä CAPTURE

P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7

AT28C64

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12

D0 D1 D2 D3 D4 D5 D6 D7

D0 D1 D2 D3 D4 D5 D6 D7

11 12 13 15 16 17 18 19

A14

1

A13

26

D0 D1 D2 D3 D4 D5 D6 D7

11 12 13 15 16 17 18 19

/CS_62256 /WR GND

OE WE CE

20 27 22

VCC D0 D1 D2 D3 D4 D5 D6 D7

CS WR OE

10 9 8 7 6 5 4 3 25 24 21 23 2 26 1

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13

14

VSS

GND

14

ALE

11 1

39 38 37 36 35 34 33 32

VCC

GND

D0 D1 D2 D3 D4 D5 D6 D7

GND

CR2 104 U11A

GND

CHÖÔNG TRÌNH NGÖÔØ I SÖÛ DUÏNG

1 3 A13

2 7432

VCC

U7B

2

/WR

3

SWITCH

6

GND

5 7432

VCC

1

1 2 3

4

VCC

SW7.1

CR7 104

14

LE OE GND

10

28 U2

D0 D1 D2 D3 D4 D5 D6 D7

14

74HC573 VCC 2 D0 3 D1 4 D2 5 D3 6 D4 7 D5 8 D6 9 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

GND

19 18 17 16 15 14 13 12

20

U4 20 A0 A1 A2 A3 A4 A5 A6 A7

7

MONITOR

GND U8 16

C8.4 10uF

TXD IN

13 8

TXD

11 10 1 3 4 5 2 6

C8.1 10uF C8.2 10uF

C8.3 10uF VCC

MAX232/SO VCC 12 R1IN R1OUT 9 R2IN R2OUT T1IN T2IN C1+ C1C2+ C2V+ V-15

T1OUT T2OUT

14 7

RXD

VCC

VCC CR9 104

A14 A15

VCC VCC

U9 16 1 2 3 6 4 5

A B C G1 G2A G2B 8

VCC Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 GND

15 14 13 12 11 10 9 7

A2 /CS_62256

U12 16 1 2 3

/CS_8255_7SEG_LED_EX12 VCC

CR10 104

CR12 104

74HC138

GND

GND

VCC

RXD OUT

6 4 5

A B C G1 G2A G2B 8

74HC138 VCC Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 GND

15 14 13 12 11 10 9 7

74HC138 /CS_8255_7SEG_LED /CS_8255_7SEG_EX

A2 A3 A4

VCC

U10 16 1 2 3 6 4 5

A B C G1 G2A G2B 8

VCC Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 GND

15 14 13 12 11 10 9 7

/CS_8255_LCD_KEY PAD /CS_8255_MATRIX_LED /CS_8255_ADC_DAC /CS_8255_PULSE_STEPPER

GND

GND

VCC

H×nh 2.3 – S¬ ®å nguyªn lý khèi CPU

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 37

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

§©y lµ phÇn ®iÒu khiÓn trung t©m cña bé KIT, lµ bé phËn quan träng nhÊt. Khèi CPU gåm cã chip vi ®iÒu khiÓn chÝnh AT89C52, EEPROM, RAM, m¹ch chèt, gi¶i m3 ®Þa chØ... S¬ ®å nguyªn lý cña khèi CPU nh− h×nh 2.3. C¸c linh kiÖn chÝnh cã trong khèi : Vi ®iÒu khiÓn AT89C52 Víi thùc tÕ thÞ tr−êng cña §µ N½ng, vµ c¶ khu vùc MiÒn Trung - T©y Nguyªn nãi chung ta chän AT89C52 lµ chip dÔ dµng mua ®−îc, bé nhí 8Kbyte võa ®ñ cho ch−¬ng tr×nh MONITOR ®iÒu hµnh KIT. - AT89C52 cã 8K Flash ROM lµm bé nhí ch−¬ng tr×nh, 256 byte RAM, 32 ®−êng xuÊt nhËp, 3 bé ®Þnh thêi, mét cÊu tróc ng¾t 2 møc −u tiªn vµ 8 nguån ng¾t, mét port nèi tiÕp song c«ng (full duplex). Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 38

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- Timer T2 cña 89C52 cã thÓ lµm viÖc nh− Timer T0, T1 trong chÕ ®é Reload ngay c¶ ë lóc lµm Timer 16 bit.

- Vïng nhí Flash ROM cã thÓ n¹p vµ xãa kho¶ng 1000 lÇn. - Vi ®iÒu khiÓn AT89C52 hç trî tÇn sè lµm viÖc ®Õn 24 MHz.

- Cã chÕ ®é Power Down ®Ó tiÕt kiÖm ®iÖn n¨ng cña hÖ thèng tuy nhiªn vÉn duy tr× néi dung RAM nh−ng kh«ng cho m¹ch dao ®éng cÊp xung clock nh»m v« hiÖu hãa c¸c ho¹t ®éng kh¸c cho chip cho ®Õn khi cã

H×nh 2.4 - S¬ ®å ch©n cña AT89C52

reset cøng tiÕp theo. ChÕ ®é Idle hay cßn gäi lµ chÕ ®é nghØ dõng CPU trong khi vÉn cho phÐp RAM, c¸c bé ®Þnh thêi/ ®Õm, port nèi tiÕp vµ hÖ thèng ng¾t tiÕp tôc ho¹t ®éng.

M¹ch chèt tÝn hiÖu 74HC573

U1 19 18 17 16 15 14 13 12

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7 LE OE

2 3 4 5 6 7 8 9 11 1

74HC573

H×nh 2.5 - S¬ ®å ch©n cña 74HC573 74HC573 lµ m¹ch chèt tÝn hiÖu tèc ®é cao ®−îc chÕ t¹o theo c«ng nghÖ CMOS. C¸c ®Æc ®iÓm cña vi m¹ch : - Tèc ®é truyÒn tÝn hiÖu tõ ®Çu vµo sang ®Çu ra chØ cã 18 ns. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 39

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- Ph¹m vi ®iÖn ¸p ho¹t ®éng : 2 – 6 V - Dßng ®iÖn ®Çu vµo : lín nhÊt 1 A. Ho¹t ®éng : Khi ch©n /LE ë møc cao, ®Çu ra Q phô thuéc vµo ®Çu vµo D. Khi ch©n /LE ë møc thÊp, tÝn hiÖu ®Çu vµo D ®−îc gi÷ l¹i ë ®Çu ra cho ®Õn khi nµo ch©n /LE trë l¹i møc cao. Khi ch©n /OE ë møc cao, tÊt c¶ c¸c ®Çu ra Q ®Òu ë møc cao. M¹ch gi¶i mM ®Þa chØ 74HC138 U6 1 2 3 6 4 5

A B C G1 G2A G2B

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

15 14 13 12 11 10 9 7

74HC138

H×nh 2.6 - S¬ ®å ch©n cña 74HC138 §©y lµ vi m¹ch ®−îc chÕ t¹o theo c«ng nghÖ CMOS. Vi m¹ch nµy ®−îc dïng ®Ó gi¶i m3 ®Þa chØ khi hÖ thèng cã nhiÒu linh kiÖn cÇn ®Þnh ®Þa chØ ghÐp nèi. Nã lµ mét trong nh÷ng vi m¹ch phæ biÕn nhÊt trong c¸c m¹ch vi ®iÒu khiÓn. C¸c ch©n ®Çu ra ®¶o Yk phô thuéc vµo c¸c ch©n tÝn hiÖu ®Çu vµo A, B, C. Tuy nhiªn c¸c tÝn hiÖu ®Þa chØ chØ ®−îc gi¶i m3 khi ch©n G1(E3) ë møc High, cßn c¸c ch©n /G2A(/E1), /G2B(/E2) ë møc Low.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 40

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

B¶ng chøc n¨ng cña vi m¹ch nh− sau:

Chó ý: L: Low -Møc thÊp; H: High - Møc cao; X: kh«ng quan t©m U4 13 8 11 10 1 3 4 5 2 6

R1IN R2IN

R1OUT R2OUT

T1IN T2IN

T1OUT T2OUT

12 9 14 7

C1+ C1C2+ C2V+ VMAX232

H×nh 2.7 – S¬ ®å ch©n cña MAX232 Vi m¹ch MAX232

Vi m¹ch MAX232 cã nhiÖm vô chuyÓn møc ®iÖn ¸p tõ 0 12V

5 V thµnh ®iÖn ¸p –

+12 V theo tiªu chuÈn RS-232 ®Ó phôc vô cho viÖc truyÒn th«ng nèi tiÕp.

Trªn vi m¹ch cã 2 ngâ vµo cña ch©n RxD, 2 ngâ ra cña ch©n RxD, 2 ngâ vµo cña ch©n TxD, 2 ngâ ra cña ch©n TxD. TÝn hiÖu tõ ch©n RxD cña cæng nèi tiÕp trong m¸y tÝnh ®−îc nèi vµo ch©n /R1OUT, tÝn hiÖu tõ ch©n TxD cña cæng nèi tiÕp trong m¸y tÝnh ®−îc nèi T1IN cña MAX232. T−¬ng tù, ch©n RxD cña vi ®iÒu khiÓn ®−îc nèi víi ch©n /T1OUT, cßn ch©n TxD cña vi ®iÒu khiÓn ®−îc nèi víi ch©n R1IN cña MAX232. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 41

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Bé nhí RAM 32K 62256 Vi m¹ch 62256 ®−îc dïng lµm bé nhí d÷ liÖu ngoµi cho c¸c vi ®iÒu khiÓn. - A0

A14 : lµ 15 bit dïng ®Ó x¸c ®Þnh ®Þa chØ cña c¸c vïng nhí trong RAM.

- /OE : Output Enable, cho phÐp ®äc d÷ liÖu tõ RAM ra Data Bus. -

/WE : Write Enable, cho phÐp ghi d÷ liÖu vµo RAM.

-

CS1, CS2 : Dïng ®Ó chän chip.

-

D0

D7 : lµ c¸c ch©n nèi vµo Data Bus cña hÖ thèng. U3 62256 28 11 12 13 15 16 17 18 19

20 27 22

VCC D0 D1 D2 D3 D4 D5 D6 D7

CS WR OE

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 VSS

10 9 8 7 6 5 4 3 25 24 21 23 2 26 1 14

H×nh 2.8 – S¬ ®å ch©n cña 62256

Bé nhí EEPROM 8K 28C64 §©y lµ bé nhí kh«ng bay h¬i cã thÓ ®äc vµ ghi ®−îc b»ng ch−¬ng tr×nh nh− bé RAM mµ kh«ng cÇn sö dông nh÷ng m¹ch n¹p chuyªn dông, nh−ng cã kh¶ n¨ng b¶o vÖ d÷ liÖu khi mÊt nguån. - A0

A12 : lµ 12 bit dïng ®Ó x¸c ®Þnh ®Þa chØ cña c¸c vïng nhí trong

EEPROM.

- /OE : Output Enable, cho phÐp ®äc d÷ liÖu tõ EEPROM ra Data Bus. - /WR : Write Enable, cho phÐp ghi d÷ liÖu vµo EEPROM. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 42

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- /CE : Dïng ®Ó chän chip. -

D0

D7 : lµ c¸c ch©n nèi vµo Data Bus cña hÖ thèng. U2

22 27 20

A0 D0 A1 D1 A2 D2 A3 D3 A4 D4 A5 D5 A6 D6 A7 D7 A8 A9 RDY/BUSY A10 A11 A12 OE WE CE VCC

11 12 13 15 16 17 18 19 1

14

28

AT28C64

GND

10 9 8 7 6 5 4 3 25 24 21 23 2

H×nh 2.9 – S¬ ®å ch©n cña 28C64 Ngoµi c¸c linh kiÖn chÝnh ®3 kÓ ra ë trªn, khèi CPU cßn cã rÊt nhiÒu thµnh phÇn kh¸c nh− m¹ch Reset cña CPU, th¹ch anh 11.0592 MHz ®Ó t¹o dao ®éng cho vi ®iÒu khiÓn 89C52... Trong khèi CPU cã c«ng t¾c 3 tr¹ng th¸i SW2 - Select cho phÐp ng−êi sö dông thay ®æi møc ®iÖn ¸p ®Æt lªn ch©n EA cña vi ®iÒu khiÓn chÝnh ®Ó chän thùc hiÖn ch−¬ng tr×nh l−u ë bé nhí trong hay bé nhí ngoµi. Mét ®iÒu cÇn l−u ý trªn m¹ch CPU lµ ®Çu ra P0 cña vi ®iÒu khiÓn cÇn treo trë v× cæng P0 cña vi ®iÒu khiÓn kh«ng ®−îc thiÕt kÕ cã trë kh¸ng trong. NÕu kh«ng treo trë th× khi nu«i t¶i lín sÏ lµm sôt ¸p trªn c¸c ch©n tÝn hiÖu dÉn ®Õn sù sai lÖch tÝn hiÖu, lµm hÖ thèng mÊt chÝnh x¸c.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 43

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

2.3.3.2 Giao tiÕp xuÊt/nhËp PhÇn giao tiÕp xuÊt nhËp gåm 2 khèi : khèi hiÓn thÞ LCD vµ khèi bµn phÝm. S¬ ®å nguyªn lý cña phÇn nµy nh− h×nh 2.10 :

VCC VCC

VCC CR11

R9

VCC GND GND

104

DATA BUS U1526 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 GND /RD /WR /CS_8255_LCD_KEYPAD

34 33 32 31 30 29 28 27 9 8 35 5 36 6

D0 D1 D2 D3 D4 D5 D6 D7

8255 VCC PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7

A0 A1 RESET RD WR CS

7

PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

GND GND

5K LCD1

18 19 20 21 22 23 24 25

LCD BACK LIGHT POWER

GND VCC

4 3 2 1 40 39 38 37 LCD_D0 LCD_D1 LCD_D2 LCD_D3 LCD_D4 LCD_D5 LCD_D6 LCD_D7

LCD_D0 LCD_D1 LCD_D2 LCD_D3 LCD_D4 LCD_D5 LCD_D6 LCD_D7

1 2 3 LCD_RS 4 LCD_R/W 5 LCD_E1 6 LCD_E2 7 8 9 10 11 12 13 14 15 16

SW7.8 VCC

2

J13 1

2 3

1

2 1

GND 3

HEADER 2

SWITCH

VCC VCC

14 15 16 17 13 12 11 10

R12.1 10K U14

GND /INT0

P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.7

P1.0/AIN0 P1.1/AIN1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 XTAL2

10

RST/VPP VCC

5 4

8 7 6 5 4 3 2 1 KEYPAD

1 Y12.1

20

GND

VCC

J14 ROW1 ROW2 ROW3 ROW4 COL1 COL2 COL3 COL4

12 13 14 15 16 17 18 19

GND

8255_1 KEYPAD, LCD ADRRESS: PA_1:8000H PB_1:8001H PC_1:8002H CW_1:8003H

2 3 6 7 8 9 11

R12.2 10K

AT89C2051

VCC

C12.2

C12.3 12 MHz

33p

33p

GND

GND VCC VCC C12.1

CR13 104 GND

BT22

10uF RST R12.3 10k GND

H×nh 2.10 – S¬ ®å nguyªn lý phÇn xuÊt/nhËp Bµn phÝm Giao tiÕp bµn phÝm cho phÐp ng−êi sö dông cã thÓ nhËp d÷ liÖu vµ th«ng qua c¸c phÝm chøc n¨ng ®iÒu khiÓn ho¹t ®éng cña bé KIT. Víi yªu cÇu cña KIT, ta sö dông bµn phÝm d¹ng ma trËn ®Ó nhËp d÷ liÖu. §Ó qu¶n lý ®−îc c¸c phÝm cña bµn phÝm mµ kh«ng lµm ¶nh h−ëng nhiÒu tíi qu¸ tr×nh thùc hiÖn tÝnh to¸n cña vi ®iÒu khiÓn chÝnh, ta sö dông riªng mét vi ®iÒu khiÓn lo¹i nhá ®Ó qu¶n lý bµn phÝm. Bµn phÝm ®−îc x©y dùng theo kiÓu ma trËn, gåm 4 hµng x 5 cét. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 44

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

+ 4 hµng ®−îc lÊy tõ c¸c ch©n P1.0

P1.3 cña vi ®iÒu khiÓn

+ 5 cét ®−îc lÊy tõ c¸c ch©n P1.4

P1.7 cña vi ®iÒu khiÓn vµ cét cuèi cïng nèi

®Êt. Tæ chøc c¸c phÝm gåm c¸c phÝm tõ 0 -9 tõ A- F lµm thµnh phÇn nhËp d÷ liÖu. C¸c phÝm chøc n¨ng F1, F2 lµ phÝm lùa chän c¸c lÖnh trªn menu, phÝm BACK SPACE lµ phÝm xãa, gióp chØnh söa khi nhËp liÖu nhÇm. PhÝm ENTER ®Ó kÝch ho¹t lÖnh hiÖn hµnh, tïy theo ng÷ c¶nh, ®−îc hiÓn thÞ trªn LCD. Trªn bé KIT, bµn phÝm ®−îc dÆt t¸ch rêi so víi c¸c phÇn kh¸c ë gãc ®Ó thuËn tiÖn cho viÖc thao t¸o vãi bµn phÝm. S¬ ®å nguyªn lý cña bµn phÝm nh− h×nh 2.11:

BT1

BT2

0

1 5

4 BT6

BT7

BT3

2 6 BT8

BT4

3

BT5

F1

7 BT9

BT10

F2 8

9

A

BT11

BT12

BT13

C

D

E

BT16

BT17

BT18

B

BT14

BT15

J11

BACK SPACE

ROW1 ROW2 ROW3 ROW4 COL1 COL2 COL3 COL4

1 2 3 4 5 6 7 8

F BT19

BT20

ENTER

HEADER 8

5X4 KEYPAD

H×nh 2.11 – S¬ ®å bµn phÝm Do chØ lµm nhiÖm vô qu¶n lý c¸c phÝm ®−îc bÊm mµ kh«ng cÇn xö lý phøc t¹p nªn ta dïng vi ®iÒu khiÓn lo¹i nhá 20 ch©n rÊt th«ng dông trªn thÞ tr−êng hiÖn nay lµ 89C2051 cña h3ng ATMEL. Vi ®iÒu khiÓn nµy chØ cã hai cæng giao tiÕp lµ P1 vµ P3. Riªng cæng giao tiÕp P3 th× thiÕu mÊt bit P3.6, chØ cã c¸c bit P3.0

P3.5 vµ P3.7. §©y lµ vi ®iÒu khiÓn thuéc hä

8xC51 nªn nã cã tÊt c¶ nh÷ng ®Æc ®iÓm chung cña hä nµy.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 45

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Khi cã mét phÝm ®−îc Ên, 89C2051 sÏ gi¶i m3 vµ göi d÷ liÖu m3 phÝm ®−îc Ên lªn cho vi ®iÒu khiÓn chÝnh th«ng qua c¸c ch©n P3.0

P3.3. ViÖc th«ng b¸o cho vi

®iÒu khiÓn chÝnh biÕt cã phÝm ®−îc Ên thùc hiÖn qua ng¾t ngoµi 1 cña vi ®iÒu khiÓn chÝnh. Ch©n P3.7 sÏ ®−îc nèi víi ch©n ng¾t EX1 cña 89C52. U1 2 3 6 7 8 9 11

P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.7

P1.0/AIN0 P1.1/AIN1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 XTAL2 RST/VPP VCC

12 13 14 15 16 17 18 19 5 4 1 20

H×nh 2.12 - S¬ ®å ch©n cña 89C2051

AT89C2051

Mµn tinh thÓ láng LCD 2408 §Ó cã thÓ hiÓn thÞ mét c¸ch thuËn tiÖn, linh ho¹t c¸c th«ng sè cña hÖ thèng ®ång thêi ®¶m b¶o ®−îc tÝnh mü thuËt, ta chän mµn h×nh tinh thÓ láng LCD 2408. §©y lµ lo¹i mµn tinh thÓ láng gåm cã 8 dßng, mçi dßng cã thÓ hiÓn thÞ 24 ký tù, rÊt tiÖn cho ng−êi sö dông trong khi lµm viÖc víi KIT ë chÕ ®é monitor. B¶ng chøc n¨ng cña c¸c ch©n :

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 46

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

VCC

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

R8

VCC GND 5K LCD

TÝn hiÖu ®iÒu khiÓn

LCD_D0 LCD_D1 LCD_D2 LCD_D3 LCD_D4 LCD_D5 LCD_D6 LCD_D7

DATA BUS

LCD BACK LIGHT POWER

GND VCC

1 2 3 LCD_RS 4 LCD_R/W 5 LCD_E1 6 LCD_E2 7 8 9 10 11 12 13 14 15 16

SW7.2 VCC

2

J12 1

2 3

1 GND

2 1

3 HEADER 2

SWITCH

LCD 24x8

H×nh 2.13 – S¬ ®å ch©n vµs¬ ®å cÊp nguån cña LCD 2408

LCD 2408 cã 4 ch©n ®iÒu khiÓn vµ 8 ch©n d÷ liÖu, 4 ch©n ®iÒu khiÓn lµ RS, R/W, E1, E2. Ch©n E1, E2: ®−îc gäi lµ ch©n “Enable”. Ch©n nµy cho phÐp göi d÷ liÖu vµo LCD hay kh«ng. E1 dïng chän lµm viÖc víi 4 dßng trªn cña mµn h×nh. E2 lµm viÖc víi 4 dßng d−íi. §Ó cã thÓ göi d÷ liÖu vµo LCD, ®Çu tiªn ch©n nµy ph¶i ®−îc set lªn “1”. Sau khi thùc hiÖn xong c¸c lÖnh, ch©n nµy ph¶i set xuèng “0” ®Ó b¸o cho biÕt r»ng LCD ®3 thùc hiÖn lÖnh vµ ®ang chê lÖnh tiÕp theo. Ch©n RS: “Register Select”. Khi ch©n nµy ë møc “0”, LCD sÏ biÕt r»ng c¸c d÷ liÖu truyÒn ®Õn nã dïng ®Ó ®iÒu khiÓn nh− c¸c lÖnh xãa mµn h×nh, ®Æt vÞ trÝ con trá, .... NÕu RS ë møc “1” c¸c d÷ liÖu truyÒn ®Õn LCD ®−îc nã hiÓu lµ c¸c d÷ liÖu d¹ng ký tù cÇn hiÓn thÞ Ch©n R/W: lµ ch©n “Read/Write”. §Ó cã thÓ ghi d÷ liÖu lªn LCD, ch©n nµy ph¶i ë møc “0”. Cßn ®Ó ®äc d÷ liÖu tõ LCD th× ch©n nµy ph¶i ë møc “1”. Tuy nhiªn trong LCD chØ cã mét lÖnh ®äc d÷ liÖu tõ LCD, ®ã chÝnh lµ lÖnh lÊy tr¹ng th¸i cña LCD ®Ó b¸o cho biÕt nã ®ang bËn hay kh«ng. ChÝnh v× vËy ch©n nµy hÇu nh− chØ ë møc tÝn hiÖu “0”. DB0 - DB7: 8 ch©n d÷ liÖu cña LCD. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 47

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Mçi lÇn thùc hiÖn mét lÖnh, LCD ph¶i mÊt mét kho¶ng thêi gian ®Ó hoµn tÊt viÖc nµy. ChÝnh v× vËy khi ra lÖnh thùc hiÖn cho LCD, ta ph¶i trÔ mét kho¶ng thêi gian. Sau ®ã míi ®−îc thùc hiÖn lÖnh tiÕp theo. Tuy nhiªn ph−¬ng ph¸p trÔ kh«ng ®−îc æn dÞnh vµ chÝnh x¸c khi tÇn sè th¹ch anh thay ®æi, cßn mét ph−¬ng ph¸p n÷a lµ ph−¬ng ph¸p kiÓm tra LCD ®3 s½n sµng nhËn d÷ liÖu hay ch−a b»ng c¸ch kiÓm tra bit cã träng sè cao nhÊt - D7 - cña thanh ghi lÖnh (l−u ý lµ thanh ghi lÖnh, tøc khi RS = 0), khi bit nµy xuèng 0 b¸o hiÖu LCD ®3 s½n sµng nhËn lÖnh tiÕp theo. Ph−¬ng ph¸p nµy cã −u ®iÓm lµ lµm viÖc æn ®Þnh, ®ång bé vµ kh«ng ph¶i mÊt thêi gian trÔ d− ra kh«ng cÇn thiÕt. §Ó cho LCD cã thÓ ho¹t ®éng, ®Çu tiªn ta ph¶i khëi t¹o LCD, b¸o cho nã biÕt sè hµng, sè ký tù hiÓn thÞ trªn mét hµng. C¸c d÷ liÖu ®iÒu khiÓn lÇn l−ît ®−îc chuyÓn vµo Data Bus cña LCD lµ 38H, 0EH, vµ 06H. Sau c¸c lÖnh khëi t¹o LCD nµy ta míi cã thÓ hiÓn thÞ ký tù lªn trªn mµn h×nh LCD. ViÖc xãa mµn h×nh, ®−a con trá vÒ gãc trªn bªn tr¸i cã thÓ thùc hiÖn ®−îc b»ng c¸c chuyÓn d÷ liÖu ®iÒu khiÓn 01H vµo Data Bus cña LCD. C¸c thao t¸c lËp tr×nh víi LCD sÏ ®−îc bµn kü trong phÇn x©y dùng c¸c bµi thÝ nghiÖm cho KIT.

S¬ ®å khèi cña LCD 2408

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 48

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Sau ®©y lµ b¶ng m3 lÖnh cña LCD:

M· (Hexa) 1 2 4 5 6 7 8 A C E F 10 14 18 1C 80 C0 38

LÖnh ®Õn thanh ghi cña LCD Xãa mµn h×nh hiÓn thÞ Trë vÒ ®Çu dßng DÞch con trá sang tr¸i DÞch con trá sang ph¶i DÞch hiÓn thÞ sang ph¶i DÞch hiÓn thÞ sang tr¸i T¾t con trá, t¾t hiÓn thÞ T¾t hiÓn thÞ, bËt con trá BËt hiÓn thÞ, t¾t con trá BËt hiÓn thÞ, nhÊp nh¸y con trá T¾t con trá, nhÊp nh¸y con trá DÞch vÞ trÝ con trá sang tr¸i DÞch vÞ trÝ con trá sang ph¶i DÞch toµn bé hiÓn thÞ sang tr¸i DÞch toµn bé hiÓn thÞ sang ph¶i §−a con trá vÒ ®Çu dßng thø nhÊt (*) §−a con trá vÒ ®Çu dßng thø hai (*) Hai dßng vµ ma trËn 5x7

(*) §Þa chØ cña c¸c dßng cô thÓ cña LCD 2408 nh− sau Dßng 1

0080H

Dßng 2

0098H

Dßng 3

00B8H

Dßng 4

00D8H

LCD 2408 ®−îc ph©n lµm 2 nöa mµn h×nh vµ ch©n E1, E2 ®−îc dïng ®Ó chän lµm viÖc víi c¸c mµn h×nh theo thø tù 1, 2, møc tÝch cùc cña c¸c ch©n nµy lµ møc "1". Cô thÓ, vÝ dô ta muèn in kÝ tù 'A' lªn dßng 2 cña nöa mµn h×nh 2 (d−íi) cña LCD, ta thùc hiÖn: - §Æt E1 =0, E2 = 1 - ChuyÓn sang thanh ghi lÖnh: ®Æt RS=0 - Göi m3 lÖnh ra LCD:

mov LCD_DATA_PORT, #DONG2

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 49

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- ChuyÓn sang thanh ghi d÷ liÖu: ®Æt RS =1 - In kÝ tù 'A': mov LCD_DATA_PORT , #'A' 2.3.3.3 Vi m¹ch më réng cæng giao tiÕp cã thÓ lËp tr×nh 8255 Do 89C52 chØ cã 32 ®−êng xuÊt nhËp nªn ta sö dông 8255 - mét vi m¹ch chuyªn dông cña h3ng Intel ®Ó më réng I/O cña 89C52. Sau ®©y

U19 34 33 32 31 30 29 28 27 9 8 35 5 36 6

D0 D1 D2 D3 D4 D5 D6 D7

PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7

A0 A1

PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7

RESET RD WR CS

8255

PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

4 3 2 1 40 39 38 37

ta t×m hiÓu kü vÒ vi m¹ch nµy.

18 19 20 21 22 23 24 25

c¸c vi ®iÒu khiÓn. Nã ®−îc sö dông rÊt réng r3i trong

14 15 16 17 13 12 11 10

riªng biÖt. C¸c cæng nµy ®Òu cã kh¶ n¨ng lËp tr×nh lµm

H×nh 2.14 S¬ ®å ch©n cña 8255

§©y lµ vi m¹ch cña h3ng Intel dïng ®Ó më réng thªm c¸c cæng giao tiÕp cho c¸c vi ®iÒu khiÓn còng nh− c¸c øng dông ®iÒu khiÓn bëi tÝnh linh ho¹t vµ ®é æn ®Þnh ho¹t ®éng. Chip cã 3 cæng A, B, C ®−îc truy cËp cæng vµo hoÆc ra ®éc lËp. Ngoµi ra c¸c cæng cña 8255 cßn cã kh¶ n¨ng b¾t tay, do vËy, cho phÐp giao diÖn víi c¸c thiÕt bÞ kh¸c còng cã tÝn hiÖu b¾t tay, vÝ dô nh− m¸y in.

- PA0 - PA7, PB0-PB7: C¶ 8 bit cña cæng A, B cã thÓ ®−îc lËp tr×nh thµnh 8 bit vµo, 8 bit ra, hoÆc c¶ 8 bit 2 chiÒu vµo/ra. - PC0 - PC7: TÊt c¶ c¸c bit cña cæng C ®Òu cã thÓ ®−îc lËp tr×nh thµnh c¸c bit vµo hoÆc c¸c bit ra. 8 bit nµy còng cã thÓ ®−îc chia lµm 2 phÇn: PhÇn cao (PC4PC7) lµ CU (Uppers bits) vµ phÇn thÊp (PC0 - PC3) lµ CL (Lower Bits). Mçi phÇn cã thÓ ®−îc sö dông ®éc lËp lµm ®Çu vµo hoÆc ra. Ngoµi ra, tõng bit cña cæng C tõ PC0 - PC7 còng cã thÓ ®−îc lËp tr×nh riªng rÏ. - D0 D7: c¸c ch©n d÷ liÖu D0-D7 cña 8255 ®−îc nèi tíi c¸c ch©n d÷ liÖu cña bé vi ®iÒu khiÓn ®Ó cho phÐp trao ®æi d÷ liÖu gi÷a chóng. - RD, WR: Lµ hai tÝn hiÖu ®iÒu khiÓn tÝch cùc møc thÊp vµ lµ c¸c ch©n vµo cña 8255. C¸c ch©n tÝn hiÖu cña /RD /WR cña 8031/51 ®−îc nèi ®Õn c¸c ch©n nµy. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 50

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- RESET: Lµ tÝn hiÖu vµo tÝch cùc møc cao ®−îc dïng ®Ó xãa thanh ghi ®iÒu khiÓn. Khi ch©n RESET ®−îc kÝch ho¹t th× tÊt c¶ c¸c cæng ®−îc khëi ®éng l¹i lµm c¸c cæng vµo. Trong nhiÒu thiÕt kÕ th× ch©n nµy ®−îc nèi tíi ®Çu ra RESET cña bus hÖ thèng hoÆc ®−îc nèi ®Êt ®Ó kh«ng bÞ kÝch ho¹t. Còng nh− tÊt c¶ c¸c ch©n vµo

cña

IC,

ch©n

nµy

còng



thÓ

®Ó

hë.

- A0, A1, /CS: /CS lµ ch©n chän chip, cßn A0, A1 cho phÐp chän cæng. C¸c ch©n nµy ®−îc dïng ®Ó truy cËp c¸c cæng A, B, C hoÆc thanh ghi ®iÒu khiÓn nh− tr×nh bµy ë b¶ng sau: /CS

A1

A0

Chän cæng

0

0

0

Cæng A

0

0

1

Cæng B

0

1

0

Cæng C

0

1

1

Thanh ghi ®iÒu khiÓn

1

x

x

8255 Kh«ng ®−îc chän

B¶ng chän cæng cña 8255

C¸c chÕ ®é lµm viÖc cña 8255 C¸c cæng A, B, C cña 8255 ®−îc dïng ®Ó nhËp xuÊt d÷ liÖu, cßn thanh ghi ®iÒu khiÓn th× ®−îc lËp tr×nh ®Ó chän chÕ ®é lµm viÖc cho c¸c cæng nµy. C¸c cæng cña 8255 ®−îc lËp tr×nh theo c¸c chÕ ®é sau: 1.

ChÕ ®é 0 (Mode 0): §©y lµ chÕ ®é vµo/ra ®¬n gi¶n. ë chÕ ®é nµy, c¸c cæng A, B, CL, CU cã thÓ ®−îc lËp tr×nh lµm ®Çu vµo hoÆc ®Çu ra. Nªn nhÊn m¹nh r»ng, ë chÕ ®é 0 th× tÊt c¶ c¸c bit hoÆc lµm ®Çu vµo, hoÆc lµm ®Çu ra mµ kh«ng thÓ ®iÒu khiÓn riªng rÏ tõng bit nh− c¸c cæng P0- P3 cña 8051. V× c¸c øng dông liªn quan ®Õn 8255 chñ yÕu sö dông chÕ ®é nµy vµ KIT còng chØ sö dông chÕ ®é nµy nªn chóng ta sÏ t×m hiÓu kü h¬n.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 51

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

ChÕ ®é 1 (Mode 1): ë chÕ ®é nµy, cæng A ,B cã thÓ dïng lµm cæng vµo/ ra

2.

hai chiÒu víi kh¶ n¨ng b¾t tay. TÝn hiÖu b¾t tay ®−îc cÊp bëi c¸c bit cña cæng C. ChÕ ®é 2 (Mode 2): ë chÕ ®é nµy, cæng A cã thÓ ®−îc dïng lµm cæng vµo/ra

3.

hai chiÒu víi kh¶ n¨ng b¾t tay, tÝn hiÖu b¾t tay ®−îc cÊp bëi c¸c bit cæng C. Cæng B cã thÓ ®−îc dïng nh− ë chÕ ®é vµo/ ra ®¬n gi¶n hoÆc ë chÕ ®é b¾t tay Mode 1. ChÕ ®é BSR: §©y lµ chÕ ®é thiÕt lËp / xãa bit (Bit Set/Reset). ë chÕ ®é nµy

4.

chØ cã nh÷ng bit riªng rÏ cña cæng C cã thÓ lËp tr×nh ®−îc.

LËp tr×nh chÕ ®é vµo ra ®¬n gi¶n H3ng Intel gäi chÕ ®é 0 lµ chÕ ®é vµo / ra c¬ së. Mét thuËt ng÷ kh¸c ®−îc sö dông phæ biÕn ®ã lµ vµo ra ®¬n gi¶n. ë chÕ ®é nµy th× bÊt k× c«ng A, B, hay C ®Ó thÓ ®−îc lËp tr×nh lµm cæng vµo hoÆc ra riªng rÏ. Tuy nhiªn mét cæng kh«ng thÓ ®ång thêi võa lµ ®Çu vµo l¹i võa lµ ®Çu ra.

Nhãm A D7

D6

D5

1 = I/O Mode 0 = BSR Mode

Chän mode 00 = Mode 0 01 = Mode 1 1x = Mode 2

Nhãm B D4

D3

Cæng A 1= Input 0 = Output

D2 Chän mode 0 = Mode 0 1 = Mode 1

Cæng C PC7 – PC4 1= Input 0 = Output

D1

D0

Cæng C PC3– PC0 1= Input 0 = Output

Cæng B 1= Input 0 = Output

H×nh 2.15 Khu«n d¹ng tõ ®iÒu khiÓn cña 8255 (chÕ ®é vµo ra c¬ së)

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 52

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

2.3.4 Khèi vµo/ra ADC, DAC

A D C, D A C CAÙC BOÄ BIEÁN ÑOÅI TÖÔNG TÖÏ SOÁ, SOÁ TÖÔNG TÖÏ

ÑAÀU VAØ O TÖÔNG TÖÏ

VCC VCC CR1 104

J6

2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40

/RD /WR A0 A1 /CS 6_8255

5 36 9 8 35 6

26

J7 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7

RD WR A0 A1 RESET CS

PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

GND

-12V 12V GND -5V VCC

7 8255_4_5

4 3 2 1 40 39 38 37

4PA0 4PA1 4PA2 4PA3 4PA4 4PA5 4PA6 4PA7

U14 ADC0809/LCC

18 19 20 21 22 23 24 25

4PB0 4PB1 4PB2 4PB3 4PB4 4PB5 4PB6 4PB7

14 15 16 17 13 12 11 10

4PC0 4PC1 4PC2 4PC3 4PC4 4PC5

4PA0 4PA1 4PA2 4PA3

8 7 6 5 4 3 2 1

VCC

C14.1

10uF

4PC0 4PC1 4PC2

HEADER 8

25 24 23

GND

VCC

GND

12 16

CLK ADC

10

4PC3 4PC4

22 9 6

VCC

11

IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7

ADDA ADDB ADDC

EOC

7

4PB7 4PB6 4PB5 4PB4 4PB3 4PB2 4PB1 4PB0

CR16.1 R2 2.7K

CV RST THR TRG 1

330pF CR16.2

R15.1

R15.3

1.5K

1K

VCC

U15 12 11 10 9 8 7 6 5 14

GND

DSCHG

VCC GND

7

15

10nF 5 4 6 2

1

LM35/TO

R3

+VREF -VREF

10K R5

CLK 10K

ALE OE START

GND

VCC

VCC

CLOCK for ADC

OUT

VS+

10K R4

12V

GND

U16 LM555

VOUT

4PC5

CR15.1 C GND

3

2

SW DIP-4

VCC

CLK ADC

VCC

U18

SW1 4PA0 4PA1 4PA2 4PA3

17 14 15 8 18 19 20 21

CR14 104 GND

GND

GND

8255_2 ADC, DAC ADRRESS: PA_2:8004H PB_2:8005H PC_2:8006H CW_2:8007H

26 27 28 1 2 3 4 5

R1 VCC

13

A8 A7 A6 A5 A4 A3 A2 A1

DAC0808 V+ 4 IOUT IOUT

ÑAÀU RA TÖÔNG TÖÏ

7

-12V 12V GND -5V VCC

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39

D0 D1 D2 D3 D4 D5 D6 D7

3

+

2

-

J_OUT ANALOG

U17A HA17741 6

1 2

4

D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 /RD /WR /CS_8255_7SEG_LED /CS_8255_MATRIX_LED

34 33 32 31 30 29 28 27

8255

VCC

D0 D1 D2 D3 D4 D5 D6 D7

TO BOARD NGOAI VI 3 LED 7 DOAN, LED MATRIX 8X8

U1

2

GND

HEADER 2

-12V GND COMP

16 R17.1

VR+ VR-

3

V-

C15.1 0.1uF

4K7

R15.2 1.5K

6.9K -5V

8 R15.4 1K

GND

H×nh 2.16 – S¬ ®å nguyªn lý khèi vµo/ra ADC, DAC

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 53

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

C¸c linh kiÖn chÝnh cã trong m¹ch: ADC0809 26 27 28 1 2 3 4 5 25 24 23 12 16 10 22 9 6 11

IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7

ADDA ADDB ADDC

EOC

17 14 15 8 18 19 20 21 7

+VREF -VREF CLK ALE OE START VCC

H×nh 2.17 - S¬ ®å ch©n cña ADC 0809 ADC0809 lµ vi m¹ch chuyÓn ®æi tÝn hiÖu tõ t−¬ng tù sang sè 8 bit. Vi m¹ch nµy ®−îc chÕ t¹o theo c«ng nghÖ CMOS. Bé chuyÓn ®æi t−¬ng tù sè nµy sö dông ph−¬ng ph¸p chuyÓn ®æi xÊp xØ. Sai sè cña phÐp chuyÓn ®æi lµ 1 bit. Tuy nhiªn do yªu cÇu vÒ ®é chÝnh x¸c cña tÝn hiÖu trong bé KIT kh«ng qu¸ cao nªn sai sè nh− trªn lµ chÊp nhËn ®−îc. Sau ®©y lµ mét vµi ®Æc ®iÓm cña vi m¹ch ADC0809 : - Nguån nu«i 5 V. D¶i tÝn hiÖu lèi vµo t−¬ng tù 5V khi nguån nu«i lµ +5V. Cã thÓ më réng thang ®o b»ng c¸c gi¶i ph¸p kü thuËt cho tõng m¹ch cô thÓ. - DÔ dµng giao tiÕp víi vi ®iÒu khiÓn v× ®Çu ra cã bé ®Öm 3 tr¹ng th¸i nªn cã thÓ ghÐp trùc tiÕp vµo kªnh d÷ liÖu cña hÖ vi ®iÒu khiÓn. - Tæng sai sè ch−a chØnh 1/2 LSB. - Thêi gian chuyÓn ®æi 100 s . - TÇn sè xung clock 10kHz – 1028 kHz. - §¶m b¶o sai sè tuyÕn tÝnh trong d¶i nhiÖt ®é tõ –400C Chøc n¨ng cña c¸c ch©n cña ADC0809 : Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

85OC.

Trang 54

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

- IN0 – IN7 : 8 ch©n ®Çu vµo t−¬ng tù. - A, B, C : c¸c ch©n tÝn hiÖu chän kªnh. - C¸c ch©n D0

D7 : lµ c¸c ®Çu ra sè.

- ALE : ch©n tÝn hiÖu cho phÐp chèt sè liÖu ®Çu vµo. - Start : xung cho phÐp b¾t ®Çu chuyÓn ®æi. - Clk : ®Çu vµo cung cÊp xung clock cho ADC - Ref(+) : ®iÖn ¸p vµo chuÈn +5v - Ref(-) : ®iÖn ¸p vµo chuÈn 0 - OE : Ch©n cho phÐp xuÊt d÷ liÖu ®3 chuyÓn ®æi ra DataBus. - EOC : Cho biÕt qu¸ tr×nh chuyÓn ®æi ®3 kÕt thóc.

- Vcc: nguån cung cÊp Ho¹t ®éng cña ADC0809 : §Çu tiªn ta ph¸t tÝn hiÖu vµo 3 ch©n A, B, C ®Ó chän cæng vµo t−¬ng tù. §Ó b¾t ®Çu cho ADC0809 ho¹t ®éng, ta ph¸t xung vµo ch©n Start. TiÕp tôc ph¸t xung ALE ®Ó chèt d÷ liÖu t−¬ng tù ®Çu vµo. Sau khi qu¸ tr×nh chuyÓn ®æi t−¬ng tù – sè ®3 diÔn ra xong. ADC0809 sÏ tù ph¸t ra mét xung trªn ch©n EOC ®Ó b¸o cho biÕt ®3 kÕt thóc qu¸ tr×nh chuyÓn ®æi. §Ó d÷ liÖu ®−îc ®−a ra c¸c ch©n D0

D7, ta

ph¸t mét xung vµo ch©n OE cña ADC0809. B©y giê cã thÓ ®äc d÷ liÖu ®−îc. Trong m¹ch nguyªn lý cña khèi vµo/ra ADC-DAC, ADC0809 ®−îc ®iÒu khiÓn bëi 2 cæng cña 8255. Cæng PA cña 8255 ®−îc nèi víi c¸c ch©n ra sè cña ADC, cßn viÖc ph¸t xung ®iÒu khiÓn ADC ®−îc thùc hiÖn bëi 4 bit thÊp cña cæng PC. LM555 §©y lµ vi m¹ch dïng ®Ó t¹o xung clock cho ADC0809. Vi m¹ch nµy ®−îc sö dông réng r3i trong c¸c øng dông cÇn t¹o ra xung vu«ng cã tÇn sè thay ®æi. D−íi ®©y lµ s¬ ®å khèi vµ c¸ch lµm viÖc cña IC nµy. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 55

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

U1 3

OUT

DSCHG

7

5 CV 4 RST 6 THR 2 TRG VCC

8

LM555

H×nh 2.18 - S¬ ®å ch©n LM555

LM35 Trong phÇn chuyÓn ®æi ADC, DAC ngoµi ®Çu vµo tÝn hiÖu t−¬ng tù b»ng c¸c biÕn trë vi chØnh, trªn KIT cßn trang bÞ mét c¶m biÕn nhiÖt ®é, hä LM35. §©y lµ hä c¶m biÕn nhiÖt, m¹ch tÝch hîp, chÝnh x¸c cao, cã ®iÖn ¸p ®Çu ra tû lÖ tuyÕn tÝnh víi nhiÖt ®é theo thang ®é C. Hä c¶m biÕn nµy kh«ng yªu cÇu c¨n chØnh ngoµi v× vèn nã

15

A8 A7 A6 A5 A4 A3 A2 A1

IOUT IOUT

COMP

4 2

16

VR+ V-

14

V+

U6 12 11 10 9 8 7 6 5

13

®3 ®−îc c¨n chØnh. Hä nµy cho ®iÖn ¸p ra 10mV øng víi thay ®æi nhiÖt ®é lµ 10C.

VR-

3

DAC0808

H×nh 2.20 - S¬ ®å ch©n cña DAC0808

H×nh 2.19 S¬ ®å ch©n cña LM35

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 56

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

DAC0808 DAC0808 lµ vi m¹ch chuyÓn ®æi tÝn hiÖu tõ sè sang t−¬ng tù cã ®é chÝnh x¸c 8 bit. TÝn hiÖu t−¬ng tù lµ dßng (Iout) vµ nÕu nèi ®iÖn trë tíi ch©n Iout th× kÕt qu¶ sÏ ®−îc chuyÓn thµnh ®iÖn ¸p. Dßng tæng ®−îc cÊp bëi ch©n Iout lµ mét hµm sè nhÞ ph©n cña c¸c ®Çu vµo D0 – D7 cña DAC0808 vµ ®−îc tÝnh theo Iref nh− sau: I OUT

I REF

D7 2

D6 4

D5 8

D4 16

D3 32

D 2 D1 64 128

D0 256

Dßng ®Çu vµo IREF ph¶i ®−îc ¸p vµo ch©n 14. Dßng IREF th−êng ®¹t gi¸ trÞ 2mA. NÕu IREF = 2mA, cßn tÊt c¶ ®Çu vµo nèi víi møc cao th× dßng ®iÖn cùc ®¹i ë ®Çu ra lµ 1.99mA. ChuyÓn IOUT sang ®iÖn ¸p ë DAC0808 NÕu nèi ®iÖn trë tíi ch©n IOUT th× dßng ®−îc chuyÓn thµnh ®iÖn ¸p vµ cã thÓ kiÓm tra ®Çu ra b»ng m¸y hiÖn sãng. Tuy nhiªn, nh− vËy sÏ lµm gi¶m ®é chÝnh x¸c do bÞ thay ®æi trë kh¸ng vµo cña t¶i. V× vËy dßng IREF cÇn ®−îc c¸ch ly b»ng c¸ch dïng khuyÕch ®¹i thuËt to¸n, vÝ dô nh− HA17741 víi ®iÖn trë håi tiÕp Rf = 5 K. Chøc n¨ng c¸c ch©n : - A1

A8 : C¸c ®Çu vµo sè

- VR+ : §iÖn ¸p chuÈn d−¬ng - VR- : §iÖn ¸p chuÈn ©m - V- (VEE) : §iÖn ¸p so s¸nh hiÖu chØnh - V+ : §iÖn ¸p nguån cung cÊp - COMP : Ch©n tÝn hiÖu so s¸nh - IOUT : Dßng ra d−¬ng - /IOUT : Dßng ra ©m Sau ®©y lµ m¹ch øng dông phæ biÕn nhÊt cña ADC0808 :

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 57

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 58

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

2.3.5 Khèi vµo/ra xung sè, ®iÒu khiÓn ®éng c¬ b−íc

VAØ O R A X U N G SOÁ ÑIEÀ U KH IEÅ N Ñ OÄ N G C Ô B ÖÔ C Ù Ñ OÄ NG CÔ 1 CH I E À U VCC

CR3 104

ÑAÀU VAØO SOÁ

GND

VAØO RA XUNG SOÁ ÑOÄNG CÔ BÖÔÙC D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 /RD /WR /CS_8255_PULSE_STEPPER -12V 12V GND -5V VCC

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39

J5

2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40

U3

D0 D1 D2 D3 D4 D5 D6 D7

34 33 32 31 30 29 28 27

/RD /WR A0 A1 /CS_8255_PULSE_STEPPER

5 36 9 8 35 6

26

VCC

D0 D1 D2 D3 D4 D5 D6 D7

PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7

RD WR A0 A1 RESET CS

PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

GND

-12V 12V GND -5V VCC

8255

7

VCC RN2

SW1 4 3 2 1 40 39 38 37

3PA0 3PA1 3PA2 3PA3 3PA4 3PA5 3PA6 3PA7

18 19 20 21 22 23 24 25

3PB0 3PB1 3PB2 3PB3 3PB4 3PB5

3PA0 3PA1 3PA2 3PA3 3PA4 3PA5 3PA6 3PA7

3PA0 3PA1 3PA2 3PA3 3PA4 3PA5 3PA6 3PA7

1 2 3 4 5 6 7 8 9 10k

SW DIP-10 D22.13 3PA0

14 15 16 17 13 12 11 10

3PC0 3PC1 3PC2 3PC3 3PC4 3PC5 3PC6 3PC7

LED D22.14 3PA1 LED D22.15

GND

1 2 3 4 5 6 7 8 9

LED D22.16 3PA3

8255_3

8255_3 XUNG SOÁ, ÑOÄNG CÔ BÖÔÙC ADRRESS: PA_3:8008H PB_3:8009H PC_3:800AH CW_3:800BH

RN1

VCC

3PA2

GND

LED D22.17 3PA4

1k LED D22.18

J10 3PA5 1 2

VCC SW22.9

LED D22.19

R22.9 3PC4

3PA6

3PC4 1K

SW22.10

HEADER 2 J11

R22.10 3PC5

3PC0 3PC1 3PC2 3PC3

LED D22.20 3PA7

3PC5

1 2

LED

1K SW22.11

R22.11 3PC6

J9 HEADER 2

3PC6 VCC 1K

SW22.12

1 2

SW2

R22.12 3PC7

12V

VCC GND

3PC7 HEADER 2 1K R22.21

D22.9

1K R22.22

D22.10

3PC4

ÑAÀU VAØO XUNG DAÏNG NUÙT AÁN

3PC5 1K R22.23

ÑAÀU VAØO XUNG TÖØ CAÙC THIEÁT BÒ NGOAØI NHÖ ENCODER

D22.11

3PC6 1K R22.24

D22.12

3PC7

SW KEY -SPDT

J_STEPMOTOR U4 3PB0 3PB1 3PB2 3PB3 3PB4 3PB5

1 2 3 4 5 6 7 8 10

1K

IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8

OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8

18 17 16 15 14 13 12 11

1 2 3 4 5 6 OUT5 OUT6

J6

OUT5

2 1

J7

OUT6

HEADER 2

2 1

HEADER 2

HEADER 6

ÑOÄNG CÔ BÖÔÙC

ÑOÄNG CÔ 1 CHIEÀU

COM ULN2803

H×nh 2.21 - Khèi vµo/ra xung sè vµ ®iÒu khiÓn ®éng c¬ b−íc, ®éng c¬ 1 chiÒu Linh kiÖn chÝnh cã trong m¹ch : §éng c¬ b−íc §éng c¬ b−íc thùc hiÖn viÖc chuyÓn c¸c xung ®iÖn thµnh c¸c b−íc quay mÞn cña motor. Do cã sù t−¬ng øng 1-1 gi÷a xung ®iÖn ®iÒu khiÓn vµ b−íc quay cña motor nªn ®éng c¬ b−íc cã ®é chÝnh x¸c dÞch chuyÓn cao. V× vËy ®éng c¬ b−íc th−êng ®−îc sö dông trong c¸c thiÕt bÞ to¹ ®é chÝnh x¸c nh− c¸nh tay robot, m¸y in, m¸y vÏ, thiÕt bÞ khoa häc...

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 59

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Nguyªn lý ho¹t ®éng vµ cÊu t¹o cña ®éng c¬ b−íc ®−îc tr×nh bµy nh− sau :

H×nh 2.22 - Nguyªn lý cÊu t¹o cña ®éng c¬ b−íc. Nh− h×nh vÏ trªn lµ lo¹i ®éng c¬ b−íc lo¹i nam ch©m vÜnh cöu. Roto lµm b»ng nam ch©m vÜnh cöu cßn c¸c cuén d©y ®−îc quÊn trªn stato. B−íc gãc cña r«to lµ 900 . §éng c¬ cã 4 cùc ®−îc ®Æt ë vÞ trÝ ®èi diÖn nhau tõng cÆp mét, gåm X , X vµ Y , Y . Tuú thuéc vµo chiÒu dßng ®iÖn ch¹y qua c¸c cuén d©y mµ tõ tr−êng cña stato sÏ cã mét h−íng nhÊt ®Þnh. Do ®ã roto sÏ ®−îc ®Þnh vÞ chÝnh x¸c. ViÖc thay ®æi thø tù chiÒu dßng ®iÖn ch¹y qua c¸c cuén d©y theo mét tr×nh tù nhÊt ®Þnh sÏ ®iÒu khiÓn ®−îc ®éng c¬ ch¹y thuËn hay ch¹y ng−îc nh− mong muèn. Vµ tèc ®é cña ®éng c¬ cã thÓ ®−îc ®iÒu chØnh b»ng kho¶ng thêi gian trÔ gi÷a hai lÇn thay ®æi thø tù chiÒu dßng ®iÖn.

Theo chiÒu kim ®ång hå

Ng−îc chiÒu kim ®ång hå

H×nh 2.23 - Nguyªn lý cÊp xung cho ®éng c¬ b−íc. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 60

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

Trong m¹ch nguyªn lý ë h×nh 2.20 cã mét header 6 ®Çu ra ®Ó ®iÒu khiÓn ®éng c¬ b−íc (Stepper motor). Lo¹i ®éng c¬ b−íc ®−îc l¾p ®Æt trªn bé KIT lµ ®éng c¬ b−íc cã ®iÖn ¸p nguån cÊp lµ 5V vµ ®é ph©n gi¶i lµ 200, tøc lµ víi mçi nhÞp ®iÒu khiÓn, motor b−íc sÏ quay mét gãc = 3600/200 = 1,80.

H×nh cña khèi xung sè, ®éng c¬ b−íc, ®éng c¬ 1 chiÒu

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 61

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

2.3.6 Khèi hiÓn thÞ LED matrix

LED M A TR AÄ N U41 5PB0 5PB1 5PB2 5PB3 5PB4 5PB5 5PB6 5PB7

1 2 3 4 5 6 7 8

IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8

10

OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8

18 17 16 15 14 13 12 11

COM

RG1 VCC

2

2

2

1 RG6

D8

1

2 1

D7

1

2

2

RG5

RG7

RG8

26

7

C2383

TL5

C2383 6 9 C2383

12

5PA5 TL7

10

7

4

1

A4

8x8 Bi-Color Led Matrix

A5 A6 A7 A8 R2 R1

R3 R4 R5 R6 R7 R8 11

3

5PA4

G5 G6 G7 G8

A3

8

16 13

GND

GND

CLM1 22 G1 G3 G4 A1 G2 19 A2

5PA3

TL6

15

5PC0 5PC1 5PC2 5PC3 5PC4 5PC5 5PC6 5PC7

TL4

18

14 15 16 17 13 12 11 10

C2383

5PA2

5

PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

5PB0 5PB1 5PB2 5PB3 5PB4 5PB5 5PB6 5PB7

C2383

TL3

5PA1

2

RESET RD WR CS

18 19 20 21 22 23 24 25

TL2

5PA0

14

35 5 36 6

PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7

5PA0 5PA1 5PA2 5PA3 5PA4 5PA5 5PA6 5PA7

C2383

5PA6

8255

TL8

C2383

5PA7

1

RR8

D15

D16

2

D14

2

D13

RR7

1

1

RR6

2

D12

2

D11

RR5

1

1

RR4

2

D10

2

D9

RR3

1

RR2

1

RR1

2

8255_4_5

-12V 12V GND -5V VCC

8255_5 LED MA TRAÄN ADRRESS: PA_5:800CH PB_5:800DH PC_5:800EH CW_5:800FH

RG4

17

/RD /WR /CS_8255_MATRIX_LED

A0 A1

4 3 2 1 40 39 38 37

2

2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40

RG3

21

9 8

PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7

C2383

24

A0 A1

D0 D1 D2 D3 D4 D5 D6 D7

TL1

1

-12V 12V GND -5V VCC

J6

D6

VCC

20

34 33 32 31 30 29 28 27

TO BOARD NGOAI VI 3 LED 7 DOAN, LED MATRIX 8X8 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39

RG2

D5

23

D0 D1 D2 D3 D4 D5 D6 D7

VCC

U18

D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 /RD /WR /CS_8255_7SEG_LED /CS_8255_MATRIX_LED

D4

VCC

DATA (D0-D7)

GND

D3

1

D2

1

1

D1

1

2

2

ULN2803

U42 5PC0 5PC1 5PC2 5PC3 5PC4 5PC5 5PC6 5PC7

1 2 3 4 5 6 7 8 10

IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8

OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8

18 17 16 15 14 13 12 11

COM ULN2803

H×nh 2.24 - S¬ ®å nguyªn lý m¹ch hiÓn thÞ LED matrix LED matrix 8x8 lµ mét b¶ng 64 ®iÓm LED bè trÝ theo kiÓu ma trËn 8 hµng x 8 cét, t¹i mçi ®iÓm 2 LED xanh vµ ®á ®Êu chung An«t, mçi hµng gåm 8 ®iÓm còng ®Êu chung An«t víi nhau. Nh− vËy ma trËn LED cã 24 ch©n : 8 ch©n An«t chung, 8 ch©n ®iÒu khiÓn ®Ìn xanh vµ 8 ch©n ®iÒu khiÓn ®Ìn ®á. §Þa chØ c¸c cæng vµ thanh ghi ®iÒu khiÓn cña 8255 ®iÒu khiÓn LED matrix nh− sau :

PA5 : 800Ch

PB5 : 800Dh

PC5 : 800Eh

CW5 : 800Fh

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 62

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

H×nh cña khèi LED ®¬n, LED 7 ®o¹n, LED ma trËn Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 63

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

ULN2803: IC lµm nhiÖm vô ®Öm dßng cho LED ma trËn vµ ®éng c¬ b−íc còng nh− ®éng c¬ 1 chiÒu. IC nµy gåm 8 bé tranzitor NPN m¾c Darlington, chÞu ®−îc ®iÖn ¸p ®Çu vµo ®Õn 30V, ®Çu ra ®Õn 50V, dßng IC cùc ®¹i cã thÓ chÞu ®−îc lµ 500mA, ®ñ ®Ó ®Öm dßng cho ma trËn LED. Ngoµi ra nã cßn tÝch hîp c¸c transistor ®Ó chèng qu¸ ¸p khi ®ãng ng¾t c¸c t¶i c¶m (c¸c cuén d©y cña ®éng c¬). Nguyªn lý ho¹t ®éng: Khi ®Çu vµo t−¬ng øng ë møc cao th× ®Çu ra t−¬ng øng ë møc thÊp.

H×nh 2.25 S¬ ®å ch©n cña UNL2803

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 64

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

2.3.7 Khèi hiÓn thÞ LED 7 ®o¹n vµ LED ®¬n

L E D 7 Ñ OA ÏN , L E D Ñ ÔN VCC VCC U30

CR40 GND104

DATA (D0-D7)

8255_4 LED 7 ÑOAÏN LED ÑÔN ADRRESS: PA_4:C000H PB_4:C001H PC_4:C002H CW_4:C003H

16 7 1 2 6

U40 26 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1

34 33 32 31 30 29 28 27 9 8

GND 35 /RD 5 /WR 36 /CS_8255_7SEG_LED 6

VCC PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7

D0 D1 D2 D3 D4 D5 D6 D7 A0 A1

RESET RD WR CS

7

PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

4 3 2 1 40 39 38 37

3 5

4PA0 4PA1 4PA2 4PA3 4PA4 4PA5 4PA6 4PA7

D0 D1 D2 D3

A B C D E F G

LT RBI 8

VCC

7447

VCC

BI/RBO GND GND

13 12 11 10 9 15 14 4

R26.1 R26.2 R26.3 R26.4 R26.5 R26.6 R26.7

U26

560

7 6 4 2 1 9 10 5

VCC 7 Segs LED

U31

18 19 20 21 22 23 24 25

7 1 2 6 3 5

D0 D1 D2 D3 LT RBI

A B C D E F G BI/RBO

14 15 16 17 13 12 11 10

a b c d e f g pt

13 12 11 10 9 15 14 4

R27.1 R27.2 R27.3 R27.4 R27.5 R27.6 R27.7

U27

560

7 6 4 2 1 9 10 5

a b c d e f g pt

VCC 7 Segs LED

7447 VCC U32 7 1 2 6

GND

8255_0 3 5

GND

D0 D1 D2 D3 LT RBI

A B C D E F G BI/RBO

13 12 11 10 9 15 14

R28.1 R28.2 R28.3 R28.4 R28.5 R28.6 R28.7

U28

560

7 6 4 2 1 9 10 5

4

a b c d e f g pt

VCC 7 Segs LED

7447 VCC U33 7 1 2 6 3 5

D0 D1 D2 D3 LT RBI

A B C D E F G BI/RBO

13 12 11 10 9 15 14 4

R29.1 R29.2 R29.3 R29.4 R29.5 R29.6 R29.7

U29

560

7 6 4 2 1 9 10 5

a b c d e f g pt

VCC 7 Segs LED

7447 VCC

D17

LED D18

LED D19 U43 4PA0 4PA1 4PA2 4PA3 4PA4 4PA5 4PA6 4PA7

1 2 3 4 5 6 7 8

IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8

10

OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8

18 17 16 15 14 13 12 11

LED R49 D20

LED D21

COM ULN2803

LED

9 8 7 6 5 4 3 2

1

VCC

RESISTOR SIP 9

D22

LED

H×nh 2.25 - S¬ ®å nguyªn lý m¹ch hiÓn thÞ LED 7 thanh

D23

LED D24

LED

M¹ch gi¶i mM cho ®Ìn LED 7 thanh DM7447A §Ó cã thÓ hiÓn thÞ ®−îc c¸c sè liÖu lªn LED 7 thanh, ta cÇn vi m¹ch gi¶i m3 7447. Vi m¹ch nµy cã nhiÖm vô chuyÓn ®æi d÷ liÖu ®Çu vµo tõ c¸c ch©n D0

D3 thµnh

c¸c tÝn hiÖu ®−a ®Õn c¸c thanh cña LED. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 65

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

U3 7 1 2 6 3 5

D0 D1 D2 D3 LT RBI

A B C D E F G BI/RBO

13 12 11 10 9 15 14 4

7447

H×nh 2.26 - S¬ ®å ch©n cña 7447 Sau ®©y lµ b¶ng gi¶i m3 tÝn hiÖu cña vi m¹ch 7447 :

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 66

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng21 : thiÕt kÕ Kit vi ®iÒu khiÓn

§Ìn LED 7 thanh U5 7 6 4 2 1 9 10 5

a b c d e f g pt 7 Segs LED

H×nh 2.27 - S¬ ®å ch©n cña LED 7 thanh Dßng tiªu thô cña ®Ìn kh¸ lín, mçi ®Ìn cã dßng kho¶ng 100mA. ChÝnh v× vËy ta cÇn cã ®iÖn trë giíi h¹n dßng gi÷a vi m¹ch gi¶i m3 7447 vµ LED. Trong ®å ¸n nµy, ta sö dông lo¹i ®Ìn cã Anèt chung, mµu hiÓn thÞ lµ mµu ®á.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 67

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

Ch−¬ng III x©y dùng phÇn mÒm Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n m«n T§H

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 68

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

Ch−¬ng III x©y dùng phÇn mÒm 3.1 Ch−¬ng tr×nh MONITOR cho KIT Do ch−¬ng tr×nh MONITOR cña hÖ thèng phøc t¹p vµ kh¸ lín nªn ta sÏ tæ chøc thµnh nhiÒu module nhá ghÐp l¹i víi nhau. Mçi module thùc hiÖn mçi chøc n¨ng riªng, c¸c module trong ch−¬ng tr×nh: + Module thùc hiÖn viÖc hiÓn thÞ LCD. + Module qu¶n lý bµn phÝm. + Module qu¶n lý viÖc ®äc/ghi d÷ liÖu trong EEPROM vµ RAM. + Module t¹o thêi gian trÔ. + Ch−¬ng tr×nh chÝnh (Main). + Module ®iÒu khiÓn truy cËp c¸c thanh ghi ®Æc biÖt vµ c¸c « nhí bªn trong chip vi ®iÒu khiÓn chÝnh. + Module truyÒn th«ng giao tiÕp víi m¸y tÝnh PC. MO nguån cña ch−¬ng tr×nh hÖ ®iÒu hµnh ®−îc giíi thiÖu ë phÇn phô lôc cña ®å ¸n. Sau ®©y lµ l−u ®å thuËt to¸n cña ch−¬ng tr×nh MONITOR :

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 69

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

L−u ®å thuËt to¸n cña module Main: khëi t¹o c¸c thiÕt ®Æt ban ®Çu cho KIT vµ c¸c thiÕt bÞ ngo¹i vi, hiÓn thÞ mµn h×nh 1.

B¾t ®Çu

Khëi t¹o c¸c biÕn, c¸c thiÕt lËp ban ®Çu cho 8255 Khëi ®éng LCD

HiÓn thÞ MAIN MENU

Cµi ®Æt c¸c ng¾t Cho phÐp ng¾t ngoµi 0 Cho phÐp ng¾t nèi tiÕp

HiÓn thÞ Mµn h×nh 1

N

Y EEPROM trèng?

Key=F1?

Call Step Mode

Key=F2?

HiÓn thÞ mµn h×nh 4 Call DEMO Prog.

HiÓn thÞ Mµn h×nh 2

Key=F2?

HiÓn thÞ mµn h×nh 4 Call DEMO Prog.

KÕt thóc

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 70

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

L−u ®å c¸c ch−¬ng tr×nh DEMO (Mµn h×nh 4) B¾t ®Çu

HiÓn thÞ mµn h×nh 1 Xãa byte ®Öm bµn phÝm

Byte ®Öm BUF = 1

Ch¹y Led ®¬n DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 2

Ch¹y Led 7 ®o¹n DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 3

Ch¹y Led ma trËn DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 4

Ch¹y Bµn phÝm, LCD DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 5

Ch¹y ADC, DAC DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 6

Ch¹y STEPPER DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 7

Ch¹y RS232 DEMO

Byte ®Öm BUF = 18

Byte ®Öm BUF = 18 (BSP)

HiÓn thÞ mµn h×nh 1

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

KÕt thóc

Trang 71

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

L−u ®å ch−¬ng tr×nh MONITOR ch¹y ë chÕ ®é gì rèi STEP MODE (Mµn h×nh 3) B¾t ®Çu

Khëi t¹o c¸c biÕn L−u c¸c thanh ghi cÇn thiÕt Gi¶ lËp CPU nh− ë tr¹ng th¸i RESET

HiÓn thÞ Mµn h×nh 3 (C¸c thanh ghi ®Æc biÖt SFR, R0 -R7 ... )

HiÓn thÞ gîi ý cho c¸c lÖnh F1, F2, BSP

Xãa byte ®Öm bµn phÝm BUF

BUF = 16 (F1)

Y

Chê vµ xö lý nhËp 1 byte vµo bé ®Öm BYTE1

BUF = 19 (ENTER)

N

In ra gi¸ trÞ BIT cÇn xem

YES (F1) Hái cã söa kh«ng? ENTER = kh«ng söa

NO (ENTER)

Chê vµ xö lý nhËp 1 BIT

BUF =19 (ENTER)

N

Y CËp nhËt vïng nhí

1 Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

2 Trang 72

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

1

2

Y

BUF = 17 (F2)

Chê vµ xö lý nhËp 2 byte vµo bé ®Öm BYTE1, 2

BUF = 19 (ENTER)

N

N In ra gi¸ trÞ BYTE cÇn xem

YES (F1) Hái cã söa kh«ng? - ENTER = kh«ng söa

Chê vµ xö lý nhËp 1 BYTE

NO (ENTER) BUF =19 (ENTER) Y P1.2 = 0 (STEP)

N

P1.2 =1 (STEP)

N

N CËp nhËt vïng nhí

Y Delay chèng rung

RETI

KÕt thóc

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 73

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

L−u ®å ch−¬ng tr×nh ng¾t ngoµi 0 (INT0) cña bµn phÝm

B¾t ®Çu

NhËn m· phÝm L−u vµo byte ®Öm bµn phÝm

Ch©n ng¾t ngoµi 1 = 1?

N

Y KÕt thóc

3.2 Ch−¬ng tr×nh qu¶n lÝ thiÕt bÞ 3.2.1 Ch−¬ng tr×nh quÐt bµn phÝm Nh− ®O tr×nh bµy ë ch−¬ng 2, bµn phÝm sö dông trong bé KIT nµy gåm cã 20 phÝm, 16 phÝm ®Çu tiªn ®−îc s¾p xÕp theo kiÓu ma trËn vµ 4 phÝm cuèi cïng ®−îc xÕp theo mét cét nèi ®Êt chung. Trªn bµn phÝm cña bé KIT, 4 phÝm trªn mét cét nèi ®Êt chung lµ c¸c phÝm chøc n¨ng : F1, F2, BACK SPACE vµ ENTER. C¸c phÝm tõ 0-9 vµ A-F dïng ®Ó nhËp liÖu, c¸c phÝm chøc n¨ng cã t¸c dông kh¸c nhau tïy theo ng÷ c¶nh cña mµn h×nh, gîi ý t¸c dông cña c¸c phÝm bÊm hiÓn thÞ trªn mµn h×nh, ®iÒu nµy gióp viÖc lµm quen vµ thÝ nghiÖm trªn KIT rÊt thuËn tiÖn vµ dÔ dµng cho ng−êi häc, nhÊt lµ khi thÝ nghiÖm ë chÕ ®é debug. L−u ®å thuËt to¸n cña ch−¬ng tr×nh quÐt bµn phÝm nh− sau: Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 74

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

L−u ®å thuËt to¸n cña ch−¬ng tr×nh quÐt bµn phÝm: B¾t ®Çu

XuÊt 1 ra tÊt c¶ hµng vµ cét

Hµng 1=1?

XuÊt phÝm 16 (F1)

Y

TÊt c¶ hµng = 1? Y

N

Hµng 2=1?

XuÊt phÝm 17 (F2)

Y Hµng 3=1?

XuÊt phÝm 18 (BSP)

Y Hµng 4=1? Nèi ®Êt hµng 1

TÊt c¶ cét = 1?

Y Quay tõng bit cña byte chøa c¸c cét lªn cê C G¸n DPTR cho ®Þa chØ hµng 1

Y

Quay tõng bit cña byte chøa c¸c cét lªn cê C G¸n DPTR cho ®Þa chØ hµng 2

Y

Quay tõng bit cña byte chøa c¸c cét lªn cê C G¸n DPTR cho ®Þa chØ hµng 3

Y

T¨ng DPTR

Y

N C=0?

T¨ng DPTR

Y

C=0?

N

T¨ng DPTR

Y Tra b¶ng XuÊt m· phÝm

Nèi ®Êt hµng 4

TÊt c¶ cét = 1?

N

Tra b¶ng XuÊt m· phÝm

Nèi ®Êt hµng 3

TÊt c¶ cét = 1?

C=0?

Tra b¶ng XuÊt m· phÝm

Nèi ®Êt hµng 2

TÊt c¶ cét = 1?

XuÊt phÝm 19 (ENTER)

Quay tõng bit cña byte chøa c¸c cét lªn cê C G¸n DPTR cho ®Þa chØ hµng 4

Y

C=0?

N

T¨ng DPTR

Y Tra b¶ng XuÊt m· phÝm

KÕt thóc

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 75

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

3.2.2 Ch−¬ng tr×nh ®iÒu khiÓn hiÓn thÞ LCD §Ó cho LCD cã thÓ ho¹t ®éng, ®Çu tiªn ta ph¶i khëi t¹o LCD, b¸o cho nã biÕt sè hµng, sè ký tù hiÓn thÞ trªn mét hµng. C¸c d÷ liÖu ®iÒu khiÓn lÇn l−ît ®−îc chuyÓn vµo Data Bus cña LCD lµ 38H, 0EH, vµ 06H. Sau c¸c lÖnh khëi t¹o LCD nµy ta míi cã thÓ hiÓn thÞ ký tù lªn trªn mµn h×nh LCD. C¸c l−u ®å lµm viÖc víi LCD nh− sau:

Khëi t¹o LCD B¾t ®Çu

Göi lÖnh ®iÒu khiÓn 38H Göi lÖnh ®iÒu khiÓn 08H Göi lÖnh ®iÒu khiÓn 01H Göi lÖnh ®iÒu khiÓn 06H Göi lÖnh ®iÒu khiÓn 0EH

KÕt thóc

Chê LCD s½n sµng lµm viÖc B¾t ®Çu

Truy cËp thanh ghi lÖnh RS =0

ChuyÓn sang chÕ ®é ®äc d÷ liÖu R/W =1

§−a 1 xung tõ thÊp lªn cao ë ch©n E cña LCD ®Ó ®äc d÷ liÖu

Bit D7 = 1?

KÕt thóc

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 76

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

Göi lÖnh ®iÒu khiÓn ra LCD

In mét kÝ tù ra LCD

B¾t ®Çu

B¾t ®Çu

§îi LCD s½n sµng nhËn lÖnh

§îi LCD s½n sµng lµm viÖc

XuÊt m· lÖnh

Truy cËp thanh ghi lÖnh - RS = 0

Cho phÐp ghi ra LCD - R/W =0

§−a 1 xung tõ cao xuèng thÊp ë ch©n E ®Ó chèt d÷ liÖu

KÕt thóc

§−a d÷ liÖu ra c¸c ch©n d÷ liÖu cña LCD

Chän thanh ghi d÷ liÖu - RS = 1

ChuyÓn sang chÕ ®é ghi - R/W = 0

Göi 1 xung tõ cao xuèng thÊp ®Õn ch©n E cña LCD ®Ó ghi d÷ liÖu

KÕt thóc

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 77

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

3.3 Ch−¬ng tr×nh giao tiÕp m¸y tÝnh

Ch−¬ng tr×nh giao tiÕp gi÷a bé KIT víi m¸y tÝnh ®−îc viÕt b»ng ng«n ng÷ Delphi Giao diÖn cña ch−¬ng tr×nh trªn m¸y tÝnh PC nh− h×nh vÏ - Ch−¬ng tr×nh cho phÐp n¹p ch−¬ng tr×nh cña ng−êi sö dông vµo EEPROM, sau ®ã sÏ ch¹y trªn KIT, cã thÓ ch¹y ®éc lËp, tøc kh«ng cã sù ®iÒu khiÓn cña MONITOR - chÕ ®é STEP hoÆc ch¹y tõng lÖnh ®Ó debug vµ theo dâi gi¸ trÞ bé nhí, c¸c thanh ghi ®Æc biÖt SFR, R0-R7 trªn mµn h×nh LCD cña KIT. - Trªn giao diÖn cña ch−¬ng tr×nh cã thÓ download file d¹ng Hexa cña ch−¬ng tr×nh xuèng bé KIT vµ cã thÓ upload néi dung bé nhí EEPROM cña KIT. - C¸c nót chøc n¨ng trªn giao diÖn :

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 78

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : X©y dùng phÇn mÒm

+ OPEN and COMPILE: Më mét file mO lÖnh d¹ng hîp ng÷ (*.asm) vµ biªn dÞch (Compile) thµnh file HEX hoÆc file ®O compile d−íi d¹ng HEXA (*.hex) ®Ó n¹p trùc tiÕp xuèng KIT. KÕt qu¶ compile ®−îc hiÓn thÞ trong cöa sæ Compile Log. + OPEN Hex file: Më mét file mO lÖnh ®O ®−îc biªn dÞch d¹ng hexa (*.hex) vµ dÞch ng−îc (Disasemble) thµnh file mO lÖnh ASM (*.d51). KÕt qu¶ dÞch ng−îc hiÓn thÞ trong cöa sæ ASM code, mO m¸y cña bé nhí hiÓn thÞ trong cöa sæ Opcode. KÕt qu¶ compile ®−îc hiÓn thÞ trong cöa sæ Compile Log. + DOWNLOAD : Cho phÐp download file Hex ®−îc më hoÆc Compile tõ file mO lÖnh ASM xuèng bé nhí cña KIT. + UPLOAD : Cho phÐp ®äc néi dung ch−¬ng tr×nh cña ng−êi sö dông ®O ®−îc n¹p vµo bé nhí cña KIT tõ lÇn n¹p tr−íc. + Erase EEPROM: Cho phÐp xãa EEPROM. Ch−¬ng tr×nh MONITOR ®−îc viÕt d−íi d¹ng hîp ng÷ (Assembly), ban ®Çu khi tham kh¶o cã thÓ g©y khã kh¨n cho ng−êi ®äc tuy nhiªn hîp ng÷ lµm cho ng−êi häc cã thÓ hiÓu râ vµ n¾m v÷ng vÒ cÊu tróc phÇn cøng cña hä vi ®iÒu khiÓn 8051 h¬n nh− c¸ch tæ chøc bé nhí, c¸ch thùc hiÖn mét ng¾t, vÞ trÝ cña c¸c vector ng¾t, c¸c ho¹t ®éng ®Þnh thêi, hiÓu râ vÞ trÝ b¶n ®å bé nhí, c¸c thanh ghi ®Æc biÖt SFR ... Ngoµi ra khi sö dông hîp ng÷ ta kh«ng ph¶i phô thuéc vµo c¸c tr×nh biªn dÞch hç trî b»ng ng«n ng÷ bËc cao nh− C, Basic ... Sau ®©y ta ®i x©y dùng c¸c néi dung thÝ nghiÖm cÇn thiÕt cho ng−êi häc ®Ó qua ®ã ng−êi häc tõng b−íc n¾m râ cÊu tróc vµ c¸ch lËp tr×nh cho hä vi ®iÒu khiÓn 8051.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 79

suu tam: [email protected]

- 80 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

Ch−¬ng IV C¸c bµi tËp thùc hiÖn trªn Kit

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n m«n T§H

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 80

suu tam: [email protected]

- 81 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

Ch−¬ng IV C¸c bµi tËp thùc hiÖn trªn Kit Víi môc ®Ých lµ ®µo t¹o nªn tÊt c¶ ch−¬ng tr×nh DEMO cña KIT ®Òu ®−îc viÕt b»ng hîp ng÷ (Assembly), ®iÒu nµy gióp ng−êi häc cã thÓ hiÓu râ vµ n¾m v÷ng vÒ cÊu tróc phÇn cøng cña hä vi ®iÒu khiÓn 8051. Ngoµi ra cßn lµm quen ®−îc víi c¸ch lËp tr×nh kh«ng cÊu tróc, kh¸c víi lËp tr×nh cã cÊu tróc b»ng c¸c ng«n ng÷ bËc cao nh− C hay Basic, qua c¸c bµi thùc hµnh. Cuèi cïng ng−êi häc cã thÓ tù m×nh tèi −u ®−îc mL lÖnh ®Ó tiÕt kiÖm bé nhí, ®iÒu nµy lµ cÇn thiÕt khi dung l−îng cña ROM vµ RAM tÝch hîp s½n trªn chip cña c¸c vi ®iÒu khiÓn lµ kh«ng lín.

4.1 C¸c vÝ dô vÒ ®iÒu khiÓn chip më réng I/O 8255 sö dông trªn KIT Nh− ®L t×m hiÓu ë ch−¬ng 2 vÒ cÊu tróc, c¸c chÕ ®é ho¹t ®éng cña chip 8255, trong KIT nµy ta sö dông 8255 lµm chip më réng I/O ho¹t ®éng ë chÕ ®é 0 – chÕ ®é vµo ra c¬ b¶n. Khi 8255 lµm viÖc ë chÕ ®é nµy, c¸c cæng A, B, CL, CU cã thÓ ®−îc lËp tr×nh lµm ®Çu vµo hoÆc ®Çu ra. Nªn nhÊn m¹nh r»ng, ë chÕ ®é 0 th× tÊt c¶ c¸c bit hoÆc lµm ®Çu vµo, hoÆc lµm ®Çu ra mµ kh«ng thÓ ®iÒu khiÓn riªng rÏ tõng bit nh− c¸c cæng P0P3 cña 8051. CÊu tróc tõ ®iÒu khiÓn (CW) ë chÕ ®é nµy cã khu«n d¹ng nh− h×nh 2.15 4.1.1. VÝ dô 1: X¸c ®Þnh tõ ®iÒu khiÓn cña 8255 cho c¸c cÊu h×nh sau: a) TÊt c¶ c¸c cæng A,B vµ C ®Òu lµ c¸c cæng ®Çu ra (ë chÕ ®é 0). b) PA lµm ®Çu vµo, PB - ®Çu ra, PCL - ®Çu vµo vµ PCH - ®Çu ra Gi¶i: Tõ h×nh 2.15 ta x¸c ®Þnh ®−îc a) 10000000B = 80H b) 10010001B = 91H

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 81

suu tam: [email protected]

- 82 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

Nhãm A D7

D6

D5

Nhãm B D4

D3

Cæng C PC7 – PC4 1= Input 0 = Output

Chän mode 00 = Mode 0 01 = Mode 1 1x = Mode 2

D1

Chän mode 0 = Mode 0 1 = Mode 1

Cæng A 1= Input 0 = Output

1 = I/O Mode 0 = BSR Mode

D2

D0

Cæng C PC3– PC0 1= Input 0 = Output

Cæng B 1= Input 0 = Output

H×nh 2.15 Khu«n d¹ng tõ ®iÒu khiÓn cña 8255 (chÕ ®é vµo ra c¬ së) 4.1.2. VÝ dô 2: Gi¶ sö nh− ta cã mét chip 8051 ®−îc nèi víi chip 8255 sao cho ®Þa chØ cña c¸c PORT vµ tõ ®iÒu khiÓn cña 8255 nh− sau: 8004H –PortA;

8005H – Port B;

8006H –PortC;

8007H –CW

a) T×m byte ®iÒu khiÓn ®Ó PA lµ cæng vµo, PB, PC lµ cæng ra b) ViÕt mét ch−¬ng tr×nh ®Ó lÊy d÷ liÖu ë PA vµ göi ®Õn cæng B vµ C Gi¶i: a) Dùa vµo h×nh 2.15 ta cã ®−îc tõ ®iÒu khiÓn CW = 10010000B = 90H b) Ch−¬ng tr×nh: ; ################################################ mov

A, #90H

; PA lµ cæng vµo, PB, PC lµ cæng ra

mov

DPTR, #8007H

; CW

movx @DPTR, A

; XuÊt tõ ®iÒu khiÓn

Again:

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 82

suu tam: [email protected]

- 83 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn mov

DPTR, #8004H

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

; §Þa chØ PA

movx A, @DPTR

; NhËn d÷ liÖu tõ PA

inc

; §Þa chØ cña cæng PB

DPTR

movx @DPTR, A

; §−a d÷ liÖu ra cæng PB

inc

; §Þa chØ cña cæng PC

DPTR

movx @DPTR, A

; §−a d÷ liÖu ra PC

; #################################################

Sau khi ®L hiÓu râ c¸c thao t¸c lµm viÖc víi 8255 ®Ó giao tiÕp víi c¸c thiÕt bÞ ngo¹i vi cña KIT ta cã tiÕn hµnh c¸c bµi thÝ nghiÖm sau.

4.2 Bµi to¸n 1 : §iÒu khiÓn 8 bit ®Çu ra sè §iÒu khiÓn 8 bit ®Çu ra sè lµ mét bµi to¸n ®¬n gi¶n nh»m gióp ng−êi häc lµm quen víi viÖc ®iÒu khiÓn vi m¹ch 8255 ®Ó göi ra cæng mét tÝn hiÖu sè. Bµi to¸n thùc hiÖn viÖc xuÊt ra mét tÝn hiÖu sè 8 bit (1 byte) vµ kÕt qu¶ nµy ®−îc hiÓn thÞ trªn 8 ®Ìn LED nhá t−¬ng øng víi 8 bit ®L ®−îc bè trÝ trªn bé KIT, nÕu 1 bit b»ng 1 (High) th× ®Ìn t−¬ng øng sÏ t¾t vµ ng−îc l¹i.

4.3 Bµi to¸n 2 : §iÒu khiÓn nhËn ®Çu vµo 8 bit sè vµ göi ®Õn 8 bit ®Çu ra Bµi to¸n thùc hiÖn viÖc ®iÒu khiÓn vi m¹ch 8255 qui ®Þnh mét cæng cña nã lµm ®Çu vµo nhËn tÝn hiÖu sè vµ göi tÝn hiÖu ®ã ®Õn mét cæng ra kh¸c.

4.4 Bµi to¸n 3 : §iÒu khiÓn hiÓn thÞ tÜnh ma trËn LED 8x8 §iÒu khiÓn hiÓn thi tÜnh ma trËn LED lµ mét bµi to¸n ®iÒu khiÓn ®¬n gi¶n ma trËn LED hiÓn thÞ c¸c ®iÓm LED cã mµu s¾c kh¸c nhau theo tõng cét xen kÎ nhau, bµi to¸n nµy gióp ng−êi häc hiÓu râ h¬n cÊu t¹o cña ma trËn LED vµ lµm quen víi viÖc ®iÒu khiÓn nã.

4.5 Bµi to¸n 4 : §iÒu khiÓn hiÓn thÞ ®éng ma trËn LED 8x8

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 83

suu tam: [email protected]

- 84 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

§iÒu khiÓn hiÓn thÞ ®éng ma trËn LED lµ mét bµi to¸n phøc t¹p h¬n bµi to¸n hiÓn thÞ tÜnh ë trªn. Néi dung cña bµi to¸n lµ thùc hiÖn viÖc quÐt liªn lôc theo tõng dßng cña ma trËn LED ®Ó hiÓn thÞ c¸c ch÷ sè trong hÖ Hexa tõ 0-9.. ®Õn A-F lªn trªn b¶ng LED.

4.6 Bµi to¸n 5 : §iÒu khiÓn ADC0809 vµ DAC0808 Víi ADC0809: bµi to¸n thùc hiÖn viÖc chuyÓn ®æi tÝn hiÖu Analog ë mét trong 8 kªnh ®Çu vµo thµnh tÝn hiÖu sè 8 bit ë ®Çu ra cña ADC0809. Sau ®ã ®äc tÝn hiÖu sè ®L chuyÓn ®æi nµy hiÓn thÞ lªn LCD. ë phÇn nµy trªn KIT cßn trang bÞ s½n mét c¶m biÕn nhiÖt ®é, bµi to¸n thÝ nghiÖm ®Ó ®o nhiÖt ®é ®−îc thùc hiÖn khi ta bËt nót thø 4 cña DIP SWITCH ®Ó nèi tÝn hiÖu ®Çu ra cña LM35 ®Õn kªnh ®Çu vµo 4 cña ADC0809, nhiÖt ®é phßng còng ®−îc hiÓn thÞ trªn LCD. Víi DAC0808: bµi to¸n thùc hiÖn chuyÓn ®æi tÝn hiÖu sè 8 bit thµnh tÝn hiÖu t−¬ng tù cã d¶i 0 -10V ë ®Çu ra cña DAC0808, tÝn hiÖu nµy cã thÓ ®−a vµo m¸y hiÖn sãng (Oscilloscope) ®Ó xem kÕt qu¶ ®èi víi ch−¬ng tr×nh t¹o sãng (sin) hoÆc cã thÓ ®o b»ng ®ång hå b×nh th−êng nÕu chØ t¹o ra ë ®Çu ra 1 gi¸ trÞ ®iÖn ¸p kh«ng ®æi.

4.7 Bµi to¸n 6 : §iÒu khiÓn ®éng c¬ b−íc vµ ®éng c¬ 1 chiÒu Bµi to¸n thùc hiÖn viÖc ®iÒu khiÓn ®éng c¬ b−íc quay, thay ®æi tèc ®é, ®¶o chiÒu, dõng ®éng c¬. Ch−¬ng tr×nh sö dông 4 ®Çu vµo xung ®Ó lµm c¸c phÝm lµm thay ®æi c¸c tr¹ng th¸i trªn cña ®éng c¬ b−íc. * Th−êng c¸c cuén d©y cña ®éngc¬ b−íc ®−îc x¸c ®Þnh theo mµu cña c¸c d©y, tuy nhiªn ®èi víi mét ®éng c¬ b−íc bÊt kú ta cã thÓ dïng ®ång hå ®Ó x¸c ®Þnh c¸c cuén d©y nh− h×nh vÏ, ë ®©y tr×nh bµy c¸ch x¸c ®Þnh cho c¸c ®éng c¬ cã 5, 6 d©y 1. Dïng ®ång hå ®Ó x¸c ®Þnh ®Çu Common: dïng ®ång hå ®Ó ë thang ®o trë, ®o trë gi÷a c¸c cÆp d©y, ®Çu Common lµ ®Çu cã trë gi÷a nã c¸c ®Çu kh¸c b»ng 1/2 ®iÖn trë cña c¸c ®Çu kh¸c víi nhau.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 84

suu tam: [email protected]

- 85 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

2. X¸c ®Þnh thø tù c¸c cuén d©y b»ng c¸ch cÊp nguån vµo ®Çu Common vµ nèi ®Êt 1 trong 4 d©y cßn l¹i, ®ång thêi nèi ®Êt 1 trong 3 d©y cßn l¹i xem ph¶n øng (chiÒu quay) cña ®éng c¬ vµ ®¸nh dÊu thø tù cho nã nh− trong b¶ng sau:

Nèi mass mét ®Çu, ®¸nh dÊu nã lµ ®Çu 4

Gi÷ nguyªn nã, nèi mass tiÕp lÇn l−ît mét trong 3 d©y cßn l¹i

NÕu ®éng c¬ quay theo chiÒu kim ®ång hå, ®ã lµ cuén 3

NÕu ®éng c¬ quay ng−îc chiÒu kim ®ång hå, ®ã lµ cuén 1

D©y kh«ng cã ph¶n øng g× c¶ lµ cuén 2

Khi biÕt ®−îc thø tù c¸c cuén d©y, ta kÝch xung theo thø tù ®ã ®éng c¬ sÏ ch¹y VÝ dô mét ®o¹n ch−¬ng tr×nh nh− sau, gi¶ sö 4 ®Çu cña ®éng c¬ ®−îc 4 bit P1.0 – P1.3 cña 8051 ®iÒu khiÓn: ; ################################ ORG 0000H MOV R3,#00000011B

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 85

suu tam: [email protected]

- 86 -Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 3 : C¸c bµi tËp thùc hiÖn

MOV A, R3 BACK: MOV P1,A RL A

; Quay thanh ghi A

ACALL DELAY SJMP BACK ; Tèc ®é quay cã thÓ thay dæi b»ng thay ®æi thêi gian Delay DELAY: MOV R1,#50 H1:

MOV R2 ,#255

H2:

DJNZ R2,H2 DJNZ R1,H1 RET END

;###########################

4.8 Bµi to¸n 7 : Giao tiÕp víi m¸y tÝnh b»ng giao thøc RS232 sö dông cæng nèi tiÕp. Ch−¬ng tr×nh DEMO ch¹y trªn PC ®−îc viÕt b»ng Delphi 7, cã sö dông th− viÖn CPort 3.0 hç trî giao tiÕp. C¸c h−íng dÉn sö dông cã thÓ xem trùc tiÕp phÇn trî gióp cña ch−¬ng tr×nh.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 86

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 5 : L¾p r¸p, thö nghiÖm Kit

Ch−¬ng V L¾P R¸P & THö NGHIÖM KIT

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n m«n T§H

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 87

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 5 : L¾p r¸p, thö nghiÖm Kit

Ch−¬ng V L¾P R¸P & THö NGHIÖM KIT 5.1 S¬ ®å bè trÝ thiÕt bÞ C¸c thiÕt bÞ bè trÝ trªn m¹ch in theo tõng khèi râ rµng vµ hîp lÝ, khèi CPU n»m ë vÞ trÝ trung t©m cña bé KIT, khèi hiÓn thÞ LCD n»m ë gãc tr¸i, ngay bªn c¹nh bµn phÝm ®Ó dÔ quan s¸t. C¸c ®Çu vµo/ra sè, t−¬ng tù ®−îc bè trÝ ë phÝa trªn cña m¹ch in ®Ó dÔ ghÐp nèi víi c¸c thiÕt bÞ ngo¹i vi bªn ngoµi. C¸c c«ng t¾c, nót nhÊn ®iÒu khiÓn, m« pháng ®Çu vµo ®−îc bè trÝ ë phÝa d−íi gÇn víi ng−êi sö dông ®Ó dÔ dµng thao t¸c. PhÝa bªn tr¸i cña m¹ch in lµ c¸c ®Çu c¾m nguån vµ c¸c cæng ghÐp nèi víi m¸y tÝnh. Víi môc ®Ých lµ ®µo t¹o nªn c¸c khèi ®−îc t¸ch ra thµnh c¸c BOARD nhá ®−îc bè trÝ xung quanh KIT gåm c¸c khèi nh−: . Khèi lµm viÖc víi LED ®¬n, LED 7 ®o¹n, LED ma trËn . Khèi lµm viÖc víi ®éng c¬ b−íc, ®éng c¬ 1 chiÒu, c¸c ®Çu vµo ra xung, sè . Khèi lµm viÖc víi c¸c bé chuyÓn ®æi ADC, DAC, ®o nhiÖt ®é m«i tr−êng b»ng LM35. C¸c khèi nµy giao tiÕp víi KIT qua 1 c¸p d÷ liÖu dïng cho m¸y tÝnh (lo¹i DIP 40 ch©n) cã chuÈn c¸c ®−êng d÷ liÖu, c¸c ®−êng ®iÒu khiÓn vµ nguån trªn SOCKET nµy cã d¹ng nh− h×nh 5.1 . 8 ch©n (1, 3, 5, 7 9, 11, 13, 15) lµm c¸c ch©n d÷ liÖu, ®−îc nèi dÕn c¸c ch©n d÷ liÖu cña 8255 . 2 ch©n tiÕp theo A0, A1 lµ ch©n chän cæng cña 8255 . C¸c ch©n tõ 31 – 40 c¸c c¸c ch©n nguån +/-5V, +/-12V . Ch©n 25 ®−îc dµnh cho c¸c ch©n chän chip Nhê tæ chøc BUS nµy nªn ng−êi sö dông cã thÓ tù thiÕt kÕ c¸c BOARD më réng cho c¸c thiÕt bÞ ngo¹i vi kh¸c víi môc ®Ých riªng cña m×nh. Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 88

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 5 : L¾p r¸p, thö nghiÖm Kit

Còng víi môc ®Ých t¹o tÝnh linh ho¹t vµ tÝnh cã kh¶ n¨ng më réng cña KIT, trªn KIT cßn chõa ra mét SOCKET trèng ®Ó cã thÓ c¾m thªm 1 module ngo¹i vi kh¸c.

TO BOARD NGOAI VI 3 LED 7 DOAN, LED MATRIX 8X8 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 /RD /WR /CS_8255_7SEG_LED /CS_8255_MATRIX_LED

BUS

C¸c ®−êng chän chip

-12V 12V GND -5V VCC

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39

2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40

-12V 12V GND -5V VCC

BUS SOCKET- 8255

H×nh 5.1. S¬ ®å c¸c ch©n cña BUS chung

Giíi thiÖu c¸c nót Ên vµ c«ng t¾c: C«ng t¾c SELECT ë ngay bªn trªn cña bµn phÝm cã chøc n¨ng cho phÐp ng−êi sö dông lùa chän thùc thi ch−¬ng tr×nh ë bé nhí trong hoÆc bé nhí ngoµi cña chip vi ®iÒu khiÓn. C«ng t¾c nµy bè trÝ ë vÞ trÝ mµ c¸c ®éng t¸c v« t×nh cña ng−êi häc Ýt ch¹m ph¶i, kh«ng g©y gi¸n ®o¹n ch−¬ng tr×nh khi ch¹y ë chÕ ®é debug , nã chØ ®−îc thiÕt ®Æt ë ®Çu c¸c lÇn thÝ nghiÖm. C«ng t¾c ë khèi m¹ch ®iÒu khiÓn ®éng c¬ b−íc vµ déng c¬ 1 chiÒu cña bé KIT cho phÐp ng−êi sö dông lùa chän lo¹i ®éng c¬ b−íc ®Ó ®iÒu khiÓn lµ lo¹i cã ®iÖn ¸p nguån cÊp 12V hoÆc lo¹i cã ®iÖn ¸p nguån cÊp 5V. §©y lµ c«ng t¾c tù duy tr×, Ên xuèng th× nguån lµ 12V, nh¶ ra th× nguån cÊp lµ 5V.

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 89

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 5 : L¾p r¸p, thö nghiÖm Kit

Nót RESET cho phÐp ta RESET l¹i bé kit ë tr¹ng th¸i nh− khi míi bËt nguån, còng ®−îc bè trÝ ë nh÷ng n¬i Ýt khi bÞ v« t×nh ch¹m ph¶i. S¬ ®å bè trÝ c¸c khèi trªn m¹ch in nh− h×nh 4.1 vµ s¬ ®å bè trÝ linh kiÖn cô thÓ ®−îc thÓ hiÖn ë h×nh 4.2.

5.2 L¾p r¸p, thö nghiÖm Sau khi lËp s¬ ®å bè trÝ c¸c khèi, c¸c linh kiÖn cô thÓ trªn m¹ch in, ta tiÕn hµnh ®i d©y, chÕ t¹o m¹ch in vµ tiÕn hµnh l¾p ®Æt c¸c linh kiÖn lªn m¹ch in. Toµn thÓ m¹ch in sau khi ®o l¾p ®Æt linh kiÖn ®−îc thÓ hiÖn nh− ë h×nh 4.3 (¶nh cña bé KIT). S¶n phÈm sau khi ®o thiÕt kÕ vµ l¾p r¸p thµnh c«ng, ta tiÕn hµnh n¹p ch−¬ng tr×nh Monitor ®Ó ®iÒu hµnh toµn bé c¸c ho¹t ®éng cña bé KIT. Sau ®ã ch¹y thö nghiÖm c¸c ch−¬ng tr×nh trªn bé KIT ®Ó kiÓm tra ho¹t ®éng cña bé KIT. C¸c ch−¬ng tr×nh ch¹y thö nghiÖm trªn bé KIT nh− sau: + LËp tr×nh tõ bµn phÝm b»ng mo m¸y ®Ó hiÓn thÞ tr¹ng th¸i b»ng c¸c ®Ìn LED, ®iÒu khiÓn vµo/ra sè - t−¬ng tù, hiÓn thÞ ma trËn LED. + LËp ch−¬ng tr×nh tõ m¸y tÝnh, biªn dÞch thµnh file Hexa vµ n¹p xuèng bé KIT ®Ó cho hiÓn thÞ trªn ma trËn LED c¸c sè ch¹y tõ 0,1,2,... ®Õn ..,E,F víi c¸c mµu kh¸c nhau. + LËp tr×nh ®iÒu khiÓn ®éng c¬ b−íc sö dông c¸c ®Çu vµo xung nh− c¸c phÝm nhÊn ®Ó thay ®æi tr¹ng th¸i ho¹t ®éng cña ®éng c¬ b−íc. Qua kÕt qu¶ ch¹y thö c¸c ch−¬ng tr×nh thö nghiÖm trªn cho thÊy bé KIT ho¹t ®éng chÝnh x¸c ®óng theo ch−¬ng tr×nh ®iÒu khiÓn vµ cã tÝnh æn ®Þnh, linh ho¹t cao.

5.3 ¶nh bé KIT ¶nh bé KIT sau khi ®o l¾p r¸p nh− h×nh 4.3

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 90

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 5 : L¾p r¸p, thö nghiÖm Kit

H×nh 5.3a ¶nh bé KIT

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 91

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 5 : L¾p r¸p, thö nghiÖm Kit

H×nh 5.3b ¶nh bé KIT

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng – Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 92

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

Ch−¬ng VI

phô lôc 6.1 H−íng dÉn sö dông KIT Ng−êi häc ph¶i n¾m v÷ng b¶n ®å bé nhí cña KIT sau: §Þa chØ

ThiÕt bÞ

0000h - 1FFFh 4000h - 7FFFh

EEPROM RAM

8000h - 8003h

8004h - 8007h

8008h - 800Bh

Ghi chó Chøa ch−¬ng tr×nh Monitor Chøa ch−¬ng tr×nh øng dông

8255 (1)

8000h - PortA : §iÒu khiÓn LCD. 8001h - PortB : Data bus cña LCD. 8002h - PortC : NhËn m/ cña bµn phÝm. 8003h - CW : Thanh ghi ®iÒu khiÓn.

8255 (5)

8004h - PortA: §iÒu khiÓn cÊp nguån cho c¸c Anot chung cña LED matrix (c¸c hµng). 8005h - PortB: §iÒu khiÓn ®Ìn mµu xanh cña LED matrix (c¸c cét xanh). 8006h - PortC: §iÒu khiÓn ®Ìn mµu ®á cña LED matrix (c¸c cét ®á). 8007h - CW: Thanh ghi ®iÒu khiÓn.

8255 (2)

8008h - PortA : §−êng Data cña ADC0809. 8009h - PortB : §−êng Data cña DAC0808. 800Ah - PortC : §iÒu khiÓn ADC0809. 800Bh - CW : Thanh ghi ®iÒu khiÓn.

800Ch - 800Fh

8255 (3)

C000h - C003h

8255 (4)

C004h – C007h

8255-EX

800Ch - PortA : §Çu vµo Digital. 800Dh - PortB : §iÒu khiÓn ®éng c¬ b−íc(PB0-PB3) vµ ®éng c¬ mét chiÒu (PB4 - PB5). 800Eh - PortC : 4 ®Çu vµo xung d¹ng nót Ên (PC4PC7), 4 ®Çu vµo cho c¸c thiÕt bÞ ngoµi nh− encoder (PC0 PC3). 800Fh - CW : Thanh ghi ®iÒu khiÓn. C000h - PortA : HiÓn thÞ 8 LED ®¬n. C001h - PortB : HiÓn thÞ 2 LED 7 thanh (tr¸i). C002h - PortC : HiÓn thÞ 2 LED 7 thanh (ph¶i). C003h - CW : Thanh ghi ®iÒu khiÓn. BUS më réng dù tr÷, cã thÓ g¾n thªm 1 module kh¸c

B¶ng 2.1 S¾p xÕp bé nhí vµ c¸ch ph©n ®Þa chØ cho c¸c thiÕt bÞ ngo¹i vi cña KIT

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 93

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

Sau khi ®/ n¾m v÷ng b¶n ®å bé nhí, mét sè l−u ý cÇn ph¶i nhí khi thÝ nghiÖm víi KIT nh− sau: -

NÕu n¹p ch−¬ng tr×nh vµo KIT ®Ó ch¹y ë chÕ ®é "Ch−¬ng tr×nh ng−êi sö dông", tøc ch¹y ®éc lËp víi ch−¬ng tr×nh MONITOR qu¶n lý KIT th× ch−¬ng tr×nh cña ng−êi häc ph¶i b¾t ®Çu ë ®Þa chØ 00H, tøc b¾t ®Çu ch−¬ng tr×nh b»ng lÖnh ORG 0. Sau khi KIT b¸o n¹p hoµn tÊt th× Ên c«ng t¾c MODE SELECT ®Ó ë tr¹ng th¸i hë (nh« lªn), tiÕp ®ã bÊm nót reset ®Ó b¾t ®Çu ch¹y ch−¬ng tr×nh cña m×nh. ë tr¹ng th¸i nµy th× tÊt c¶ c¸c tµi nguyªn phÇn cøng vµ c¸c thiÕt bÞ ngo¹i vi cña KIT ®Òu ®−îc phÐp sö dông mµ kh«ng cã mét giíi h¹n nµo.

-

NÕu n¹p vµo ®Ó ch¹y ë chÕ ®é DEBUG - gì rèi, ch¹y vµ xem kÕt qu¶ c¸c vïng nhí sau mçi lÖnh th×: o Ch−¬ng tr×nh ph¶i b¾t ®Çu ë vÞ trÝ 4000H (vÞ trÝ khëi ®Çu cña bé nhí RAM). Thùc hiÖn b»ng lÖnh ORG 4000H. o C¸c vector ng¾t ph¶i ®−îc céng thªm 4000H. Cô thÓ nh− sau:

§Þa chØ vector ng¾t ë

§Þa chØ vector ng¾t ë

chÕ ®é b×nh th−êng

chÕ ®é DEBUG

RST

0000H

4000H

Ng¾t ngoµi 0

IE0

0003H

4003H

Bé ®Þnh thêi 0

TF0

000BH

400BH

Ng¾t ngoµi 1

IE1

0013H

4013H

Bé ®Þnh thêi 1

TF1

001BH

401BH

Port nèi tiÕp

RI or TI

0023H

4023H

Bé ®Þnh thêi 2

TF2 or EXF2

002BH

402BH

Nguån ng¾t



Reset hÖ thèng

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 94

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

o Ngoµi ra ng−êi häc cßn kh«ng ®−îc sö dông ng¾t ngoµi 1 ®/ ®−îc thiÕt kÕ ®Ó phôc vô chÕ ®é DEBUG. Cßn ®èi víi ng¾t ngoµi 0 nh− ë ch−¬ng 2 ®/ giíi thiÖu, phôc vô giao tiÕp víi bµn phÝm cña KIT. o Vïng nhí RAM néi 32 byte tõ 7FH-5FH kh«ng sö dông, tuy nhiªn 128 byte RAM néi ®−îc ®Þnh ®Þa chØ gi¸n tiÕp cßn l¹i vµ 32 K-Byte RAM ngoµi ®−îc sö dông tho¶i m¸i. C¸c h−íng dÉn cô thÓ b»ng h×nh ¶nh cña KIT sÏ ®−îc tr×nh bµy ë phÇn trî gióp cña ch−¬ng tr×nh ch¹y trªn m«i tr−êng Windows ®i kÌm theo KIT, ch−¬ng tr×nh hç trî biªn dÞch vµ dÞch ng−îc c¸c file ch−¬ng tr×nh d¹ng hîp ng÷, n¹p vµ xãa bé nhí EEPROM cña KIT vµ mét sè bµi vÝ dô cña ch−¬ng tr×nh nh− bµi 7, thÝ nghiÖm vÒ "TruyÒn th«ng nèi tiÕp"... Sau ®©y sÏ lµ c¸c khai b¸o mÉu cña c¸c ch−¬ng tr×nh ch¹y ®−îc trªn KIT còng nh− ch−¬ng tr×nh MONITOR vµ c¸c vÝ dô.

6.2 C¸c khai b¸o vÒ ®Þa chØ c¸c h»ng vµ biÕn sè sö dông trong ch−¬ng tr×nh MONITOR vµ trong c¸c vÝ dô DEMO cña KIT ; ################################################################## ;

CAC KHAI BAO

; ##################################################################

; Khai bao dia chi cua cac 8255 ; 8255-1 LCD_CONTROL

EQU

8000H

; PA: Cac tin hieu dieu khien cua LCD 2408

LCD_DATA

EQU

8001H

; PB: BUS data cua LCD 2408

KEYPAD

EQU

8002H

; D0-D6 lam bus nhan ma phim

CW1

EQU

8003H

; Tu dieu khien CW cua 8255-1

MATRIX_LED_ANOD

EQU

8004H

; Cac hang`, tuc cac anod chung cua led ma tran

MATRIX_LED_G

EQU

8005H

; Cac cot xanh cua LED ma tran

MATRIX_LED_R

EQU

8006H

; Cac cot do cua LED ma tran

CW5

EQU

8007H

; Tu dieu khien CW cua 8255-5

EQU

8008H

; Bus du lieu cua ADC0809

; PA0 = LCD_RS; PA1 = RW; PA2=E1; PA3 = E2

; 8255-5

; 8255-2 ADC_DB

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 95

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

DAC_DB

EQU

8009H

; Bus du lieu cua DAC0808

ADC_CONTROL

EQU

800AH

; Cac tin hieu dieu khien ADC0809

CW2

EQU

800BH

; Tu dieu khien CW cua 8255-2

DIGITAL_INPUT

EQU

800CH

; Dau vao so

DC_STEPPER

EQU

800DH

; Dieu khien dong co buoc (PB0-PB3),

; 8255-3

; dong co 1 chieu (PB4-PB7) PULSE_INPUT

EQU

800EH

; 4 dau vao xung = nut(PC4-PC7), ; 4 tu cac nguon phat xung(PC0-PC3)

CW3

EQU

800FH

; Tu dieu khien CW cua 8255-3

LED_DON

EQU

0C000H ; Dieu khien hien thi 8 LED don

LED_7_DOAN_12

EQU

0C001H ; Dieu khien hien thi 2 LED 7 doan 1, 2 (ben trai')

LED_7_DOAN_34

EQU

0C002H ; Dieu khien hien thi 2 LED 7 doan 3, 4 (ben phai')

CW4

EQU

0C003H ; Tu dieu khien CW cua 8255-4

;8255-4

; Quy uoc cach dat ten hang` cua tu dieu khien nhu sau: CWx voi x la STT cua 8255 ; 011

thu tu cac so la: PA, PB, PC;

0: dau ra,

1: dau vao

CW_011

EQU

10001011B

CW_000

EQU

10000000B

CW_100

EQU

10010000B

CW_101

EQU

10011001B

EEPROM_ADDR

EQU

0000H

; Dia chi bat dau cua EEPROM - 8K - ket thuc o 1FFFH

RAM_ADDR

EQU

4000H

; Dia chi bat dau cua RAM - 32K - ket thuc o 7FFFH

; ROM - RAM

; Dia chi cac dong` cua LCD 2408 DONG1

EQU

0080H

DONG2

EQU

0098H

DONG3

EQU

00B8H

DONG4

EQU

00D8H

; Chan ngat ngoai o che do debug CHAN_NGAT_INT0 EQU

P3.2

; Ma cac phim chuc nang KEY_F1

EQU

16

KEY_F2

EQU

17

KEY_BS

EQU

18

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 96

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

KEY_ENTER

EQU

Ch−¬ng 61 :PhÇn phô lôc

19

; RAM danh cho xy ly cua chuong trinh MONITOR ProgRamAddr

EQU

7FH

E

EQU

ProgRamAddr

; De chon lam viec voi nua man hinh 1 hay 2, tuong ung E =1, 2

KEY

EQU

ProgRamAddr - 1

; Byte dem. cua ban phim, luu gia tri phim nhan ve, cap nhat bang ngat

So_Man_Hinh

EQU

ProgRamAddr - 2

LED7Doan1

EQU

ProgRamAddr - 3

LED7Doan2

EQU

ProgRamAddr - 4

LED7Doan3

EQU

ProgRamAddr - 5

LED7Doan4

EQU

ProgRamAddr - 6

; RAM lam vung dem cho qua trinh nap EEPROM tu PC StartAddrH

EQU

ProgRamAddr - 8; Byte cao cua dia chi can ghi den' cua goi du lieu

StartAddrL

EQU

ProgRamAddr - 9; Byte thap cua dia chi can ghi den' cua goi du lieu

; ################################################################## ;

KET THUC CAC KHAI BAO

; ##################################################################

6.3 Ch−¬ng tr×nh quÐt bµn phÝm Ch−¬ng tr×nh nµy ®−îc n¹p cho 1 chip vi ®iÒu khiÓn lo¹i 20 ch©n cña ATMEL lµ AT89C2051 ; ########################################################## ; Chuong trinh quet ban phim 4x4 ; Su dung P1 de giao tiep voi ban phim ; P1.0 - P1.3 noi voi cac hang lan luot 1 2 3 4 ; P1.4 - P1.7 noi voi cac cot lan luot

1 2 3 4

; ##########################################################

ORG 0000H ; Truoc het ta doc cac hang 1-4, cac phim chuc nang, da duoc noi dat san mov P3, #0FFH call

Delay

mov P3, #00H call

Delay

mov P3, #0FFH

Start:

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 97

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

mov P1, #11111111B

Ch−¬ng 61 :PhÇn phô lôc

; Dat tat ca len 1

mov A, P1 anl A, #00001111B cjne

; Lay 4 bit thap cua P1, noi voi hang

A, #00001111B, Doc_Cot_Chuc_Nang

; Kiem tra de chac rang tat ca cac phim chuc nang duoc tha

sjmp

Doc_Ban_Phim

Doc_Cot_Chuc_Nang: mov

P1, #11111111B

mov

A, P1

anl

A, #00001111B

cjne

A, #00001110B, F2

; Dat tat ca len 1

; Che cac bit cot di

F1:

Wait: mov

A, P1

anl

A, #00001111B

cjne

A, #00001111B, Wait

clr

P3.7

; Doi tha nut

nop nop nop mov

P3,#16

call

Delay

ljmp

Tiep_tuc_quet

cjne

A, #00001101B, BACK_SPACE

; Chong rung ; Tiep tuc quet phim

F2:

Wait1: mov

P1, #11111111B

mov

A, P1

; Dat tat ca len 1

anl

A, #00001111B

cjne

A, #00001111B, Wait1

mov

P3,#17

call

Delay

ljmp

Tiep_tuc_quet

; Doi tha nut

; Chong rung

BACK_SPACE: cjne

A, #00001011B, ENTER

Wait2: mov

P1, #11111111B

mov

A, P1

anl

A, #00000100B

; Dat tat ca len 1

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 98

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

cjne

A, #00000100B, Wait2

mov

P3,#18

call

Delay

ljmp

Tiep_tuc_quet

cjne

A, #00000111B, Start

Ch−¬ng 61 :PhÇn phô lôc

; Doi tha nut

; Chong rung

ENTER:

Wait3: mov

P1, #11111111B

mov

A, P1

anl

A, #00001000B

; Dat tat ca len 1

cjne

A, #00001000B, Wait3 ; Doi tha nut

clr

P3.7

mov

P3,#19

call

Delay

; Chong rung

Tiep_Tuc_Quet: WAIT4: ; Doi phim duoc tha het mov

P1, #11111111B

; Dat tat ca len 1

mov

A, P1

anl

A, #00001111B

cjne

A, #00001111B, Wait4

call

Delay

mov

P3, #0FFH; Tat ngat, khoa tin hieu o ngo ra tin hieu o ngo ra

ljmp

Start

; Tiep tuc quet phim

;;;;;;;;;;;;;;;;;;;;;;;; ;Khong co phim chuc nang nao duoc an, tim phim thuong` Doc_Ban_Phim: mov

P1,#11110000B

mov

A, P1

; Noi dat tat ca cac hang

anl

A, #11110000B

cjne

A, #11110000B, Co_Phim_Duoc_An

; Neu co phim duoc an

jmp

Start

; Neu khong, tiep tuc giam sat

Co_Phim_Duoc_An: MOV

P1,#11111110B

MOV

A, P1

anl

A, #11110000B

cjne

A, #11110000B, ROW1

MOV

P1,#11111101B

MOV

A,P1

; Noi dat hang 1

; Noi dat hang 2

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 99

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

ROW1:

ROW2:

ROW3:

ROW4:

ANL

A,#11110000B

cjne

A,#11110000B, ROW2

MOV

P1,#11111011B

MOV

A,P1

ANL

A,#11110000B

cjne

A,#11110000B, ROW3

MOV

P1,#11110111B

MOV

A,P1

ANL

A,#11110000B

cjne

A,#11110000B, ROW4

MOV

DPTR,#KCODE1

call

FIND

ljmp

Start

MOV

DPTR,#KCODE2

call

FIND

ljmp

Start

MOV

DPTR,#KCODE3

call

FIND

ljmp

Start

MOV

DPTR,#KCODE4

call

FIND

ljmp

Start

Ch−¬ng 61 :PhÇn phô lôc

; Noi dat hang 3

; Noi dat hang 4

; ############################################## ;

THU TUC TIM KIEM TRONG BANG

; ############################################## FIND: rlc

A

; Quay lan luot cac cot len co nho' de ktra

jnc

MATCH

; Neu = 0, dung la cot dang co phim duoc an

inc

DPTR

; Neu = 1, tiep tuc tang con tro DL va quay de tim ra cot chua phim dc an

sjmp

FIND

CLR

A

MOVC

A,@A+DPTR ; Luc nay A se chua cac gia tri tu 0-15

MATCH:

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 100

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

MOV

P3,A

Ch−¬ng 61 :PhÇn phô lôc

; xuat ra ngoai, do A < 16 nen bit D7 bao gio cung = 0,

; ta tan dung de tao ra ngat ngoai cho CPU WAIT5: ; Doi phim duoc tha het mov

P1, #11110000B ; Noi dat tat ca cac hang

mov

A, P1

anl

A, #11110000B

cjne

A, #11110000B, WAIT5

mov

P3, #0FFH

call

Delay

; Tat ngat, khoa tin hieu o ngo ra

ret ; ############################################## ;

KET THUC THU TUC TIM KIEM

; ##############################################

DELAY: TT0:

TT1:

MOV

R2,#180

MOV

R1,#72

DJNZ

R1,TT1

DJNZ

R2,TT1

RET ;Giai ma KCODE1: DB 3, 2, 1, 0 KCODE2: DB 7, 6, 5, 4 KCODE3: DB 11, 10, 9, 8 KCODE4: DB 15, 14, 13, 12

END

6.4 Ch−¬ng tr×nh ®iÒu khiÓn hiÓn thÞ LCD ; ###################################################### ;

THU TUC XUAT LENH RA LCD

; ###################################################### Command_To_LCD: push

DPH

push

DPL

push

02H

mov

R2, A

; Luu A

mov

A,#CW_011

; Dat A ra, B,C dau vao

mov

DPTR, #CW1

movx

@DPTR, A

; Xuat tu dieu khien

; Doc thanh ghi lenh

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 101

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

; PA3 PA2 PA1 PA0 ; E2

E1

RW

RS

mov

A, E

cjne

A, #2, Nua_MH1

mov

A, #00001010B

jmp

Xuat_Ra

Nua_MH1: mov

A, #00000110B

Xuat_Ra: mov

DPTR, #LCD_CONTROL

movx

@DPTR, A

mov

DPTR, #LCD_DATA

; Xuat th dk ra LCD

Ready_CMD: movx

A, @DPTR

; Doc DB vao

jb

ACC.7, Ready_CMD

; Dat lai PA, PB lam cong ra mov

A,#CW_000

; Dat A,B,C dau RA

mov

PTR, #CW1

movx

@DPTR, A

mov

A, R2

mov

DPTR, #LCD_DATA

movx

@DPTR, A

; Xuat ra

; Chot du lieu bang cach dua xung tu H to L o chan E1 mov

DPTR, #LCD_CONTROL

mov

A, E

cjne

A, #2, Nua_MH1_C

mov

A, #00001000B

jmp

Chot

; E2 = 1; E1 = 1, RW = 0; RS = 0

Nua_MH1_C: mov

A, #00000100B

; E2 = 0; E1 = 1, RW = 0; RS = 0

@DPTR, A

; E2 =1; E1 = 0, RW = 0; RS = 0

Chot: movx nop nop

mov

A, #00000000B

movx

@DPTR, A

pop

02H

pop

DPL

; Chot du lieu

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 102

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

pop

Ch−¬ng 61 :PhÇn phô lôc

DPH

ret ; ###################################################### ;

KET THUC THU TUC XUAT LENH RA LCD

; ######################################################

; ###################################################### ;

THU TUC IN KI TU RA LCD

;

INPUT = A (ASCII)

; ###################################################### In_Ki_Tu: push

DPH

push

DPL

push

02H

mov

R2, A

; Luu A

mov

A,#CW_011

; Dat A ra, B,C dau vao

mov

DPTR, #CW1

movx

@DPTR, A

; Xuat tu dieu khien

; Doc thanh ghi lenh ; PA3 PA2 PA1 PA0 ; E2

E1

RW

RS

mov

A, E

cjne

A, #2, Nua_MH1_InKT

mov

A, #00001010B

jmp

Xuat_Ra_InKT

Nua_MH1_InKT: mov

A, #00000110B

Xuat_Ra_InKT: mov

DPTR, #LCD_CONTROL

movx

@DPTR, A

mov

DPTR, #LCD_DATA

; Xuat ra LCD

Ready_Chr: movx

A, @DPTR

jb

ACC.7, Ready_Chr

; Doc DB vao

; Dat lai PA, PB lam cong ra mov

A,#CW_000

; Dat A,B,C dau RA

mov

DPTR, #CW1

movx

@DPTR, A

mov

A, R2 ; Lay lai gia tri luu ban dau, lenh

mov

DPTR, #LCD_DATA

movx

@DPTR, A

; Xuat tu dieu khien

; Xuat ra

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 103

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

; Chot du lieu bang cach dua xung tu H to L o chan E1 mov

DPTR, #LCD_CONTROL

mov

A, E

cjne

A, #2, Nua_MH1_Chot

mov

A, #00001001B

jmp

Chot_InKT

Nua_MH1_Chot: mov

A, #00000101B

Chot_InKT: movx

@DPTR, A ; E2 =0; E1 = 1, RW = 0; RS = 1

nop nop mov

A, #00000001B

movx

@DPTR, A

pop

02H

pop

DPL

pop

DPH

; Chot du lieu

ret ; ###################################################### ;

KET THUC CHUONG TRINH IN KI TU RA LCD

; ###################################################### ; ###################################################### ; ;

THU TUC IN CHUOI RA LCD INPUT = DIA CHI CUA CON TRO DU LIEU DPTR

; ######################################################

Str_To_LCD: push

ACC

Continue_To_Print: clr

A

movc

A,@A+DPTR

jz

Done

call

In_Ki_Tu

inc

DPTR

mov

A, #06h

call

Command_To_LCD

sjmp

Continue_To_Print

;

Dich con tro sang phai

Done: pop

ACC

ret ; ###################################################### ;

KET THUC THU TUC IN CHUOI RA LCD

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 104

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

; ###################################################### ; ###################################################### ;

THU TUC XOA LCD

; ###################################################### CLS: mov

E, #1

mov

A, #01H

call

Command_To_LCD

mov

E, #2

mov

A, #01H

call

Command_To_LCD

mov

E, #1

mov

A, #0EH

call

Command_To_LCD

mov

A, #0CH ; Bat hien thi, tat con tro

call

Command_To_LCD

ret

; ###################################################### ;

KET THUC THU TUC XOA LCD

; ######################################################

; ###################################################### ;

THU TUC IN SO HEXA

; ###################################################### phex: phex8:

; In so hexa 8 bit, input = ACC

push

02

push

acc

swap

a

anl

a, #0FH

add

a, #246

jnc

phex_b

add

a, #7

phex_b: add

a, #58

mov

R2, A

mov

A, #0EH

call

Command_To_LCD

;Luu

mov

A, R2

call

In_Ki_Tu

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 105

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

pop

Ch−¬ng 61 :PhÇn phô lôc

acc

phex1: push

acc

anl

a, #0FH

add

a, #246

jnc

phex_c

add

a, #7

phex_c: add

a, #58

mov

R2, A

mov

A, #0EH

call

Command_To_LCD

mov

A, R2

call

In_Ki_Tu

pop

acc

pop

02

;Luu

ret phex16:

; In so hexa 16 bit, input = DPTR

push

acc

mov

a, dph

acall

phex

mov

a, dpl

acall

phex

pop

acc

ret

; ###################################################### ;

KET THUC THU TUC IN SO HEXA

; ######################################################

6.5 C¸c vÝ dô DEMO ; ###########################################

movx

@DPTR, A

;

cpl

A

; ###########################################

call

Delay_100ms

DEMO1:

; LED DON - 8255-4

mov

R6, A

DPTR, #LED_DON

mov

A, KEY

; Nhap nhay cac LED xen ke

cjne A, #KEY_BSP, TiepDemo1_1 ; Tiep tuc chay cho het vong lap

CAC VI DU DEMO

mov DEMO1_1: mov

R5, #48

mov

R6, #10101010B

jmp thi

Exit_DEMO1 ; Neu co lenh thoat tro ve luon

Again_DM11:

TiepDemo1_1:

mov

djnz

A, R6

R5, Again_DM11

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

; Neu co nut an tro ve

Trang 106

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

; Neu co lenh thoat thi tro ve luon DEMO1_2:

; Chay LED tu trai sang phai

TiepDemo1_3:

; Nghi mot chut

djnz

R5, Again_DM13

mov

A, #00H

Exit_DEMO1:

movx

@DPTR, A

mov

KEY, #0FFH

call

Delay_500ms

call

Restore_SCR

mov

R5, #48

mov

R6, #10000000B

; Tra lai man hinh truoc'

ret ; Tro ve man hinh 4, chon vd DEMO

Again_DM12: mov

A, R6

movx

@DPTR, A

call

Delay_100ms

rr

A

mov

R6, A

mov

A, KEY ; Neu co nut an tro ve

cjne

A, #KEY_BSP, TiepDemo1_2

;

------------------------------------------

DEMO2:

; LED 7 DOAN

mov

Led7Doan1, #0

mov

Led7Doan2, #0

mov

Led7Doan3, #0

mov

Led7Doan4, #0

; Tiep tuc chay cho het vong lap jmp

Exit_DEMO1

; Neu co lenh thoat thi tro ve luon TiepDemo1_2: djnz

DEMO1_3:

R5, Again_DM12

; Chay LED tu phai sang trai ; Nghi mot chut

mov

A, #00H

movx

@DPTR, A

call

Delay_500ms

mov

R5, #48

mov

R6, #10000000B

DEMO2_1: ; Dem len mov

A, #DONG2

call

Command_To_LCD

mov

DPTR, #MSG11

call

Str_To_LCD

mov

A, #DONG3

call

Command_To_LCD

mov

DPTR, #MSG12

call

Str_To_LCD

Again_DM13: mov

A, R6

movx

@DPTR, A

call

Delay_100ms

rl

A

mov

R6, A

mov

A, KEY

; Neu co nut an tro ve cjne

call

Display_Four_7Seg_Led

call

Delay_100ms

mov

A, KEY

cjne

A, #KEY_BSP, Sang_Dem_Xuong

mov

KEY, #0FFH

jmp

Exit_DEMO2

A, #KEY_BSP, TiepDemo1_3

; Tiep tuc chay cho het vong lap mp

Dem_Len:

Exit_DEMO1

Sang_Dem_Xuong: cjne

A, #1, TiepTucDemLen

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 107

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

mov

KEY, #0FFH

jmp

Exit_DEMO2_1

Ch−¬ng 61 :PhÇn phô lôc

mov

DPTR, #MSG13

call

Str_To_LCD

TiepTucDemLen: mov

A, Led7Doan4

mov

A, #DONG3

inc

A

call

Command_To_LCD

mov

Led7Doan4, A

cjne

A, #0AH, Dem_Len

mov

DPTR, #MSG14

add

A, #6

call

Str_To_LCD

anl

A, #00001111B

mov

Led7Doan4, A

mov

A, Led7Doan3

inc

DEMO2_2:

; ---- Dem xuong'

call

Display_Four_7Seg_Led

call

Delay_100ms

A

mov

A, KEY

mov

Led7Doan3, A

cjne

A, #KEY_BSP, Sang_Dem_Len

cjne

A, #0AH, Dem_Len

mov

KEY, #0FFH

add

A, #6

jmp

Exit_DEMO2

anl

A, #00001111B

mov

Led7Doan3, A

cjne

A, #0, TiepTucDemXuong

mov

A, Led7Doan2

mov

KEY, #0FFH

inc

A

jmp

DEMO2_1

mov

Led7Doan2, A

cjne

A, #0AH, Dem_Len

add

A, #6

mov

A, Led7Doan4

anl

A, #00001111B

dec

A

mov

Led7Doan2, A

mov

Led7Doan4, A

cjne

A, #0FFH, DEMO2_2

mov

Led7Doan4, #9

Sang_Dem_Len:

TiepTucDemXuong:

mov

A, Led7Doan1

inc

A

mov

Led7Doan1, A

mov

A, Led7Doan3

cjne

A, #0AH, Dem_Len

dec

A

add

A, #6

mov

Led7Doan3, A

anl

A, #00001111B

cjne

A, #0FFH, DEMO2_2

mov

Led7Doan1, A

mov

Led7Doan3, #9

jmp

Dem_Len mov

A, Led7Doan2

dec

A

; Thoat dem len, chuyen sang dem xuong

mov

Led7Doan2, A

mov

KEY, #0FFH

cjne

A, #0FFH, DEMO2_2

mov

A, #DONG2

mov

Led7Doan2, #9

call

Command_To_LCD

Exit_DEMO2_1:

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 108

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

mov

A, Led7Doan1

dec

A

mov

mov

Led7Doan1, A

mov

A, #0FFH

cjne

A, #0FFH, DEMO2_2

movx

@DPTR, A

mov

Led7Doan1, #9 mov

A, #11001100B

mov

DPTR, #MATRIX_LED_R

mov

R7, #32

jmp

DEMO2_2

Exit_DEMO2:

DEMO3_3: DPTR, #MATRIX_LED_ANOD

Again_DM3_3:

; Chay LED

movx

@DPTR, A

rl

A

; -------------------------------------------

call

Delay_100ms

DEMO3:

djnz

R7, Again_DM3_3

ret

; LED MA TRAN

DEMO3_1: mov

DPTR, #MATRIX_LED_ANOD

DEMO3_4:

; Thi nghiem voi cac cot

mov

A, #0FFH

mov

A, #0FFH

movx

@DPTR, A

mov

DPTR, #MATRIX_LED_R

movx

@DPTR, A

mov

A, #11001100B

mov

DPTR, #MATRIX_LED_R

mov

A, #0FFH

mov

R7, #32

mov

DPTR, #MATRIX_LED_G

movx

@DPTR, A

Again_DM3_1: movx

; Nhay LED cua cac cot, xen ke

@DPTR, A

cpl

A

mov

DPTR, #MATRIX_LED_ANOD

call

Delay_100ms

mov

A, #01H

djnz

R7, Again_DM3_1

movx

@DPTR, A

mov

R7, #64

DEMO3_2: mov

DPTR, #MATRIX_LED_ANOD

mov

A, #0FFH

movx

@DPTR, A

movx

@DPTR, A

rl

A

call

Delay_100ms R7, Again_DM3_4

Again_DM3_4:

mov

A, #11001100B

djnz

mov

DPTR, #MATRIX_LED_R

ret

mov

R7, #32

Again_DM3_2:

; Chay LED

movx

@DPTR, A

rr

A

call

Delay_100ms

djnz

R7, Again_DM3_2

DEMO4:

; BAN PHIM, LCD

ret

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

; Chay LED

Trang 109

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

DEMO5:

Ch−¬ng 61 :PhÇn phô lôc

;ADC, DAC

; 8255-2 ; ADC_DB

EQU

8008H

; Bus du lieu cua ADC0809

; DAC_DB

EQU

8009H

; Bus du lieu cua DAC0808

; ADC_CONTROL

EQU

800AH

; CW2

; Cac tin hieu dieu khien ADC0809

EQU

800BH

; Tu dieu khien CW cua 8255-2

; Cac bit cua ADC_CONTROL nhu sau ;

7 6 |

5

| 4

|

3

|

2

|

1

|

0

|

; ----|-----|----|--------|------|------|------| ; X X | EOC | OE | ALE+SC | ADDC | ADDB | ADDA | ADC: mov

DPTR, #ADC_CONTROL

mov

A, #00110000B ; Cho phep dau ra OE

movx

@DPTR, A

mov

DPTR, #ADC_DB ; Doc du lieu tra ve

movx

A, @DPTR

mov

Nhiet_Do, A

nop

mov

E, #2

nop

mov

A, #DONG1

nop

call

Command_To_LCD

mov

DPTR, #MSG34

call

Str_To_LCD

mov

A, #DONG2

call

Command_To_LCD

mov

DPTR, #MSG35

call

Str_To_LCD

mov

DPTR, #CW2

mov

A, #CW_100

movx

@DPTR, A

; A vao, B, C ra

mov DPTR, #ADC_CONTROL kenh analog 0 mov

A, #00001000B

movx

@DPTR, A

; Chon

mov A, #00100000B dia chi va bat dau chuyen doi movx

; Chot

@DPTR, A

mov DPTR, #CW2 ADC_CONTROL lam dau vao mov

A, #CW_101

movx

@DPTR, A

= 1

; Chuyen PC ; A, C vao, B ra

Wait_EOC: qua trinh convert ket thuc

; Cho` cho

mov

DPTR, #ADC_CONTROL

movx

A, @DPTR

mov

A, #DONG3

anl

A, #00100000B

call

Command_To_LCD

cjne

A, #00100000B, Wait_EOC mov

DPTR, #MSG33

call

Str_To_LCD

mov

A, Nhiet_Do

clr

CY

; Ket thuc qua trinh chuyen doi

mov

DPTR, #CW2

; Dat lai PC lam dau

mov

A, #CW_100

; A vao, B, C ra

movx

@DPTR, A

ra

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 110

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

subb

A, #100

mov

A, #'C'

jc

Nhiet_Do_Nho_Hon_100

call

In_Ki_Tu

Nhiet_Do_Lon_Hon_100:

mov

A, #' '

mov

A, Nhiet_Do

call

In_Ki_Tu

dec

A

call

Delay_500ms

rl

A

call

Delay_500ms

; Tru 1

rl A ; Nhan 4 de nhay cho dung vi tri chuoi can tra trong bang mov

R6, #4

mov

R0, A

mov

DPTR, #LON_HON_100_DO

In_Nhiet_Do_1:

mov

A, KEY

cjne

A, #KEY_ENTER, KT_Thoat_ADC

mov

KEY, #0FFH

jmp

DAC

KT_Thoat_ADC:

movc

A, @A + DPTR

call

In_Ki_Tu

inc

R0

mov

A, R0

djnz

R6, In_Nhiet_Do_1

jmp

In_Do_C

cjne

A, #KEY_BSP, Tiep_Tuc_ADC

mov

KEY, #0FFH

call

Restore_SCR

ret

Tiep_Tuc_ADC: jmp

ADC

Nhiet_Do_Nho_Hon_100: mov

A, Nhiet_Do

dec

A

; Tru 1

rl A ; Nhan 2 de nhay cho dung vi tri chuoi can tra trong bang mov

R6, #2

mov

R0, A

mov

DPTR, #NHO_HON_100_DO

; ---------------------------------------------DAC: mov

E, #2

mov

A, #01

call

Command_To_LCD

mov

A, #DONG2

call

Command_To_LCD

In_Nhiet_Do_2: movc

A, @A + DPTR

call

In_Ki_Tu

inc

R0

mov

A, R0

djnz

R6, In_Nhiet_Do_2

mov DAC' call

DPTR, #MSG38

; 'Thi nghiem voi

Str_To_LCD

In_Do_C: mov

A, #' '

call

In_Ki_Tu

mov

A, #'d'

call

In_Ki_Tu

mov

A, #'o'

call

In_Ki_Tu

mov

A, #' '

call

In_Ki_Tu

; DAC_DB EQU ; Bus du lieu cua DAC0808 mov

A, #DONG3

call

Command_To_LCD

mov

DPTR, #MSG36

call

Str_To_LCD

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

8009H

Trang 111

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

mov

Ap_Ra, #10

Ch−¬ng 61 :PhÇn phô lôc

mov

KEY, #0FFH

Tang_Ap_DAC: mov

A, Ap_Ra

Dao_Gia_Tri:

Exit_DEMO5: call

Restore_SCR

rrc

A

mov

07H, C

DEMO6:

rrc

A

;DIGITAL_INPUT EQU 800CH ; Dau vao so

mov

06H, C

;DC_STEPPER

rrc

A

mov

05H, C

rrc

A

mov

04H, C

rrc

A

mov

03H, C

rrc

A

mov

02H, C

mov

DPTR, #DC_STEPPER

rrc

A

mov

R4, #00110011B

mov

01H, C

mov

R7, #255

rrc

A

mov

R6, #5

mov

00H, C

mov

Nut1, #0

mov

Nut2, #0

mov

A, 20H

mov

Nut3, #0

mov

Nut4, #0

mov

DPTR, #DAC_DB

movx

@DPTR, A

Quay_Thuan:

mov

A, Ap_Ra

mov

A, R4

add

A, #2

movx

@DPTR, A

mov

Ap_Ra, A

rl

A

call

Delay_500ms

mov

R4, A

call

Delay_500ms

call

Delay_7ms

call

Delay_500ms

call

Delay_7ms

call

Delay_500ms

call

Delay_7ms

call

Delay_500ms

mov

A, KEY

call

Delay_500ms

cjne

A, #KEY_BSP, Case_Enter_QT

mov

KEY, #0FFH

mov

A, Ap_Ra

call

Restore_SCR

cjne

A, #254, KT_Thoat_Tang_Ap_DAC

ret

jmp

Exit_DEMO5

; MSG29:

KT_Thoat_Tang_Ap_DAC:

; MSG30: input',0

mov

A, KEY

cjne

A, #KEY_BSP, Tang_Ap_DAC

ret ; STEPPER, DC MOTOR

EQU 800DH ; Dieu khien dong co

buoc (PB0-PB3), dong co 1 chieu(PB4-PB7 ; PULSE_INPUT EQU 800EH ; 4 dau vao xung = nut(PC4-PC7), 4 tu cac nguon phat xung(PC0-PC3) ; CW3 EQU 8255-3

800FH ; Tu dieu khien CW cua

db 'ENTER=Test digital

Case_Enter_QT: mov

A, KEY

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

db 'ENTER=Test pulse input', 0

Trang 112

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

cjne

A, #KEY_ENTER, Du_So_Buoc1

mov

A, #DONG1

mov

KEY, #0FFH

call

Command_To_LCD

mov

DPTR, #MSG30

call

Str_To_LCD

mov

DPTR, #DC_STEPPER

;Hien thi thong bao bam enter de quay nguoc mov

E, #2

mov

A, #DONG1

call

Command_To_LCD

mov

DPTR, #MSG29

call

Str_To_LCD

mov

R7, #255

mov

R6, #5

mov

R4, #00110011B

mov

DPTR, #DC_STEPPER

jmp

Quay_Nguoc

mov

A, #0

movx

@DPTR, A

jmp

Pulse_Digital_Input_Test

Du_So_Buoc2: djnz

R7, Quay_Nguoc

mov

R7, #255

djnz

R6, Quay_Nguoc

Pulse_Digital_Input_Test: Du_So_Buoc1: djnz

R7, Quay_Thuan

mov

R7, #255

djnz

R6, Quay_Thuan

Quay_Nguoc: mov

A, R4

movx

@DPTR, A

rr

A

mov

R4, A

call

Delay_7ms

call

Delay_7ms

call

Delay_7ms

mov

A, KEY

cjne

A, #KEY_BSP, Case_Enter_QN

mov

KEY, #0FFH

call

Restore_SCR

ret

db 'Digital input value:

mov

E, #2

mov

A, #DONG2

call

Command_To_LCD

mov

DPTR, #MSG31

call

Str_To_LCD

mov

A, #DONG3

call

Command_To_LCD

mov

DPTR, #MSG32

call

Str_To_LCD

; DIGITAL_INPUT Dau vao so

EQU

800CH

',0

;

; DC_STEPPER EQU 800DH ; Dieu khien dong co buoc (PB0-PB3), dong co 1 chieu(PB4-PB7) ; PULSE_INPUT EQU 800EH ; 4 dau vao xung = nut(PC4-PC7), 4 tu cac nguon phat xung(PC0-PC3)

Case_Enter_QN: mov

A, KEY

cjne

A, #KEY_ENTER, Du_So_Buoc2

mov

KEY, #0FFH

;Hien thi thong bao bam enter de quay TEST pulse input mov

; MSG32:

; CW3 EQU ; Tu dieu khien CW cua 8255-3

800FH

Quet_phim: mov

DPTR, #PULSE_INPUT

movx

A, @DPTR

E, #2

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 113

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

cjne

jmp

Ch−¬ng 61 :PhÇn phô lôc

A, #0FFH, Phim1

Cap_nhat_gia_tri

Phim1: movx

A, @DPTR

anl A, #11110000B thu 1 dc an cjne

; Neu phim

mov

DPTR, #PULSE_INPUT

movx

A, @DPTR

A, #11110000B

cjne

A, #11110000B, Cho_Phim3_tha

call

Delay_7ms

call

Delay_7ms

call

Delay_7ms

inc Nut3 ; Duoc tha roi thi tang Nut1 - chua tong so lan bam len Cap_nhat_gia_tri

Phim4: movx

A, #11110000B A, #11110000B, Cho_Phim1_tha

call

Delay_7ms

call

Delay_7ms

call

Delay_7ms

cjne

; Neu phim

A, #11100000B, Cap_nhat_gia_tri

Cho_Phim4_tha:

inc Nut1 ; Duoc tha roi thi tang Nut1 - chua tong so lan bam len Cap_nhat_gia_tri

Phim2:

movx

A, @DPTR

anl

A, #11110000B

cjne

A, #11110000B, Cho_Phim4_tha

call

Delay_7ms

call

Delay_7ms

call

Delay_7ms

inc Nut4 ; Duoc tha roi thi tang Nut1 - chua tong so lan bam len

A, @DPTR

anl A, #11110000B thu 2 duoc an

A, @DPTR

anl A, #11110000B thu 4 duoc an

cjne

cjne

anl

jmp

anl

movx

A, @DPTR

A, #01110000B, Phim2

Cho_Phim1_tha:

jmp

movx

; Neu phim Cap_nhat_gia_tri:

A, #10110000B, Phim3

Cap_nhat_gia_tri_digital_input:

Cho_Phim2_tha:

mov

A, #DONG3 + 28

call

Command_To_LCD

movx

A, @DPTR

anl

A, #11110000B

cjne

A, #11110000B, Cho_Phim2_tha

mov

DPTR, #DIGITAL_INPUT

call

Delay_7ms

movx

A, @DPTR

call

Delay_7ms

call

Delay_7ms

call phex8 digital input

; in ra gia tri cua

inc Nut2 ; Duoc tha roi thi tang Nut1 - chua tong so lan bam len jmp

Cap_nhat_gia_tri

;

MSG31: db 'B1:

|B2:

|B3:

|B4:

',0

Cap_nhat_so_lan_bam_cac_nut: Phim3: movx

A, @DPTR

anl A, #11110000B thu 3 duoc an cjne

A, #11010000B, Phim4

mov

A, #DONG2 + 3

call

Command_To_LCD

mov

A, Nut1

call

phex8

; Neu phim

Cho_Phim3_tha:

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 114

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

mov

A, #DONG2 + 9

; Select receive mode, bam nut 1

call

Command_To_LCD

mov

DPTR, #MSG25

mov

A, Nut2

call

Str_TO_LCD

call

phex8

mov

A, #0CH

call

Command_To_LCD

; Giau con tro

mov

A, #DONG2 + 15

call

Command_To_LCD

mov

A, KEY

mov

A, Nut3

cjne

A, #0, Cho_Phim_1_DM7

call

phex8

mov

KEY, #0FFH

jmp

Receive_Mode

Cho_Phim_0_DM7:

mov

A, #DONG2 + 21

call

Command_To_LCD

mov

A, Nut4

mov

A, KEY

call

phex8

cjne

A, #1, Cho_Phim_BSP_DM7

mov

KEY, #0FFH

mov

A, KEY

jmp

Send_Mode

cjne

A, #KEY_BSP, Tiep_tuc

mov

KEY, #0FFH

call

Restore_SCR

Cho_Phim_1_DM7:

Cho_Phim_BSP_DM7:

ret

Tiep_tuc: jmp

Quet_Phim

call

A, KEY

cjne

A, #KEY_BSP, Cho_Phim_0_DM7

mov

KEY, #0FFH

call

Enable_SERIAL_INT

ret

ret DEMO7:

mov

Receive_Mode: ; RS232

mov

A, #DONG3

Disable_SERIAL_INT

call

Command_To_LCD

mov

DPTR, #MSG26

call

Str_To_LCD

; Lam viec voi nua man hinh 2 mov

E, #2

mov

A, #01

call

Command_To_LCD

; Xoa LCD

mov

A, #DONG4

call

Command_To_LCD

mov

A, #0FH

; Select receive mode, bam nut 0

call

Command_To_LCD

mov

DPTR, #MSG24

clr

RI

call

Str_TO_LCD

mov

R7, #23

mov

A, #DONG1

call

Command_TO_LCD

; Nhap nhay con tro

Doi_Nhan_Du_Lieu: mov

A, #DONG2

mov

A, KEY

call

Command_TO_LCD

cjne

A, #KEY_BSP, Co_Du_Lieu_Den

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 115

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

mov

KEY, #0FFH

jmp

DEMO7

Co_Du_Lieu_Den:

Ch−¬ng 61 :PhÇn phô lôc

call

Delay_500ms

call

Delay_500ms

call

Delay_500ms

jnb

RI, Doi_Nhan_Du_Lieu

call

Delay_500ms

mov

A, SBUF

mov

A, KEY

call

In_Ki_Tu

cjne

A, #KEY_BSP, Continue_Transfer

mov

KEY, #0FFH

jmp

DEMO7

djnz

R7, Chua_Het_Hang

mov

R7, #24

mov

A, #DONG4 ; Tro ve dau dong

call

Command_To_LCD

Chua_Het_Hang: clr

RI

jmp

Doi_Nhan_Du_Lieu

; -----------------------------------Send_Mode: mov

A, #DONG3

call

Command_To_LCD

mov

DPTR, #MSG27

call

Str_To_LCD

Continue_Transfer: mov

DPTR, #MSG22

call

Send_String

mov

A, #13

call

Send_Char

mov

A, #10

call

Send_Char

mov

DPTR, #MSG23

call

Send_String

mov

A, #13

call

Send_Char

mov

A, #10

call

Send_Char

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 116

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

6.5 S¬ ®å m¹ch in cña c¸c board

S¬ ®å m¹ch in cña BOARD CPU - mÆt trªn

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 117

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

S¬ ®å m¹ch in cña BOARD CPU - mÆt d−íi

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 118

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

S¬ ®å m¹ch in cña BOARD ADC - mÆt trªn

S¬ ®å m¹ch in cña BOARD xung sè, ®éng c¬ b−íc- mÆt d−íi

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 119

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

S¬ ®å m¹ch in cña BOARD LED ®¬n, LED 7 ®o¹n vµ LED ma trËn (mÆt trªn)

Ch−¬ng 61 :PhÇn phô lôc

(mÆt d−íi)

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 120

suu tam: [email protected]

Gi¸o tr×nh m«n Kü thuËt Vi §iÒu KhiÓn

Ch−¬ng 61 :PhÇn phô lôc

Tµi liÖu tham kh¶o 1.

CÊu tróc vµ lËp tr×nh hä vi ®iÒu khiÓn 8051 – NguyÔn T¨ng C−êng – Nhµ xuÊt b¶n khoa häc kü thuËt – 2004

2.

Hä vi ®iÒu khiÓn 8051 – Tèng V¨n On, Hoµng §øc H¶i – Nhµ xuÊt b¶n Lao ®éng –X/ héi – 2001

3.

C¸c tµi liÖu tham kh¶o kh¸c d−íi d¹ng html vµ d¹ng pdf ®i kÌm theo CD ë th− môc “Tai lieu tham khao”

Biªn so¹n : L©m t¨ng §øc – Lª TiÕn Dòng –Bé m«n T§H www.pdfcoke.com/bao_trinh

Trang 121

Related Documents

91-vi Dieu Khien
May 2020 12
Vi Dieu Khien Co Ban
October 2019 12
Ky Thuat Vi Sinh Vat
June 2020 5
Ky Thuat Do 1
November 2019 12
01_cac Bo Vi Dieu Khien 8051
November 2019 20