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

pdf 121 trang phuongnguyen 4830
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình môn Kỹ thuật Vi điều khiển", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_mon_ky_thuat_vi_dieu_khien.pdf

Nội dung text: Giáo trình môn Kỹ thuật Vi điều khiển

  1. Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Ch−¬ngICh−¬ngI TængquanvÒVi®iÒukhiÓnTængquanvÒVi®iÒukhiÓn Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng –Bém«nT§H Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 1
  2. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Ch−¬ngICh−¬ngI TængquanvÒTængquanvÒVi®iÒukhiÓnVi®iÒukhiÓnVi®iÒukhiÓn 1.1GiíithiÖuvÒc¸chävixölÝvc¸chävi®iÒukhiÓnth«ngdông 1.1.1LÞchsöph¸ttriÓncñabévixölÝvbévi®iÒukhiÓn Sùra®êivph¸ttriÓnnhanhchãngcñaküthuËtvi®iÖntöm®Æctr−nglkü thuËtvixölÝ®t¹oramétb−ícngoÆtquanträngtrongsùph¸ttriÓncñakhoahäc tÝnhto¸n,®iÒukhiÓnvxölÝth«ngtin.KüthuËtvixölÝ®ãngmétvaitrßrÊtquan trängtrongtÊtc¶c¸clÜnhvùccñacuécsèngvkhoahäcküthuËt,®ÆcbiÖtllÜnh vùcTinhäcvTù®énghãa. N¨m1971,hngIntel®chora®êibévixölÝ(microprocessor)®Çutiªntrªn thÕgiíitªngäilIntel4004/4bit,nh»m®¸pøngnhucÇucÊpthiÕtcñamétc«ngty kinhdoanhlhngtruyÒnth«ngBUSICOM.Intel4004lkÕtqu¶cñamétýt−ëng quanträngtrongküthuËtvixölÝsè.§ãlmétkÕtcÊulogicmcãthÓthay®æi®−îc chøcn¨ngcñanãb»ngch−¬ngtr×nhngoichøkh«ngph¸ttriÓntheoh−íngt¹ora métcÊutróccøngchØthùchiÖnmétsèchøcn¨ngnhÊt®Þnhnh−tr−íc®©y. Sau®ã,c¸cbévixölÝmíiliªntôc®−îc®−arathÞtr−êngvngycng®−îc ph¸ttriÓn,honthiÖnh¬ntrongc¸cthÕhÖsau: Vo n¨m 1972, hng Intel ®−a ra bé vi xö lÝ 8bit ®Çu tiªn víi tªn Intel 8008/8bit. Tõ1974®Õn1975,IntelchÕt¹oc¸cbévixölÝ8bit8080v8085A. Còngvokho¶ngthêigianny,métlo¹tc¸chngkh¸ctrªnthÕgiíicòng® chora®êic¸cbévixölÝt−¬ngtùnh−:6800cñaMotorolavíi5000tranzitor, Signetics6520,1801cñaRCA,kÕ®Õnl6502cñahngMOSTechnologyvZ80 cñahngZilog. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 2 www.scribd.com/bao_trinh
  3. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Von¨m1976IntelgiíithiÖu bévi®iÒukhiÓn (microcontroller)8748,métchip t−¬ngtùnh−c¸c bévixölÝ vlchip®Çutiªntronghävi®iÒukhiÓnMCS48.8748 lmétvim¹chchøatrªn17000transistor,baogåmmétCPU,1KbyteEPROM,64 byteRAM,27ch©nxuÊtnhËpvmétbé®Þnhthêi8bit.ICnyvc¸cICkh¸ctiÕp theo cña hä MCS48 ® nhanh chãng trë thnh chuÈn c«ng nghiÖp trong c¸c øng dôngh−íng®iÒukhiÓn(controlorientedapplication). N¨m1978xu©thiÖnIntel8086llo¹ibéxixölý16bitvíi29.000tranzitor, Motorola68000tÝchhîp70.000tranzitor,APX432chøa120.000tranzitor.Bévixö lý cña Hewlet Pakard cã kho¶ng 450.000 tranzitor. Tõ n¨m 1974 ®Õn 1984 sè tranzitortÝchhîptrongmétchipt¨ngkho¶ng100lÇn. N¨m1983,Intel®−arabévixölý80286dungtrongc¸cm¸yvitinhhäAT (AdvancedTechnology).80286södôngI/O16bit,24®−êng®ÞachØvkh«nggian nhí®ÞachØthùc16MB.N¨m1987,Intel®−arabévixölý8038632bit.N¨m1989 xuÊthiÖnxuÊthiÖnbévixölýIntel80486lc¶ItiÕncñaIntel80386víibénhíÈn vm¹chtÝnhphÐpto¸n®¹isèdÊuphÈ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 an zit or t ích hôïp Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 3 www.scribd.com/bao_trinh
  4. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn H×nh1.1 SètranzitortÝchhîptrongmétchipcñabévixölýIntel8086 §éphøct¹p,sùgännhÑvÒkÝchth−ícvkh¶n¨ngcñac¸cbé vi®iÒukhiÓn ®−îct¨ngthªmmétbËcquanträngvon¨m1980khiIntelc«ngbèchip8051,bévi ®iÒukhiÓn®Çutiªncñahävi®iÒukhiÓnMCS51.Sovíi8048,chip8051chøatrªn 60.000 transistorbaogåm4KbyteROM,128 byte RAM,32®−êng xuÊtnhËp,1 portnèitiÕpv2bé®Þnhthêi16bit–métsèl−îngm¹ch®¸ngchóýtrongmétIC ®¬n. Tõc¸cbé vixölý ban®ÇuchØlc¸cbéxölýtrungt©mtrongméthÖthèng, kh«ngthÓho¹t®éngnÕuthiÕuc¸cbéphËnnh−RAM,ROM,bom¹chchñ c¸c hng®ph¸ttriÓnc¸cbévixölýnylªnthnhc¸cbévi®iÒukhiÓn®Óphôcvô c¸cmôc®ÝchriªngbiÖt,kh¸cnhautrongc«ngnghiÖp.Métbévi®iÒukhiÓnl méthÖvixölÝthËtsù®−îctæchøctrongmétchip(trongmétváIC)baogåm mét bé vi xö lÝ (microprocessor), bé nhí ch−¬ng tr×nh (ROM), bé nhí d÷ liÖu (RAM),tuykh«ngb»ngdungl−îngRAMëc¸cm¸yvitÝnhnh−ng®©ykh«ng ph¶ilméth¹nchÕv×c¸cbévi®iÒukhiÓn®−îcthiÕtkÕchométmôc®Ýchhon tonkh¸c,ngoiratrªnchipcßncãbéxölýsèhäclogic(ALU)cïngvíic¸c thanhghichøcn¨ng,c¸ccængvo/ra,c¬chÕ®iÒukhiÓnng¾t,truyÒntinnèitiÕp, c¸cbé®Þnhthêi HiÖnnay,c¸cbévi®iÒukhiÓn®−îcsödôngrÊtréngriv ngy cng ®−îc chuÈn hãa ®Ó cã thÓ sö dông réng ri trong c¸c ngnh c«ng nghiÖp,cãmÆttrongnhiÒum¸ymãc,trongc¸chngtiªudïng. 1.1.2¦uvkhuyÕt®iÓmcñac¸cbévi®iÒukhiÓn C¸cc«ngviÖc®−îcthùchiÖnbëic¸cbévi®iÒukhiÓnth×kh«ngmíi.§iÒu míilc¸cthiÕtkÕhiÖnthùcvíiÝtthnhphÇnh¬nsovíic¸cthiÕtkÕtr−íc®ã. C¸cthiÕtkÕtr−íc®ã®ßiháiph¶ivichôchoÆcvitr¨mIC®ÓhiÖnthùcnaychØ cÇnmétÝtthnhphÇntrong®ãbaogåmbévi®iÒukhiÓn.SèthnhphÇn®−îc gi¶mbít,hiÖuqu¶trùctiÕpcñatÝnhkh¶lËptr×nhcñac¸cbévi®iÒukhiÓnv®é Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 4 www.scribd.com/bao_trinh
  5. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn tÝchhîpcaotrongc«ngnghÖchÕt¹ovim¹ch,th−êngchuyÓnthnhthêigianph¸t triÓnng¾nh¬n,gi¸thnhkhis¶nxuÊtthÊph¬n,c«ngsuÊttiªuthôthÊph¬nv®é tincËycaoh¬n. VÊn®Ò뮩yltèc®é.C¸cgi¶iph¸pdùatrªnbévi®iÒukhiÓnkh«ngbaogiê nhanhb»nggi¶iph¸pdùatrªnc¸cthnhphÇnrêir¹c.Nh÷ngt×nhhuèng®ßiháiph¶i ®¸pøngthËtnhanh( cìnsec )®èivíic¸csùkiÖn(th−êngchiÕmthiÓusètrongc¸c øngdông)sÏ®−îcqu¶nlýtåikhidùavoc¸cbévi®iÒukhiÓn. Tuy nhiªn trong vi øng dông, ®Æc biÖt l c¸c øng dông liªn quan ®Õn con ng−êi,c¸ckho¶ngthêigiantrÔtÝnhb»ngnsec,usechoÆcthËmchÝmseclkh«ng quanträng.ViÖcgi¶mbítc¸cthnhphÇnlmét®iÒulîinh−®®ÒcËp,c¸cthaot¸c trongch−¬ngtr×nh®iÒukhiÓnlmchothiÕtkÕcãthÓthay®æib»ngc¸chthay®æi phÇnmÒm.§iÒunycã¶nhh−ëngtèithiÓu®Õnchukús¶nxuÊt.Do®ãc¸cbévi ®iÒukhiÓncãthÓ®−îcøngdôngréngritrongc¸cøngdôngphôcvôconng−êi. §ÓcãthÓhiÓurâh¬nvÒc¸cbévi®iÒukhiÓn,chóngtasÏt×mhiÓuvÒmétsè c¸chävi®iÒukhiÓncñamétsèhng®iÖntö®iÓnh×nh®ang®−îcsödôngréng ritrongkhoahäcküthuËtv®êisèng. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 5 www.scribd.com/bao_trinh
  6. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn 1.1.3GiíithiÖuvÒhävi®iÒukhiÓnMCS51 1.1.3.1 Tãmt¾tphÇncøng Hävi®iÒukhiÓnMCS51®−îchngIntelchora®êivon¨m1980víibévi ®iÒukhiÓn®Çutiªncñanãlchip 8051. CÊutrócc¬b¶ncñachipvi®iÒukhiÓn8051®−îcbiÓudiÔnnh− h×nh1.2. H×nh1. 2S¬®åkhèicñachip8051 31 39 EA/VP P0.0 38 19 P0.1 37 X1 P0.2 36 H×nh1.3chotas¬®åch©ncñachip8051.Nh−ta P0.3 35 18 P0.4 34 X2 P0.5 33 thÊy, 32 trong sè 40 ch©n cña 8051 cã t¸c dông P0.6 32 9 P0.7 RESET 21 xuÊt/nhËp,h×nh thnh 4 port8bit. Víi c¸c thiÕt kÕ P2.0 22 12 P2.1 23 13 INT0 P2.2 24 yªu cÇu mét møc tèi thiÓu bé nhí ngoi hoÆc c¸c INT1 P2.3 14 25 15 T0 P2.4 26 T1 P2.5 thnhphÇnbªnngoikh¸c,tacãthÓsödôngc¸cport 27 1 P2.6 28 2 P1.0 P2.7 nylmnhiÖmvôxuÊt/nhËp,8®−êngchomçiport 3 P1.1 17 4 P1.2 RD 16 5 P1.3 WR 29 cãthÓ®−îcxölÝnh−lmét®¬nvÞgiaotiÕpvíic¸c 6 P1.4 PSEN 30 7 P1.5 ALE/P 11 8 P1.6 TXD 10 thiÕt bÞ song song nh− m¸y in, bé biÕn ®æi P1.7 RXD 8051 H×nh1. 3S¬®åch©ncña8051 Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 6 www.scribd.com/bao_trinh
  7. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn D/A,.v.v hoÆcmçi®−êngcãthÓho¹t®éng®éclËpgiaotiÕpvíimétthiÕtbÞ®¬nbit nh−chuyÓnm¹ch,LED,tranzistor,cuénd©y,®éngc¬ 1. Port0 Port0cã2t¸cdông.Trongc¸cthiÕtkÕøngdôngtèithiÓu,kh«ngcãgiaotiÕpvíi c¸cthnhphÇnbªnngoinh−RAMngoi,ROMngoi ,port0®−îcsödôngnh− métcængxuÊt/nhËpth«ngth−êng.KhithiÕtkÕhÖthèngmcÇnsödôngbénhíngoi, port0®−îcsödônglcæng®ÞachØvd÷liÖu®ahîp.Port0nÕulcæng®ÞachØth×nã sÏlphÇnbytethÊpcñabus®ÞachØ. 2. Port1 Port1chØcãmétt¸cdônglcængxuÊtnhËp.NãchØdïng®ÓgiaotiÕpvíithiÕt bÞngo¹ivikhicãyªucÇu.Kh«ngcãchøcn¨ngno®ÆcbiÖtchoc¸cch©ncñaport1. Tuynhiªnvíic¸cbévi®iÒukhiÓnkh¸cnh−8052th×c¸cch©nP1.0vP1.1cßn®−îc södônglmc¸c®−êngngâvochom¹ch®Þnhthêithøba. 3. Port2 Port2cãhait¸cdông,hoÆclmnhiÖmvôlcængxuÊtnhËp,hoÆclphÇnbyte caocñabus®ÞachØ16bitchoc¸cthiÕtkÕhÖthèngcÇnnhiÒuh¬n256bytebénhí ngoi. 4. Port3 Port3cãhait¸cdông.NãlmnhiÖmvônh−métcængxuÊtnhËpth«ngth−êng. Khikh«ngho¹t®éngxuÊtnhËp,mçich©ncñaport3®Òucãmétchøcn¨ngriªng. 5. Ch©nchophÐpbénhíngoi/PSENProgramStoreENable Ch©n ny th−êng ®−îc nèi víi ch©n cho phÐp xuÊt /OE (Output Entable) cña EPRROM(hoÆccñaROM)®ÓchophÐp®äcc¸cbytelÖnh.TÝnhiÖu/PSENël«gic‘0‘ trongsuètthêigiant×mn¹plÖnh.C¸cmnhÞph©ncñach−¬ngtr×nh(opcode)®−îc ®äctõEPROM,quabusd÷liÖuv®−îcchètvothanhghilÖnhIRcña8051®Ó®−îc gi¶im.Khithùcthimétch−¬ngtr×nhtrongROMnéi,/PSEN®−îcduytr×ël«gic kh«ngtÝchcùc(logic1). Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 7 www.scribd.com/bao_trinh
  8. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn 6. Ch©nchophÐpchèt®ÞachØALEAddressLatchEnable LtÝnhiÖuxuÊtra®Ógi¶i®ahîpbus®ÞachØvbusd÷liÖu.Trong1/2chukú®Çu bénhí,ch©nALExuÊttÝnhiÖu®Óchèt®ÞachØ(bytethÊpcñabus®ÞachØ16bit)vo thanhghingoikhitasödôngport0lmbytethÊp®ÞachØ.Trong1/2chukúbénhí cßnl¹iport0sÏxuÊt/nhËpd÷liÖu.TÝnhiÖuALEcãtÇnsèb»ng1/6tÇnsècñam¹ch dao®éngbªntrongchipvi®iÒukhiÓnvcãthÓlmxungclockchoc¸cphÇncßnl¹i cñahÖthèng(tr−ênghîpngo¹ilÖkhithùchiÖnlÖnhMOVX,métxungALE(vc¶ /PSEN)sÏbÞbáqua).Ch©nALEcßn®−îcdïng®ÓnhËpxungngâvolËptr×nhcho EPROMhoÆcFlashROMtrªnchip®èivíichipcãlo¹iROMny. 7. Ch©ntruyxuÊtngoi/EAExternalAddress Ch©nny®−îcnèilªn5Vkhithùcthich−¬ngtr×nhtrongROMnéiv®−îcnèi ®Êtkhithùcthich−¬ngtr×nhbénhíngoi.Chóý®èivíic¸cchipkh«ngcãROMnéi /EAph¶i®−îcnèi®Êt.C¸cchiphä8051cãEPROMcßnnhËnch©n/ALElmch©n nhËn®iÖn¸pcÊp®iÖn12VchoviÖclËptr×nh(n¹p)choEPROMnéi. 8. Ch©nRESET(RST) Dïng®ÓthiÕtlËpl¹itr¹ngth¸iban®ÇucñahÖthènghaygäit¾tlresethÖthèng khi®−îctreoëmøclogic1ÝtnhÊt2chukúm¸y.C¸cthanhghibªntrongcña8051 ®−îcn¹pc¸cgi¸trÞthÝchhîpchoviÖckhëi®éngl¹ihÖthèng. 9. C¸cch©nXTAL1vXTAL2 M¹chdao®éngbªntrongchip8051®−îcghÐpvíith¹chanhbªnngoië2ch©n XTAL1vXTAL2.Th−êngtÇnsèl12MHzvc¸ctôæn®Þnhcãgi¸trÞtrongkho¶ng 30pF 33pF. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 8 www.scribd.com/bao_trinh
  9. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn 1.1.3.2Tæchøcbénhícña8051 C¸cchipvi®iÒukhiÓndïnglmthnhphÇntrungt©mtrongc¸cthiÕtkÕh−íng ®iÒukhiÓn.Bénhíth−êngcãdungl−îngbÐh¬nnhiÒusovíiméthÖvixölý.Nãcßn kh«ngcãæ®ÜavhÖ®iÒuhnh.Ch−¬ngtr×nh®iÒukhiÓnph¶ith−êngtrótrongROM. DovËy,ch−¬ngtr×nhvÉn®−îcl−ugi÷ngayc¶khimÊt®iÖn. Dolýdotrªn,chip8051cãkh«nggianbénhíriªngchoch−¬ngtr×nhvd÷ liÖu.C¶bénhích−¬ngtr×nhvbénhíd÷liÖu®Òun»mtrongchip.Tuynhiªntacã thÓmëréngbénhích−¬ngtr×nhvbénhíd÷liÖub»ngc¸chsödôngc¸cchipnhí bªnngoivíidungl−îngtèi®al64Kchobénhích−¬ngtr×nhv64Kchobénhí d÷liÖu. Bénhích−¬ngtr×nh(ROM) Bénhích−¬ngtr×nhl−ugi÷ch−¬ngtr×nh®iÒukhiÓnchip8051. Sau khi RESET, CPU b¾t ®Çu thùc hiÖn ch−¬ng tr×nh tõ ®Þa chØ 0000H. Khi ch−¬ngtr×nhlínqu¸kÝchth−ícbénhích−¬ngtr×nhbªntrongchip,ch−¬ngtr×nh nyph¶i®−îcn¹pvobénhích−¬ngtr×nhngoi.NÕuch−¬ngtr×nhn»mtrongROM néi,ch©n/EAcña8051ph¶i®−îctreolªn5V.NÕuch−¬ngtr×nhëROMngoi,ch©n /EAph¶inèi®Êt.ViÖctruyxuÊtch−¬ngtr×nhëbénhíngoiph¶ikÕthîpvíich©n tÝnhiÖutruyxuÊtbénhíngoi/PSEN. Bénhíd÷liÖu(RAM) 8051cã128byteRAMëbªntrongchip.Chóng®−îcchialmnhiÒuvïngkh¸c nhau:vïngRAM®amôc®Ých,vïngRAM®Þnh®ÞachØbit,c¸cdythanhghi,v c¸cthanhghichøcn¨ng®ÆcbiÖt.TahyxemxÐttõngvïngRAMcôthÓ. VïngRAM®amôc®Ých :Cã®ÞachØtõ30H®Õn7FH(80byte).VïngRAM nycãthÓtruyxuÊtb»ngc¸ch®Þnh®ÞachØtrùctiÕphoÆc®Þnh®ÞachØgi¸ntiÕp.Nã cãthÓdïng®Óchøac¸cbiÕntrongch−¬ngtr×nhhaydïng®Ó®Þnh®ÞachØchoc¸c cængngo¹ivituútheomôc®Ýchcñang−êisödông. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 9 www.scribd.com/bao_trinh
  10. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn - VïngRAM®Þnh®ÞachØtõngbit :Cã128bitchøatrongc¸cbyteë®ÞachØtõ 20H®Õn2FHv32bytechøac¸cthanhghi(00H®Õn1FH). - C¸cdythanhghitõBank0tíiBank3 :N»më32bytethÊpnhÊtcñavïng nhíd÷liÖu.KhiRESEThÖthèngdythanhghimÆc®ÞnhlBank0.CãthÓchänBank bëithanhghitõtr¹ngth¸ich−¬ngtr×nh(PSWProgramStatusWord).C¸clÖnhsö dôngc¸cthanhghitõR0®ÕnR7lc¸clÖnhng¾nvthùchiÖnnhanhh¬nsovíic¸c lÖnht−¬ng®−¬ngsödôngkiÓu®Þnh®ÞachØtrùctiÕp.C¸cgi¸trÞd÷liÖuth−êng®−îc södôngnªnchøaëméttrongc¸cthanhghiny. C¸cthanhghichøcn¨ng®ÆcbiÖt(SFRSpecialFunctionRegister) Cã21thanhghichøcn¨ng®ÆcbiÖtchiÕmphÇntrªncñaRAMnéicã®ÞachØtõ 80H®ÕnFFH.C¸c®ÞachØ®−îc®ÞnhnghÜatrongvïngRAMnygåmc¸cthanhghi ®iÒukhiÓncña8051,c¸cthanhghi®Öm,vc¸ccængvora. - Thanhghitõtr¹ngth¸i PSWProgramStatusWord:Cã®ÞachØlD0H. Chøac¸cbittr¹ngth¸icãchøcn¨ngkh¸cnhau. - Thanhghichøa ACC :Cã®ÞachØlA0H.Th−êng®−îcdïnglmbiÕnnhí trunggiantrongc¸cphÐptÝnhto¸nsèhäc. - Thanhghi B:Cã®ÞachØlF0H.Th−êng®−îcdïngchungvíithanhghiACC trongc¸cphÐpto¸nnh©nchia. - C¸ccænggiaotiÕpsongsong:§ãlc¸ccængP0,P1,P2,P3.§−îc®Þnh®Þa chØt−¬ngøngl80H,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«ngsèchoviÖctruyÒnth«ngnèitiÕp.CßnthanhghiSBUFdïnglmvïngnhí®Öm bufferchoviÖctruyÒnth«ng. - Thanhghi PCONPowerCONtrol :§©ylthanhghi®iÒukhiÓnnguåncÊp cho8051.CãthÓdïngthanhghiny®Ó®Ætbévi®iÒukhiÓnvochÕ®éPowerDown hoÆcIDE. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 10 www.scribd.com/bao_trinh
  11. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn - C¸c thanh ghi ®iÒu khiÓn ng¾t IP (Interrupt Priority) v IE (Interrupt Enable) :ThanhghiIEdïng®ÓchophÐpc¸cng¾tho¹t®éng/kh«ngho¹t®éng.Cßn thanhghiIPdïng®Óx¸c®Þnhmøc−utiªnchoc¸cng¾tcña8051. - C¸cthanhghi®iÒukhiÓnbé®Þnhthêi:§ãlc¸cthanhghi TMOD , TCON, TH0,TL0,TH1,TL1 .C¸cthanhghiny®−îcsödông®Ó®iÒukhiÓnbé®Þnhthêi0 v1. - Thanhghi SPStackPointer :Thanhghicontrorng¨nxÕp(stack),SPchøa ®ÞachØcñad÷liÖuhiÖn®angë®Ønhstack.NéidungmÆc®ÞnhcñaSPkhikhëi®éngl 07H.Thaot¸ccÊtvostack®ÇutiªnsÏl−ud÷liÖuvovÞtrÝnhícã®ÞachØ08Hv×c¬ chÕlmviÖccñachip8051lt¨ngnéidungSPlªn1tr−íckhithùchiÖnl−ud÷liÖu vong¨nxÕp. - Con trá d÷ liÖu DPTR Data PoinTeR : §−îc dïng ®Ó truy xuÊt bé nhí ch−¬ngtr×nhngoihoÆcbénhíd÷liÖungoi.DPTRlthanhghi16bitgåm2phÇnl DPHvDPL. 1.1.3.3C¸cho¹t®éngchøcn¨ngchÝnhcña8051 Ho¹t®éng®Þnhthêi C¸cbé®Þnhthêidïng®Ót¹orac¸ckho¶ngthêigiankh¸cnhau,dïng®Ó®Õm sùkiÖnhoÆcdïng®Ót¹otèc®ébaudchoviÖctruyÒnth«ngnèitiÕp.Trong8051cã haibé®ÞnhthêilT0vT1.ViÖclùachänchÕ®ého¹t®éngchoc¸cTimernynhê vothanhghiTMOD.CßnviÖc®iÒukhiÓnc¸cTimerho¹t®éngnhêvothanhghi TCON. Cã 4 mode ho¹t ®éng cho c¸c Timer. Mode 0 l chÕ ®é ®Þnh thêi 13bit, Mode1 lchÕ®é®Þnhthêi16bit, Mode2 lchÕ®é®Þnhthêitùn¹pl¹i8bit, Mode 3lchÕ®é®ÞnhthêichiaxÎvcãho¹t®éngkh¸cnhauchotõngbé®Þnhthêi. Ho¹t®éngcñaportnèitiÕp Chøcn¨ngc¬b¶ncñaportnèitiÕplchuyÓn®æid÷liÖutõsongsongthnhnèi tiÕpkhiph¸tvtõnèitiÕpthnhsongsongkhithu.D÷liÖu®−îctruyÒn®ihoÆcnhËn Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 11 www.scribd.com/bao_trinh
  12. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn vÒth«ngquabé®Ömd÷liÖunèitiÕpSBUF(SerialdataBUFfer).KhitruyÒn®i,d÷liÖu ®−îcchuyÓntõsongsongsangnèitiÕpth«ngquach©nTxD.Khithu,d÷liÖu®−îc chuyÓntõnèitiÕpsangsongsongth«ngquach©nRxD.ThanhghiSBUFcã®ÞachØ 99H.ViÖcghid÷liÖuchoSBUFtøclph¸td÷liÖu,viÖc®äcSBUFtøctruyxuÊtd÷ liÖunhËn®−îc(thud÷liÖu).§iÒukhiÓnportnèitiÕpth«ngquathanhghiSCONcã®Þa chØl98H,thanhghinylthanhghi®Þnh®ÞachØtõngbitchotax¸c®Þnh®−îcc¸c chÕ®élmviÖccñaportnèitiÕp(th«ngquahaibitMS0&MS1). Ho¹t®éngcñang¾ttrong8051 Cã5nguyªnnh©n®Ót¹orang¾ttrong8051.§ãl2ng¾tngoi,haing¾tdobé ®Þ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Êtc¶c¸cng¾t®ÒubÞv«hiÖuho¸vsau®ãchóng®−îcchophÐpriªngrÏ b»ngphÇnmÒm. Khich−¬ngtr×nh®angthùchiÖn,nÕucãng¾tvíi−utiªncaoxuÊthiÖn,tr×nhphôc vông¾tchong¾tcãmøc−utiªnthÊpt¹mdõng.Takh«ngthÓt¹mdõngmétch−¬ng tr×nhng¾tcãmøc−utiªncaoh¬n.Khicã2ng¾tkh¸cnhauxuÊthiÖn®ångthêi,ng¾t cãmùc−utiªncaosÏ®−îcphôcvôtr−íc.Khi2ng¾tcãcïngmøc−utiªnxuÊthiÖn ®ångthêi, chuçivßngcè®Þnh sÏx¸c®Þnhng¾tbo®−îcphôcvôtr−íc.Chuçivßng nysÏlng¾tngoi0,ng¾tngoi1,ng¾tdobé®Þnhthêi0,ng¾tdobé®Þnhthêi1, ng¾tdoportnèitiÕp,ng¾tdobé®Þnhthêi2(®èivíi8052). Khimétng¾t®−îcchÊpnhËn,gi¸trÞ®−îcn¹pchobé®Õmch−¬ngtr×nh®−îcgäi l vÐct¬ng¾t .VÐct¬ng¾tl®ÞachØb¾t®Çucñatr×nhphôcvông¾tcñac¸cng¾tt−¬ng øng.C¸c vÐct¬ng¾t ®−îcchoëb¶ngsau: Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 12 www.scribd.com/bao_trinh
  13. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Nguånng¾t Cê §ÞachØvectorng¾t ResethÖthèng RST 0000H Ng¾tngoi0 IE0 0003H Bé®Þnhthêi0 TF0 000BH Ng¾tngoi1 IE1 0013H Bé®Þnhthêi1 TF1 001BH PortnèitiÕp RIorTI 0023H Bé®Þnhthêi2 TF2orEXF2 002BH Ho¹t®éngRESETcña8051 8051®−îcresetb»ngc¸chgi÷ch©nRSTëmøccaotèithiÓuhaichukúm¸yv sau®ãchuyÓnvÒmøcthÊp.Tr¹ngth¸icñatÊtc¶c¸cthanhghisaukhiresethÖthèng nh−sau: Thanhghi Néidung Bé®Õmch−¬ngtr×nhPC 0000H ThanhchøaA 00H ThanhghiB 00H PSW 00H SP 07H DPTR 0000H Port0®Õnport3 FFH IP xxx00000B IE 0xx00000B C¸cthanhghi®Þnhthêi 00H SCON 00H SBUF 00H PCON(HMOS) 0xxxxxxxB PCON(CMOS) 0xxx0000B Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 13 www.scribd.com/bao_trinh
  14. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Khi reset hÖthèngthanhghiPC®−îcn¹p®ÞachØ0000H,khi®ãch−¬ngtr×nhsÏ b¾t®Çutõ®ÞachØ®Çutiªntrongbénhích−¬ngtr×nh.NéidungcñaRAMtrªnchip kh«ngbÞ¶nhh−ëngkhita reset hÖthèng. 1.1.4GiíithiÖuhävi®iÒukhiÓn8bitcñaMotorola C¸chävi®iÒukhiÓncñaMotorola®−îckÝhiÖub¾t®Çubëich÷c¸iMC.V×cè g¾nggi÷l¹iphÇnmÒmc¸cnhchÕt¹olinhkiÖnb¸ndÉnth−êngduytr×sùt−¬ngthÝch víic¸cbévixölÝ®Çu®êi.HngMotorola®−arabévi®iÒukhiÓnM6801®Çutiªncña hngtrªnthÞtr−êngthÕgiíivon¨m1978vbévi®iÒukhiÓnny®−îcchÕt¹otrªn c¬sësödôngbévixölÝM6800.Bévi®iÒukhiÓnM6801cãbénhíROMvRAM ngoilínnhÊtlªn®Õn64KBvíim¹chgiaodiÖnvo/ra,truyÒnth«ngnèitiÕpkh«ng ®ångbé®b¾t®ÇuphæbiÕntronghÖthèng®iÒukhiÓn«t«. Sau ®ã vo n¨m 1985 Motorola ® ph¸t triÓn bé vi ®iÒu khiÓn 68HC11 t−¬ng thÝchvíibévixölÝM6800.Bévi®iÒukhiÓnMC68HC11tiªuthôÝtc«ngsuÊth¬nv chophÐptÝnhiÖunhiÔucaoh¬nsovíic¸cbévixölÝ®Çu®êi.MC68HC11cãnhiÒu phiªn b¶n, vÝ dô MC68HC11A8 v MC68HC11E9. Mét sè hng nh− Mitsubishi, Toshibacòngs¶nxuÊtc¸cbévi®iÒukhiÓnnytheoc«ngnghÖcñaMotorola. B¶ngd−íi®©yliÖtkªc¸c®Æc®iÓmc¬b¶ncñamétsèchipvi®iÒukhiÓntronghä 68HC11: MC ROM RAM EEPROM ADC I/O 68HC11A8 8KB 256bytes 512bytes 8channels 38pins 68HC811E2 0 256bytes 2KB 68HC11F1 0 1KB 68HC11E9 12KB 512bytes 512bytes 68HC11B8 8KB 256bytes 512bytes 68HC11B0 0 256bytes 0 68HC11B1 0 256bytes 512bytes 68HC11D3 4KB 192bytes 40pins 68HC11A0 0 256bytes 0 22pins Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 14 www.scribd.com/bao_trinh
  15. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn 1.1.5GiíithiÖuc¸chävi®iÒukhiÓn8bitcñahngMicrochipTechnology HngMicrochipTechnologylméttrongnh÷ngnhcungcÊphng®ÇuvÒc¸c gi¶iph¸p®iÒukhiÓnchoc¸chÖthèngnhóng(Embeddedcontrolsystem).Haidßng s¶n phÈm chÝnh cña hng l c¸c hä vi ®iÒu khiÓn 8bit PIC16/17 v c¸c chip nhí kh«ngbayh¬iEEPROMnèitiÕp,nh÷ngs¶nphÈmny®−îc®−avoøngdôngcho viÖc®−arac¸cgi¶iph¸pthiÕtkÕc¸chÖthèng®iÒukhiÓnnhóngcñahngcungcÊp chokh¸chhng. C¸chävi®iÒukhiÓn PIC16Cxx v PIC17Cxx cñahngMicrochipTechnology ®−îcsödôngkh¸th«ngdôngvréngrichoc¸cøngdông®iÒukhiÓntrongviÖcchÕ t¹oc¸cs¶nphÈmtiªudïng,trongtù®énghãav¨nphßng,thiÕtbÞngo¹ivicñam¸y tÝnh,c¸chÖthèngtù®éng®iÒukhiÓn D−íi®©yliÖtkªc¸c®Æc®iÓmchÝnh,c¸cthnhphÇnc¬b¶ncñamétsèchipvi ®iÒukhiÓntrongc¸chävi®iÒukhiÓn8bitPIC16CxxvPIC17Cxx. HäPIC16Cxx Memory Peripheral Features PIC (0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (12) (13) 16C61 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ªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 15 www.scribd.com/bao_trinh
  16. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn (0) : TÇnsècÊpt¹oxungClock(MHz). (1) :Dungl−îngbénhích−¬ngtr×nhEPROMtrong. (2) :Dungl−îngbénhích−¬ngtr×nhEEPROMtrong. (3) :Dungl−îngbénhíd÷liÖuRAMtrong(bytes). (4) :Dungl−îngbénhíd÷liÖuEEPROMtrong(bytes). (5) : SèModuleTimer. (6) :SèCapture,ModulePWM. (7) :CængnèitiÕp. (8) :Cængsongsong. (9) :SèkªnhchuyÓn®æiAnalog–Digital(ADC). (10) :Sèbésos¸nh(Comparator). (11) :Sènguånng¾t(Interrupsource). (12) :Sè®−êngvo/ra(I/Opins). 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ÇnsècÊpt¹oxungClock(MHz). (1) :Dungl−îngbénhích−¬ngtr×nhEPROMbªntrong. (2) :Dungl−îngbénhíd÷liÖuRAMbªntrong. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 16 www.scribd.com/bao_trinh
  17. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn (3) :SèModuleTimer. (4) :SèModulePWM. (5) :CængnèitiÕp. (6) :Ng¾tngoi(Externalinterrupts). (7) :Sènguånng¾t(Interruptsources). (8) :Sè®−êngvo/ra(I/Opins). (9) :SèlÖnh®iÒukhiÓn(Instructions). §¸nhgi¸c¸cdßngPIC DßngPICnhiÒuch©nnhÊtldßngdsPIC30FxxxxvPIC18Fxxxx,cãnh÷ngconsè ch©nlªn®Õn80ch©n. DßngPICÝtch©nnhÊtldßngPIC10Fxxx,chØcã6ch©n DßngPICphæbiÕnnhÊtldßngPIC16F877A(®ñm¹nhvÒtÝnhn¨ng,40ch©n,bénhí ®ñchohÇuhÕtc¸cøngdôngth«ngth−êng) DßngPICm®−îcc¸cchuyªngia®¸nhgi¸caonhÊtldßngPIC16F876A(28ch©n, chøcn¨ngkh«ngkh¸cg×sovíiPIC16F877A,nh−ngnhágänh¬nnhiÒu,vsèch©n còngkh«ngqu¸Ýtnh−PIC16F88). DßngPIChçtrîgiaotiÕpUSBldßngPIC18F2550vPIC18F4550 DßngPIC®iÒukhiÓn®éngc¬m¹nhnhÊtldßngPIC18F4x31vdßngdsPIC30F dïng®iÒukhiÓn®éngc¬ DßngPIChiÖnnay®kh«ngcßn®−îcs¶nxuÊtn÷aldßngPIC17xxxxx. *(C¸c®¸nhgi¸vÒPIC®−îctrÝchëwebsitewww.picvietnam.com) 1.1.6GiíithiÖuchipvi®iÒukhiÓnth«ngminhPSoC PSoClch÷viÕtt¾tcña ProgrammableSystemonChip .§ãlmétc«ngnghÖchÕ t¹ochiphiÖn®¹inhÊtcho®Õnnay,chophÐpt¹orac¸cchiphÖthèngxölÝhçnhîp (Mixedsignal)víikh¶n¨ngxölÝthuËtto¸nm¹nh. §Æc®iÓmcñac¸cthÕhÖvi®iÒukhiÓnchÕt¹otheoc«ngnghÖtr−íc®©yltrªn métchipvi®iÒukhiÓnchØcãthÓthay®æi®−îcch−¬ngtr×nhphÇnmÒmchøkh«ngthÓ lËptr×nhthay®æi®−îccÊutrócphÇncøng.Gi¸thnhchoviÖcsödôngc¸cchipvi®iÒu Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 17 www.scribd.com/bao_trinh
  18. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn khiÓnvmuac¸cphÇnmÒmhçtrî®Óph¸ttriÓnc¸cøngdônglrÊt®¾tvmangl¹i hiÖuqu¶kh«ngcao,khãcãthÓth«ngminhhãaviÖc®iÒukhiÓnhÖthèng. Víichipvi®iÒukhiÓnth«ngminhchÕt¹otheoc«ngnghÖPSoC,chóngtacãthÓ lËptr×nhtrªnchip®Óthay®æikh«ngnh÷ngc¶phÇnmÒm®iÒukhiÓnmc¶cÊutróc phÇncøngngaykhihÖthèng®angho¹t®éng.ViÖcøngdôngchipvi®iÒukhiÓnth«ng minhtheoc«ngnghÖPSoCmangl¹ihiÖuqu¶caovÒküthuËtvgi¸thnhgi¶m®i nhiÒulÇnsovíiviÖcsödôngc¸cchipvi®iÒukhiÓntr−íc®©y.§èivíic¸cchipvi®iÒu khiÓnth«ngminh,bªntrongnã®tÝchhîp®Çy®ñc¸cthnhphÇnCPU,c¸cbénhí, c¸ckhèi(block)t−¬ngtùvsènªnmétsèthnhphÇnngo¹ivibªnngoichiptronghÖ thèngcãthÓgi¶m®i.V×thÕ,gi¸thnhvkÝchth−íccñahÖthènggi¶m®inhiÒusovíi hÖthèngsödôngc¸cchipvi®iÒukhiÓnthÕhÖtr−íc®©y. HiÖnnay,cãnhiÒuhng®iÖntötrªnthÕgiíiquant©m®Çut−choviÖcnghiªncøu v ¸pdông c«ng nghÖ chÕ t¹o chipmíi ny. Trong®ã cã thÓkÓ®ÕnhngCypress Microchip®¸pdôngthnhc«ngc«ngnghÖPSoC®Óchora®êic¸chävi®iÒukhiÓn th«ngminhCY8C24xxx,CY8C25xxx,CY8C26xxxvCY8C27xxx. MétvÝdôcôthÓvÒkh¶n¨nglËptr×nhthay®æic¶cÊuh×nhphÇncøngvch−¬ng tr×nhphÇnmÒm®iÒukhiÓnl®Òtiøngdôngchipvi®iÒukhiÓnth«ngminhc«ngnghÖ PSoC®ÓchÕt¹om¸yb¸nhngth«ngminhtù®éng.M¸ycãchøcn¨ngb¸nhngtù ®éngvobanngyvban®ªmth×nãthay®æic¶cÊuh×nhphÇncøngvch−¬ngtr×nh phÇnmÒm®Ólmchøcn¨ngtruyÒnth«ng. H×nh1.3 CÊuh×nhcña métchipPSoC Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 18 www.scribd.com/bao_trinh
  19. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn 1.2GiíithiÖuc¸cc«ngcôph¸ttriÓnhÖvixölÝvvi®iÒukhiÓn 1.2.1C«ngcôph¸ttriÓnchohäMCS51 1.2.1.1PhÇnmÒmKeilcñahngKeilSoftware PhÇnmÒmKeil Vision2lmétch−¬ngtr×nhbiªndÞchchophÐpng−êisödông cãthÓviÕt®−îcc¸cch−¬ngtr×nh®iÒukhiÓnchohävi®iÒukhiÓnMSC51b»ngng«n ng÷Cvc¶ASM.NãcãchøahÇuhÕtc¸chmchuÈncñaANSIC.§iÒunygiópcho ng−êisödôngcãthÓtËndông®−îcnh÷nghmchuÈncñaC®ÓviÕtch−¬ngtr×nhcho vi®iÒukhiÓn.ViÖctæchøcch−¬ngtr×nhthnhc¸cm«dunnhácòngrÊtdÔthùchiÖn. Ch−¬ngtr×nhbiªndÞchchong«nng÷CcñanãchÝnhlCx51Compiler. Cx51CompilerhçtrîtÊtc¶c¸ckiÓud÷liÖuchuÈncñaCnh−:char,short,int, long,float.NgoiranãcßncãmétvikiÓud÷liÖu®ÆcbiÖtt−¬ngthÝchvíihävi®iÒu khiÓnMSC51. - KiÓubit :®©ylkiÓud÷liÖuchØgåm2gi¸trÞ0v1.Nã®−îcsödông®Óg¸n gi¸trÞchoc¸cthanhghihayc¸c®ÞachØcãthÓtruynhËp®−îc®Õntõngbit. - KiÓusbit,sfr,sfr16 :®©ylc¸ckiÓud÷liÖudïng®Ó®ÞnhnghÜachoc¸cthanh ghichøcn¨ng®ÆcbiÖt.KiÓusfrdïng®Ó®ÞnhnghÜachoc¸cthanhghiSFR8bit.Cßn kiÓusfr16dïng®Ó®ÞnhnghÜachoc¸cthanhghiSFR16bitnh−thanhghiRCAP2 dïng®Ól−ugi÷gi¸trÞn¹pl¹ichoTimer2.KiÓusbitdïng®Ó®ÞnhnghÜatõngbitcho c¸cbittrongc¸cthanhghi®ÆcbiÖtmcãthÓ®Þnh®ÞachØbit. VÝdôkhaib¸o: sfrP0=0x80;/*Port0*/ sfrSP=0x81;/*StackPointer*/ sbitP0_0=0x80; sbitP0_1=0x81; Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 19 www.scribd.com/bao_trinh
  20. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn VÒc¸chtæchøcbénhícñavi®iÒukhiÓntrongphÇnmÒmKeilC51: - Bénhích−¬ngtr×nh :§©ylvïngnhíchØ®äctrongvi®iÒukhiÓn.NãcãthÓ cãdungl−îngtíi64KB.TrongphÇnmÒmKeilC51th×vïngnhíny®−îc®Þnhd¹ng b»ngtõkho¸ code. VÝdôkhaib¸obiÕnthuécvïng code : charcodestr[]={“DHBKDN”};//Khaib¸ométm¶ngkýtùchøatrongvïngnhí code - Bénhíd÷liÖu trong :§©ylvïngnhícãthÓvõaghiv®äc.Cã3kiÓuvïng nhíd÷liÖuëbªntrongvi®iÒukhiÓn.§ãlc¸ckiÓu: data,idata,bdata .Vïngnhí d÷liÖukiÓu data lvïngnhíchøa128byted÷liÖu®Çutiªncñavi®iÒukhiÓn.Vïng nhínycãthÓtruycËpth«ngqua®ÞachØtrùctiÕp®−îc.Vïngnhíd÷liÖukiÓu idata lvïngnhí256byted÷liÖutruynhËpth«ngqua®ÞachØgi¸ntiÕp.Vïngnhíd÷liÖu kiÓu bdata lvïngnhíchøa16byte®Þnh®ÞachØbittõ®ÞachØ20H®Õn2FH. VÝdôkhaib¸obiÕntrongvïngnhíd÷liÖutrong: unsignedchardatav1;//Khaib¸obiÕnv1 unsignedintidatav2;//Khaib¸obiÕnv2 - Bénhíd÷liÖungoi :Cã2kiÓud÷liÖungoiëtrongKeilC51l XDATA v PDATA . XDATA lvïngnhíd÷liÖungoicãthÓ®Þnh®ÞachØ®−îc®Õn64KBd÷ liÖu. PDATA lvïngnhíchøatõngtrangd÷liÖu.Mçitrangd÷liÖungoichøa®−îc 256byte.§ÓcãthÓtruycËp®−îcbénhíd÷liÖungoi,taph¶idïngtõkho¸ _at _ ®Ó ®Þnh®ÞachØchoc¸cbiÕn. VÝdôkhaib¸obiÕntrongvïngnhíd÷liÖungoi: floatxdataa1_ at _0x2000;//Khaib¸obiÕna1cã®ÞachØ2000H unsignedlongpdataa2_ at_ 0x2004;//BiÕna2cã®ÞachØ2004 ContrátrongKeilC51®−îckhaib¸ogièngnh−khaib¸ocontrátrongng«nng÷C. VÝdôvÒkhaib¸ocontrá: char*s;//Contrácñamétstring int*p;//ContrákiÓuint Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 20 www.scribd.com/bao_trinh
  21. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Contrá®−îcsödông®ÓtruycËptíibÊtcøphÇnbénhínocñavi®iÒukhiÓn. Cãhaic¸chkhaib¸osödôngcontrá.GenericPointerslkiÓucontrádïngchung. Khaib¸ocontrásÏchiÕm3bytecñavïngnhíd÷liÖumnãtrá®Õn. ContrácßncãthÓkhaib¸ovïngnhíd÷liÖuchocontrá. VÝdô: chardata*str;/*ptrtostringindata*/ intxdata*numtab;/*ptrtoint(s)inxdata*/ long code*powtab;/*ptrtolong(s)incode*/ Ngoira,KeilC51cßnlch−¬ngtr×nhm«phángchiprÊttètb»ngch−¬ngtr×nh tÝchhîpdScope.NãchophÐpng−êisödôngm«phángch−¬ngtr×nhviÕttrongCch¹y trªnnÒnchipgièngnh−thËt.Ng−êisödôngcãthÓdÔdngtheodâigi¸trÞcñaTimer, tr¹ngth¸ic¸cng¾t,®ÇuracængnèitiÕp,®Çurac¸cportP0 P3. 1.2.1.2PhÇnmÒmBorlandDelphi7.0cñahngBorland BorlandDelphi7.0lmétc«ngcôm¹nhdïng®Óx©ydùngc¸cøngdông32bit ch¹ytrªnnÒnWindowsbaogåmc¶Windows9xvNT. 1.2.3C«ngcôph¸ttriÓnchohävi®iÒukhiÓnMC68HC11 C¸cchipvi®iÒukhiÓnhäMotorola68HC11cãthÓ®−îclËptr×nhb»ngng«nng÷ AssemblyhoÆcCnh−c¸chävi®iÒukhiÓnkh¸c.ChóngtacãthÓthamkh¶oc«ngcô ph¸ttriÓnhçtrîchoviÖclËptr×nh,m«phángvph¸ttriÓnc¸cøngdôngvíichipvi ®iÒukhiÓnMC68HC11sau®©y. PhÇnmÒmMicroIDE PhÇnmÒmMicroIDElmétc«ngcôph¸ttriÓnm¹nhhçtrîchoviÖclËptr×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.GiaodiÖnng−êidïngcñanãnh−h×nhvÏ,víiphÇnmÒmnytacãthÓ lùa chän ®Ó lm viÖc víi c¸c chip trong hä 8051, M68HC11, M68HC12, M68HC16,8085,8086, vc¸cchiphäAVR.C¸ctÝnhn¨ng,®Æc®iÓmcñaphÇn Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 21 www.scribd.com/bao_trinh
  22. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn mÒmnyt−¬ngtùnh−phÇnmÒmKeilC51nh−ngøngdôngcñanãth×réngh¬n chonhiÒulo¹ichipkÓtrªn.Ng«nng÷lËptr×nhcãthÓso¹nth¶ovbiªndÞchtrªn m«itr−êngcñaMicroIDEcãthÓb»ngChoÆcAssembly. H×nh1.4 GiaodiÖncñaphÇnmÒmMicro IDE 1.2.4C«ngcôph¸ttriÓnchohävi®iÒukhiÓnPIC16/17 Hävi®iÒukhiÓnPIC16/17®−îchçtrîbëi®Çy®ñc¸cc«ngcôph¸ttriÓnc¶vÒ phÇncøngvphÇnmÒmsau®©y: PICMASTER ®RealTimeInCurcirtEmulator. PROMATE TM UniversalProgrammer. PICSTART ®LowCostPrototypeProgrammer. PICDEM1LowCostDemonstrationBoard. PICDEM2LowCostDemonstrationBoard. MPASMAssembler. MPSIMSoftwaveSimulator. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 22 www.scribd.com/bao_trinh
  23. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn CCompiler(MPC). Fuzzy logicdevelopmentsystem(fuzzyTECH ®MP). D−íi®©ytasÏ®ivogiíithiÖuhaic«ngcôph¸ttriÓnphÇnmÒmth−êng®−îcsö dôngl MPASM Assemblerv CCompiler(MPC). MPASMAssembler MPASMcãhçtrî®Çy®ñchoviÖcviÕtt¹orac¸cMacrotrongch−¬ngtr×nhm ng÷,viÕtch−¬ngtr×nhb»ngng«nng÷Assembly,cungcÊpc¸cmnguåncãs½nvc¸c ®Þnhd¹ngfilekh¸cnhau.Nãt¹oramétm«itr−êngchophÐpso¹nth¶omnguån, biªndÞchcòngnh−gìrèic¸cch−¬ngtr×nhcñang−êisödônglËptr×nhchoc¸cchipvi ®iÒukhiÓnkh¸cnhaubaogåmc¶häPIC16Cxx,PIC16CxxvPIC16C5x. MPASMcãc¸c®Æc®iÓmchÝnhsau®©ytrongviÖchçtrîph¸ttriÓnc¸cøngdông cñang−êidïng: +ChophÐpbiªndÞchch−¬ngtr×nhtõmAssemblysangm®èit−îngchotÊtc¶ c¸cvi®iÒukhiÓncñahngMicrochip. +ChophÐpt¹orac¸cch−¬ngtr×nhMacro. +T¹oratÊtc¶c¸cfilecÇnthiÕt(Object,Listing,Symbol,vc¸cd¹ng®ÆcbiÖt kh¸c)khibiªndÞchvgìrèichoc¸chÖvi®iÒukhiÓncñaMicrochip. +HçtrîviÖcsödôngvt¹orac¸cfile®Þnhd¹ngHex,DecimalvOctal. CCompiler(MPC) C«ngcôph¸ttriÓnphÇnmÒmMPClméttr×nhbiªndÞchhonchØnhv®−îc tÝchhîpvotrongm«itr−êngph¸ttriÓnchoc¸cchipvi®iÒukhiÓnhäPIC16/17cña Microchip.Tr×nhbiªndÞchnycãnhiÒukh¶n¨ngm¹nhmÏvrÊtdÔsödông,®iÒu nykhãcãthÓt×mthÊyëmétc«ngcôph¸ttriÓnnokh¸c. §ÓdÔdngchoviÖcsödôngvgìrèi,tr×nhbiªndÞchMPCsödôngc¸cký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 ® UniversalEmulator. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 23 www.scribd.com/bao_trinh
  24. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn NgoirahiÖnnaycßncãmétsèphÇnmÒmkh¸crÊtlinhho¹t,hçtrîviÕtcho nhiÒudßngPIC,tõ16/17/18®ÕndsPICb»ngCnh−CCSC,HTPIC,HTPIC18hay b»ngPascalnh−MikroPascal 1.2.5C«ngcôph¸ttriÓnchohävi®iÒukhiÓnth«ngminhPSoC PhÇn mÒm PSoC Designer l mét c«ng cô hon chØnh ®−îc tÝch hîp vo hÖ thènghçtrîchoviÖcph¸ttriÓnc¶vÒmÆtlËptr×nhcÊuh×nhphÇncøngvch−¬ngtr×nh phÇnmÒmchoc¸cchipvi®iÒukhiÓnth«ngminhchÕt¹otheoc«ngnghÖPSoCcña hng CypressMicrochip ,vÝdônh−hä CY8C2526xxx . PhÇnmÒmPSoCDesigner®−îcx©ydùngtrªnnÒnhÖ®iÒuhnhWindowsvnã cã thÓ ch¹y ®−îc trªn Windows98, Windows NT 4.0, Windows 2000, Windows Millennium(Me),orWindowsXP. PSoCDesignergiópng−êisödônglùachänmétthuËtto¸ncÊuh×nhphÇncøng chovi®iÒukhiÓn,lËptr×nhphÇnmÒmchovi®iÒukhiÓn,vgìrèi.HÖthèngnycho 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 InCircuit Emulator,chophÐplËptr×nhngaytrªnhÖthèng(Insystemprogramming),vhçtrî viÖct¹orac¸cMacroCYASMchoch−¬ngtr×nhb»nghîpng÷. PSoCDesignercònghçtrîviÖclËptr×nhb»ngng«nng÷bËccaoCvbiªndÞch, gìrèic¸cch−¬ngtr×nh®ãchoc¸cthiÕtbÞcñahngCypressMicrochip. 1.3KITvi®iÒukhiÓn 1.3.1Môc®Ých KüthuËtvi®iÒukhiÓnlm«nhäcc¬b¶nquanträng®èivíisinhviªnc¸cngnh §iÒukhiÓn,Tù®énghãa,§iÖntö,Tinhäcv v .nh»mtrangbÞchosinhviªnnh÷ng kiÕnthøccÇnthiÕtvÒméthävi®iÒukhiÓn,뮩ylhä8051,nh−cÊutróc,nguyªnt¾c ho¹t®éngcïngc¸cm¹chphôtrî,tËplÖnh,c¸chlËptr×nhb»nghîpng÷,c¸cph−¬ng thøc®iÒukhiÓnvoravc¸cph−¬ngph¸pkÕtnèithiÕtbÞngo¹ivi.DùatrªnnÒnt¶ng kiÕnthøccñam«nhäcküthuËtvi®iÒukhiÓn,sinhviªntiÕpthunh÷ngm«nhäckü thuËtchuyªnngnhvtiÕpcËndÔdngh¬nvíinh÷ngküthuËt,trangthiÕtbÞhiÖn Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 24 www.scribd.com/bao_trinh
  25. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn ®¹i.§ångthêichophÐpsinhviªncãc¸inh×ntrùcquanvkiÓmchøng,kh¼ng®Þnhsù ®óng®¾nc¸ckiÕnthøc®häc.DovËyviÖc®−avogi¸otr×nhphÇnx©ydùngthiÕtkÕ Kitvi®iÒukhiÓnlhÕtsøcquanträngvrÊtthiÕtthùc®èisinhviªnchuyªnngnhtù ®énghãa,®iÖntöviÔnth«ng,®ol−êng C¸cKitvi®iÒukhiÓn®Òu®−îcthiÕtkÕdù trªnc¸chävi®iÒukhiÓnmsinhviªn®anghäctronggi¸otr×nhny.SinhviªncãthÓ dïngc¸cKitvi®iÒukhiÓnny®Ó®iÒukhiÓnc¸cqu¸tr×nhnhiÖt®é,®iÒukhiÓn®éng c¬,®iÒukhiÓnc¸c®èit−înggiaoth«ng,®iÒukhiÓnc¸cqu¸tr×nhs¶nxuÊt TrªnthÕgiíicãrÊtnhiÒunguåncungcÊpc¸cm¹chKitnãitrªnnh−: +Tõc¸chngcñan−ícngoi,vÝdônh−béKITMDAEMS51cñahngMidas cña Hn Quèc, KIT v phÇn mÒm ph¸t triÓn cho hä vi ®iÒu khiÓn PIC cña MikroElektronika (Website hay mét hng næi tiÕngkh¸clOLIMEX(Website víic¸cs¶nphÈmKITph¸t triÓnchoc¸cdßngAVR,PIC,MAXQ,MSP430,ARM §Æc®iÓmcñac¸cs¶nphÈm nylcãc¸ctÝnhn¨ngm¹nh,mÉum®Ñp,phôcvôtètnhucÇuthùchnhcñam«n häc.Tuynhiªngi¸thnhcñathiÕtbÞlrÊt®¾t(gi¸kho¶ng700$®èivíiKITMDA EMS51,vviÖc®Ætmuakh«ng®−îcthuËntiÖn. + Do c¸c trung t©mnghiªn cøu v c¸c tr−êng®¹ihäc trong n−íc tù chÕ t¹o. Trongc¸ctr−êng®¹ihäc(§¹ihäcBK§N –bém«ntù®énghãa®chÕt¹ovs¶n xuÊthonchØnhKITvi®iÒukhiÓnphôcvô®ot¹ovs¶nxuÊt),c¸cthiÕtbÞthùc hnhm«nhäcvi®iÒukhiÓncãthÓdoc¸cc¸nbégi¶ngd¹ym«nhäcchÕt¹ohoÆcdo c¸csinhviªntùchÕt¹od−íisùh−íngdÉncñagi¸oviªn. −u®iÓmcñac¸cs¶nphÈm chÕt¹otrongn−íclgi¸thnhrÎmchÊtl−îng,mÉumkh«ngthuakÐmn−ícngoi. CÊuh×nhcñas¶nphÈmvnéidungthùchnhphïhîpvíimôc®Ých,ch−¬ngtr×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 vsinhviªn§HBK§ N½ngnãiriªng. XuÊtph¸ttõt×nhh×nhthùctÕvsùcÇnthiÕt®¸pøngnhucÇuthùchnhtrong qu¸tr×nhhäctËpm«nhäcvi®iÒukhiÓnnãitrªn,viÖcthiÕtkÕ,x©ydùngmétbéKITvi Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 25 www.scribd.com/bao_trinh
  26. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn ®iÒukhiÓnvíi®Çy®ñc¸cthnhphÇnc¬b¶n(nªuëphÇnyªucÇu),lvÊn®ÒhÕtsøc cÇnthiÕt®èivíic¸sinhviªnngnhtù®énghãatrongtr−êng®¹ihäcBK§N.§©yl vÊn®Òträngt©mtronggi¸otr×nhny. 1.3.2YªucÇuthiÕtkÕKITvi®iÒukhiÓnphôcvôthÝnghiÖm: + PhÇncøng :Bëiv×môc®Ýchcñas¶nphÈmlphôcvôchoviÖc®ot¹onªn cÊuh×nhphÇncøngph¶irârng,dntr¶i.KÝchth−íccñabéKITgännhÑ,dÔdngdi chuyÓnvb¶oqu¶n.C¸cthnhphÇncñabéKIT®−îcthÓhiÖnrârng,dÔnhËnbiÕt, mét®Æc®iÓmn÷alnã®−îcph©nthnhc¸cmodulenhávliªnkÕtvíimoduletrung t©mb»ngBUS,®iÒunycònggiópng−êihäccãthÓnh×nthÊymétc¸chtrùcquanc¸c thnhphÇncñabithÝnghiÖmsÏtiÕnhnh.§ångthêiviÖctæchøcthnhc¸cmodule nhácòngtiÖnchoviÖcsöachöa,thiÕtkÕmëréng,vcãthÓdÔdngtrongviÖcth−¬ng m¹ihãas¶nphÈmsauny. + C¸cthnhphÇncñabéKIT :BéKITcã®Çy®ñc¸cthnhphÇnc¬b¶ncña méthÖvi®iÒukhiÓnvc¸cnguåntinguyªnngo¹iviphongphó,chophÐpng−êisö dôngcãthÓtùdoph¸ttriÓnc¸cøngdôngcñam×nh: Bévi®iÒukhiÓntrungt©m. C¸cbénhíROM(néi),RAM(néi/ngo¹i),EEPROM(néi/ngo¹i). C¸ccængvo/rat−¬ngtù,vo/rasè,c¸ccængghÐpnèingo¹ivi mërénglËptr×nh®−îc. GiaotiÕpbnphÝm. HiÓnthÞLCD. HiÓnthÞtr¹ngth¸ib»ng®ÌnLED. HiÓnthÞLED7thanh. HiÓnthÞmatrËnLED(8x8). C¸c®Çuvoxung. M¹ch®iÒukhiÓn®éngc¬métchiÒu,®éngc¬b−íc. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 26 www.scribd.com/bao_trinh
  27. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn GiaotiÕpvíim¸ytÝnhPCquacængtruyÒnth«ngnèitiÕp(COM) vsongsong(LPT). + C¸cbithÝnghiÖmthùchiÖntrªnbéKIT : C¸cbic¬b¶n :GiópsinhviªnlmquenvíihÖlÖnhcñachipvi ®iÒukhiÓn,nhËpc¸clÖnhvch¹ych−¬ngtr×nh®ÓxemkÕtqu¶thùchiÖncñac¸clÖnh ®ã. C¸cbin©ngcao :Gåmc¸cbithÝnghiÖmphøct¹ph¬nthùchiÖn södôngc¸cthnhphÇnngo¹ivitrªnbéKIT.C¸cbithÝnghiÖmthùchiÖnviÖc®iÒu khiÓn mét qu¸ tr×nh t−¬ng tù hoÆc sè, vÝ dô : ®iÒukhiÓn hiÓn thÞ ®Ìn LED, LED 7 thanh,matrËnLED,®iÒukhiÓnvo/rasèt−¬ngtù,®iÒukhiÓn®éngc¬b−íc + ThùchiÖnc¸cbithÝnghiÖm: C¸cbitËpmÉux©ydùngtr−íc :§ikÌmvíis¶nphÈmbéKITl méthÖthèngc¸cbitËpmÉu®−îcx©ydùngchoc¸cøngdôngtrªnbéKITnh−®iÒu khiÓnc¸cthnhphÇnngo¹ivicñaKIT,®iÒukhiÓnvo/rat−¬ngtùsè Sinhviªncã thÓ®äch−íngdÉnsödôngvthùchiÖnc¸cbitËpmÉunytrªnbéKIT. C¸cbitËpdosinhviªntùlËptr×nh :Saukhi®n¾mrâcÊuh×nh cñabéKITvs¬®åbénhícñac¸cthnhphÇntrªnbéKIT,sinhviªncãthÓtùlËp tr×nhc¸cbithÝnghiÖmtrªnbéKITtheoý®Þnhriªngcñam×nh. +C«ngcôlËptr×nh : B»ngm¸ytÝnhPC :CãthÓsödôngng«nng÷ASSEMBLYvíitr×nhbiªndÞch hîpng÷s½ncãcñanhs¶nxuÊt(ASM51.exe)hoÆcc¸cc«ngcôph¸ttriÓnvÝdônh− phÇn mÒm Keil, ProView32, 8051IDE hay 8051Bascom ®Ó lËp c¸c ch−¬ng tr×nh chobé KIT tõm¸y tÝnhb»ng ng«n ng÷ C, AssemblyhayBASIC, sau ®ãbiªndÞch thnh 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«ngcôph¸ttriÓnchobéKIT : Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 27 www.scribd.com/bao_trinh
  28. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng1:TængquanvÒvi®iÒukhiÓn Ch−¬ngtr×nhMONITOR :Ch−¬ngtr×nhMonitor®iÒuhnhho¹t ®éngcñac¶béKITvchophÐplËptr×nhtõm¸ytÝnh.Ch−¬ngtr×nhhçtrîchÕ®égì rèib»ngc¸chch¹ytõngdßnglÖnh(STEPBYSTEP)vquans¸tc©ulÖnhvõach¹y(vd MOVA,#1)®ångthêicòngquans¸t®−îcgi¸trÞcñac¸cthanhghi®ÆcbiÖtSFR,c¸c PORT,c¸c«nhíRAM.Ngoirach−¬ngtr×nhMonitorcñabéKITcßnchophÐpsöa ®æinéidungcñac¸cthanhghi®ÆcbiÖthoÆcnéidungc¸c«nhítrongcñachipvi®iÒu khiÓnchÝnh. C«ngcôgìrèi :TrªngiaodiÖnm¸ytÝnhcãthÓsödôngc¸cphÇn mÒmph¸ttriÓnvÝdôphÇnmÒmKeil,ASM51,Proview32®ÓgìrèichoviÖclËptr×nh . (C¸cphÇnmÒmcãthÓt×mthÊyëth−môcProgrammingtoolstrªnCD®ikÌmKIT) Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 28 www.scribd.com/bao_trinh
  29. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Ch−¬ngIICh−¬ngII ThiÕtkÕKITvi®iÒukhiÓnThiÕtkÕKITvi®iÒukhiÓn Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng –Bém«nT§H Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 29 www.scribd.com/bao_trinh
  30. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Ch−¬ngIICh−¬ngII ThiÕtkÕKITvi®iÒukhiÓnThiÕtkÕKITvi®iÒukhiÓn 2.1Chänph−¬ng¸nthiÕtkÕ Hävi®iÒukhiÓnmbéKITchänlmthnhphÇntrungt©mlhä8051,v×nh÷ng lÝdosau®©y: +Hä8051lhävi®iÒukhiÓnphæbiÕnnhÊthiÖnnay,®−îcsödôngrÊt réngritrongc¸cøngdôngc«ngnghiÖpcòngnh−trongviÖcchÕt¹oc¸cs¶nphÈmd©n dông. +Hä8051®v®anglm«nhäc®−îcn»mtrongch−¬ngtr×nh®ot¹o cñac¸ctr−êngtrunghäc,cao®¼ngv®¹ihäctrongc¶n−íc,®©ycßnlmét®èit−îng côthÓchosinhviªnkhib¾t®ÇunhËpm«nvi®iÒukhiÓn.V×vËy,viÖcchänhä8051 lmthnhphÇntrungt©mcñabéKITlphïhîpvíich−¬ngtr×nh®ot¹ov®iÒukiÖn häctËpcñasinhviªn. V×nh÷nglÝdotrªn,vxuÊtph¸ttõmôc®Ých,yªucÇucña®å¸nlthiÕtkÕmét bé KIT vi ®iÒu khiÓn phôc vô môc ®Ých ®o t¹o m«n häc ny, ta quyÕt ®Þnh chän ph−¬ng¸nsödôngchipvi®iÒukhiÓn89C52cñahngATMEL®ÓlmthnhphÇn trungt©mcñaKIT,cïngvíic¸cthnhphÇnbénhíROM,RAMbªnngoivc¸cthiÕt bÞngo¹iviphongphó. Chipvi®iÒukhiÓnAT89C52lmétbévi®iÒukhiÓncòngthuéchä8051,do®ã nãcãtÊtc¶nh÷ng®Æctr−ngc¬b¶ncñahäny.Ngoiranãcßncãthªm1bé®Þnh thêiTimer2v3nguånng¾tsovíi8051. 72.2X©ydùngs¬®åkhèicñaKIT Sau®©ytasÏx©ydùngs¬®åkhèicñabéKITvi®iÒukhiÓnnh−sau: Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 30 www.scribd.com/bao_trinh
  31. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn PC LCD CPU bµN PHÝM VµO/RA §ÇU VµO LED stepper A/D D/A LED DIGITAL XUNG MATRIX motor 7 8 x 8 THANH H×nh2.1 S¬®åkhèicñaKIT Trongs¬®åkhèicñabéKITnh−trªn,chøcn¨ngcñac¸ckhèinh−sau - KhèiCPU :§©ylkhèitrungt©mcñahÖthèng.Nãbaogåmchipvi®iÒu khiÓnAT89C52,EEPROM,RAM,c¸ccænggiaotiÕpmëréng,m¹chchèt,gi¶im®Þa chØ KhèinylmnhiÖmvôtrungt©m®iÒuhnhho¹t®éngcñac¶béKIT. - KhèiPC :§©ylkhèigiaotiÕpgi÷ahÖ vi®iÒukhiÓn cñabéKITvm¸y tÝnh.PCgiópchong−êisödôngcãthÓph¸ttriÓnc¸cøngdôngtrªnbéKITtõm¸y tÝnh.Ng−êisödôngdïngPC®Ón¹pc¸cch−¬ngtr×nhøngdôngchobéKIT.Ngoira PCcßnchophÐpng−êisödôngn¹pc¸cch−¬ngtr×nh®iÒuhnhcñang−êisödôngviÕt chobéKIThoÆcthay®æich−¬ngtr×nh®iÒuhnhhiÖn®angcãtrongbéKIT.Ch−¬ng tr×nh®iÒuhnhph¶i®−îc n¹p tõ c¸c m¹chn¹p ngoiv cè®Þnh trªnKIT.Ch−¬ng tr×nhøngdôngcñang−êisödông®−îcn¹pchobéKITtõm¸ytÝnhth«ngquaphÇn mÒmn¹p®ikÌmtheoKIT. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 31 www.scribd.com/bao_trinh
  32. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn - BnphÝm :§©ylkhèithiÕtbÞ®ÇuvogiaotiÕpgi÷avi®iÒukhiÓnvng−êi södông.BnphÝmchophÐpng−êisödôngsödôngnã®Ó®iÒukhiÓnho¹t®éngcña KITtheoh−íngdÉntrªnmnh×nhLCDnh−: Ch¹ych−¬ngtr×nhtõngb−íc(nótSTEP) Xem,söa®æic¸cthanhghi(R0R7),c¸cthanhghi®ÆcbiÖt(SFR),c¸c PORT(P0,P1,P2,P3),c¸c«nhíRAM ChuyÓn®æiqual¹igi÷ac¸ckiÓuhiÓnthÞd÷liÖunh−nhÞph©n,hexahay thËpph©n. - KhèiLCD: mnh×nhtinhthÓlángvíikÝchth−íclín24x8kÝtùgióptacãthÓ quans¸tdÔdnggi¸trÞcñac¸cthanhghi(R0R7),c¸cthanhghi®ÆcbiÖt(SFR)c¸c PORT (P0,P1,P2, P3), c¸c«nhí trong RAM Ngoi ra trªn mnh×nh cßn cã c¸c h−íngdÉnng−êisödông,chøcn¨ngcñac¸cphÝmtïytheong÷c¶nh.LCDt¹orasù tiÖnlîi,th©nthiÖnchong−êisödôngtronglmquencòngnh−thÝnghiÖmtrªnKIT. - KhèiA/D :Cãchøcn¨ngchuyÓn®æitÝnhiÖu®iÖn¸pt−¬ngtù0–5Vthnh tÝnhiÖusè8bit®Ó®−avovi®iÒukhiÓnxölÝ.TÝnhiÖuvo05VcãthÓ®−îc®−atõ bªnngoihoÆcth«ngquaDIPSWITCH(DualInlinePakageSWITCH)®Ónèic¸ctÝn hiÖut−¬ngtùcãs½ntrªnkitnhêbéchia¸pl3biÕntrëvichØnhv®ÆcbiÖtl®Çura cña1béc¶mbiÕnnhiÖt®éLM35,cãthÓtiÕnhnh뮩ymétbithÝnghiÖmvÒ®o nhiÖt®éphßng. - KhèiD/A :LkhèichophÐpchuyÓn®æitÝnhiÖusè8bitthnhtÝnhiÖut−¬ng tù0–10V®−arangoi,cãthÓhiÓnthÞ®−îctrªnm¸yhiÖnsãng. - Khèivo/raxungsè®iÒukhiÓn®éngc¬b−ícv®éngc¬1chiÒu : Lkhèivo/ratÝnhiÖusè,chophÐpbéKITnhËnvométtÝnhiÖusè8bit,4tÝn hiÖuvod¹ngxungb»ngc¸cnótÊn,4tÝnhiÖuvod¹ngxungtõbªnngoinh−c¸cbé encoder,ngoiracßncã6®Çuraxung,cã®ÖmtÇngkhuyÕch®¹i®Ó®iÒukhiÓn®éng c¬b−ícv®éngc¬1chiÒu.Ngoirang−êisödôngcãthÓsölùachänlo¹i®iÖn5V Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 32 www.scribd.com/bao_trinh
  33. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn hoÆc12Vtïytheolo¹i®éngc¬b»ngc«ngt¾cthay®æinguåncÊpcho®éngc¬trªn m¹ch. - LED7thanh :LkhèihiÓnthÞLED7thanh,cãthÓdïng®ÓhiÓnthÞc¸cgi¸ trÞtheoch−¬ngtr×nhcñang−êisödông. - KhèiLEDMatrix(8x8) :LmétmatrËn®ÌnLEDgåm8hngx8cét,t¹i mçi®iÓmcñamatrËnLEDcã2®Ìnvíi2muxanhv®á,nÕu®iÒukhiÓnchos¸ng cïnglócc¶2®Ìnth×tasÏ®−îcmucam. 2.3ChänthiÕtbÞ,gi¶imvthiÕtkÕm¹chnguyªnlýcñahÖthèng: 2.3.1.Chändungl−îngbénhívthiÕtbÞngo¹ivi: Tachänc¸cthnhphÇncñabénhítrªnKITbaogåm: - 8Kbyteparallel(songsong)EEPROM–chipsödôngAT28C64. - 32KbyteRAMngoi–chipsödôngHM62256. - 5chip8255mëréngI/O®ÓgiaotiÕpvíic¸cthiÕtbÞsau: LCD–24x8kýtù BnphÝm5x4 8LED®¬n 4LED7®o¹n LEDmatrËn2mu8x8 C¸cbéchuyÓn®æiADC,DAC Vo ra xung sè, c¸c tÇng khuyÕch ®¹i ®Öm ®Ó ®iÒu khiÓn ®éng c¬ b−íc,®éngc¬1chiÒu. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 33 www.scribd.com/bao_trinh
  34. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn 2.3.2.Gi¶im®ÞachØ: Tas¾pxÕp bénhív®ÞachØcñac¸cthiÕtbÞngo¹ivigiaotiÕpvíiKITtrong b¶ng2.1 nh−sau §ÞachØ ThiÕtbÞ Ghichó 0000h1FFFh EEPROM Chøach−¬ngtr×nhMonitor 4000h7FFFh RAM Chøach−¬ngtr×nhøngdông 8000h PortA:§iÒukhiÓnLCD. 8001h PortB:DatabuscñaLCD. 8000h8003h 8255 (1) 8002h PortC:NhËnmcñabnphÝm. 8003h CW:Thanhghi®iÒukhiÓn. 8004h PortA:§iÒukhiÓncÊpnguånchoc¸cAnot chungcñaLEDmatrix(c¸chng). 8005h PortB:§iÒukhiÓn®ÌnmuxanhcñaLED 8004h8007h 8255 (5) matrix(c¸ccétxanh). 8006h PortC: §iÒu khiÓn ®Ìn mu ®á cña LED matrix(c¸ccét®á). 8007h CW:Thanhghi®iÒukhiÓn. 8008h PortA:§−êngDatacñaADC0809. 8009h PortB:§−êngDatacñaDAC0808. 8008h800Bh 8255 (2) 800Ah PortC:§iÒukhiÓnADC0809. 800Bh CW:Thanhghi®iÒukhiÓn. 800Ch PortA:§ÇuvoDigital. 800Dh PortB:§iÒukhiÓn®éngc¬b−íc( PB0PB3 ) v®éngc¬métchiÒu( PB4PB5 ). 800Ch800Fh 8255 (3) 800Eh PortC : 4 ®Çu vo xung d¹ng nót Ên (PC4PC7 ),4®Çuvochoc¸cthiÕtbÞngoi nh−encoder( PC0PC3 ). 800Fh CW:Thanhghi®iÒukhiÓn. C000hPortA:HiÓnthÞ8LED®¬n. C001hPortB:HiÓnthÞ2LED7thanh(tr¸i). C000hC003h 8255 (4) C002hPortC:HiÓnthÞ2LED7thanh(ph¶i). C003hCW:Thanhghi®iÒukhiÓn. C004h –C007h 8255EX BUSmëréngdùtr÷,cãthÓg¾nthªm1modulekh¸c B¶ng2.1 S¾pxÕpbénhívc¸chph©n®ÞachØchoc¸cthiÕtbÞngo¹ivicñaKIT Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 34 www.scribd.com/bao_trinh
  35. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Dùavob¶ng2.1trªntacãs¬®åbénhícôthÓnh−b¶ng2.2sau: Address 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 EEPROM 0000h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 AT28C64 8Kbyte 1FFFh 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 RAM 4000h 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 HM62256 32Kbyte 7FFFh 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 82551 8000h 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 KEYPAD 8001h 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 LCD 8002h 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 8003h 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 82555 8004h 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 MATRIX 8005h 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 LED 8006h 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 8007h 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 82552 8008h 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 ADC 8009h 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 DAC 800Ah 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 800Bh 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 82553 800Ch 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 XUNG Sè 800Dh 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 STEPPER 800Eh 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 DCMOTOR 800Fh 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 82554 C000h 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 LED7 C001h 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ®o¹n C002h 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 LED ®¬N C003h 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 8255EX C004h 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 C005h 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 C006h 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 C007h 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 35 www.scribd.com/bao_trinh
  36. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Nh×nvoc¸ccétcãmux¸mtrongb¶ng2.2trªntacã®−îcc¸chph©nc«ng gi¶imnh−sau: Tasödông3chipgi¶imchuyªndônglvim¹ch74HC138®ÓphôcvôviÖc gi¶im®ÞachØchoc¸cchipnhícòngnh−c¸cchipmëréngI/Ol8255,®Çuvovra cñac¸cchipgi¶im®−îctr×nhbytrongb¶ngsau: Chipgi¶im A B C G2A G2B 74HC1381(U9) A14 A15 0 0 0 74HC1382(U10) A2 A3 A4 Y2(U9) Y2(U9) 74HC1383(U11) A2 0 0 Y3(U9) Y3(U9) §ÇuvochänchipCS(ChipSelect)cñac¸cchipEEPROM,RAM,v8255nh−b¶ng sau: Chip CS(ChipSelect) Ghichó EEPROM28C64 A13+Y0(U9)(*) RAM62256 Y1(U9) 8255(1)Keypad,LCD Y0(U10) U9,U10,U11 8255(5)LEDmatrËn Y2(U10) xems¬®å 8255(2)ADC,DAC Y3(U10) nguyªnlý. 8255(3)Xungsè,stepper,DCmotor Y1(U10) 8255(4)LED7®o¹n,LED®¬n Y0(U11) 8255(EX) Y1(U11) (*)DoyªucÇuthiÕtkÕcñabéKIT,c¸cchipnhíRAMvEEPROMvõaph¶icãkh¶ n¨nglmbénhíd÷liÖuvbénhích−¬ngtr×nhnªnc¸cch©nOE(OutputEnable)cña c¸cchipnhínycãlogicnh−sau/OE=/PSEN*/RD.B¶ng2.2 .B¶n®åbénhívgi¶im®ÞachØcñaKIT §Órâh¬ntat×mhiÓuküvÒchøcn¨ngcñach©n/PSENvEAtrongøngdông mëréngbénhíngoicñahä8051.PSEN(ProgramStoreEnable)cãnghÜalcho Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 36 www.scribd.com/bao_trinh
  37. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn phÐpcÊtch−¬ngtr×nh.§©yltÝnhiÖurav®−îcnèivíich©nOEcña bénhích−¬ng tr×nh ngoi.Khich©nEA®−îcnèi®Êtth×8031/51n¹p mlÖnh tõbénhíngoith«ng quach©nPSEN,뮩ybénhíngoi®ãngvaitrßl bénhích−¬ngtr×nh .Ngoirakhi bénhíngoilmchøcn¨ngl bénhíd÷liÖu th×tÝnhiÖuRD®−îcsödông®Ótruy cËpkh«nggiand÷liÖungoi(dïnglÖnhMOVX),nªnRD®−îcnèi®ÕnOEcñachip nhí.TrongthiÕtkÕphÇnmÒmcñaKIT®ßiháic¶2chøcn¨ngnycñabénhí,võal bénhích−¬ngtr×nh,võalbénhíd÷liÖudo®ãc¸cch©nOEcñac¸cchipnhíph¶i cãmøclogicnh−trªn/OE=/PSEN*/RD . 2.3.3GiíithiÖuvÒchøcn¨ngcñac¸cthiÕtbÞ®−îcsödôngtrªnKIT: 2.3.3.1CPU R10 CPU VCC 1 2 D0 VCC 3 D1 4 D2 5 D3 6 D4 7 D5 8 D6 9 D7 10k VCC CR3 VCC 104 ADRRESS: VCC ADRRESS: CR4 0000H-1FFFH GND 4000H-7FFFH 104 GND U3 62256 U13 28 10 A0 U420 74HC573 U2 AT28C64 VCC A0 9 A1 A0 19 VCC 2 D0 D0 39 21 A8 A0 10 11 D0 D0 11 A1 8 A2 A1 18 Q0 D0 3 D1 D1 38 P0.0/AD0 P2.0/A8 22 A9 GND A1 9 A0 D0 12 D1 D1 12 D0 A2 7 A3 A2 17 Q1 D1 4 D2 D2 37 P0.1/AD1 P2.1/A9 23 A10 A2 8 A1 D1 13 D2 D2 13 D1 A3 6 A4 A3 16 Q2 D2 5 D3 D3 36 P0.2/AD2 P2.2/A10 24 A11 A3 7 A2 D2 15 D3 D3 15 D2 A4 5 A5 A4 15 Q3 D3 6 D4 D4 35 P0.3/AD3 P2.3/A11 25 A12 A4 6 A3 D3 16 D4 D4 16 D3 A5 4 A6 CR5 A5 14 Q4 D4 7 D5 D5 34 P0.4/AD4 P2.4/A12 26 A13 A5 5 A4 D4 17 D5 D5 17 D4 A6 3 A7 104 A6 13 Q5 D5 8 D6 D6 33 P0.5/AD5 P2.5/A13 27 A14 A6 4 A5 D5 18 D6 D6 18 D5 A7 25 A8 A7 12 Q6 D6 9 D7 D7 32 P0.6/AD6 P2.6/A14 28 A15 A7 3 A6 D6 19 D7 D7 19 D6 A8 24 A9 Q7 D7 P0.7/AD7 P2.7/A15 A8 25 A7 D7 D7 A9 21 A10 VCC 11 ALE T2 1 10 RXD A9 24 A8 A14 1 A10 23 A11 LE 1 T2-EX 2 P1.0/T2 P3.0/RXD 11 TXD A10 21 A9 A11 2 A12 10 OE STEP 3 P1.1/T2-EX P3.1/TXD 12 /INT0 A11 23 A10 A13 26 A12 26 A13 GND 4 P1.2 P3.2/INT0 13 /INT1 U5A14 7408 A12 2 A11 /CS_62256 20 A13 1 5 P1.3 P3.3/INT1 14 T0 /PSEN 1 A12 /WR 27 CS A14 P1.4 P3.4/T0 WR GND 6 15 T1 3 22 GND 22 7 P1.5 P3.5/T1 16 /WR 2 27 OE OE 14 8 P1.6 P3.6/WR 17 /RD 7 20 WE VSS Ñaàu vaøo cho P1.7 P3.7/RD CE T0, T1, T2, T2-EX 19 30 ALE 28 GND VCC 14 18 XTAL1 ALE/PROG 29 /PSEN VCC ôû cheá ñoä CAPTURE GND noái ñöôïc INT1 thì monitor ñoä Cheá XTAL2 PSEN J10 /EA 31 RST 9 EA/VPP 40 GND 1 T0 RST GND VCC CR2 GND 2 T1 CR1 104 3 T2 AT89C52 20 4 T2-EX Y1.1 U11A GND 104 GND 1 VCC VCC 3 CHÖÔNG TRÌNH 2 A13 VCC 12 MHz 7432 NGÖÔØI SÖÛ DUÏNG VCC 7404 SW7.1 C1.1 C1.2 U6A 7 GND 1 CR6 CR7 2 1 104 104 33pF 33pF /EA 2 1 2 3 P_COM U7B 14 3 1 14 4 /WR SWITCH VCC 6 VCC GND GND 6 2 RXD OUT 5 GND 7 7432 7 3 TXD IN VCC 8 CR8 4 104 9 MONITOR 5 GND GND U816 MAX232/SO VCC VCC TXD IN 13 VCC 12 RXD CR10 CR9 8 R1IN R1OUT 9 104 VCC 104 R2IN R2OUT CR12 C8.4 TXD 11 14 RXD OUT 104 10uF 10 T1IN T1OUT 7 74HC138 74HC138 74HC138 T2IN T2OUT U9 16 U12 16 U10 16 1 A14 1 VCC 15 A2 1 VCC 15 /CS_8255_7SEG_LED A2 1 VCC 15 /CS_8255_LCD_KEYPAD 3 C1+ A15 2 A Y0 14 /CS_62256 2 A Y0 14 /CS_8255_7SEG_EX A3 2 A Y0 14 /CS_8255_MATRIX_LED 4 C1- GND 3 B Y1 13 3 B Y1 13 A4 3 B Y1 13 /CS_8255_ADC_DAC 5 C2+ C Y2 12 /CS_8255_7SEG_LED_EX12 C Y2 12 C Y2 12 /CS_8255_PULSE_STEPPER 2 C2- Y3 11 Y3 11 Y3 11 C8.1 6 V+ VCC 6 Y4 10 VCC 6 Y4 10 VCC 6 Y4 10 10uF V- 15 4 G1 Y5 9 4 G1 Y5 9 4 G1 Y5 9 VCC GND 5 G2A Y6 7 5 G2A Y6 7 5 G2A Y6 7 G2B 8 Y7 G2B 8 Y7 G2B 8 Y7 C8.2 GND GND GND 10uF C8.3 10uF GND VCC GND VCC H×nh2.3 –S¬®ånguyªnlýkhèiCPU Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 37 www.scribd.com/bao_trinh
  38. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn §©ylphÇn®iÒukhiÓntrungt©mcñabéKIT,lbéphËnquanträngnhÊt.Khèi CPUgåmcãchipvi®iÒukhiÓnchÝnhAT89C52,EEPROM,RAM,m¹chchèt,gi¶im ®ÞachØ S¬®ånguyªnlýcñakhèiCPUnh−h×nh2.3. C¸clinhkiÖnchÝnhcãtrongkhèi: Vi®iÒukhiÓnAT89C52 VíithùctÕthÞtr−êngcña§N½ng,vc¶khuvùcMiÒnTrungT©yNguyªn nãichungtachänAT89C52lchipdÔdngmua®−îc,bénhí8Kbytevõa®ñcho ch−¬ngtr×nhMONITOR®iÒuhnhKIT. - AT89C52 cã 8K Flash ROM lm bé nhí ch−¬ng tr×nh, 256 byte RAM, 32 ®−êngxuÊtnhËp,3bé®Þnhthêi,métcÊutrócng¾t2møc−utiªnv8nguånng¾t,mét portnèitiÕpsongc«ng(fullduplex). Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 38 www.scribd.com/bao_trinh
  39. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn - TimerT2 cña89C52cã thÓ lm viÖc nh−TimerT0, T1 trong chÕ®é Reload ngayc¶ëlóclmTimer16bit. VïngnhíFlashROMcã thÓ n¹p v xãa kho¶ng 1000lÇn. - Vi ®iÒu khiÓn AT89C52 hç trî tÇn sè lm viÖc ®Õn 24 MHz. - Cã chÕ ®é Power Down ®ÓtiÕtkiÖm®iÖnn¨ngcñahÖ 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»mv«hiÖuhãac¸cho¹t®éng kh¸c cho chip cho ®Õn khi cã H×nh2.4 S¬®åch©ncñaAT89C52 resetcøngtiÕptheo.ChÕ®éIdlehaycßngäilchÕ®énghØdõngCPUtrongkhivÉn chophÐpRAM,c¸cbé®Þnhthêi/®Õm,portnèitiÕpvhÖthèngng¾ttiÕptôcho¹t ®éng. U1 M¹chchèttÝnhiÖu74HC573 19 2 18 Q0 D0 3 17 Q1 D1 4 16 Q2 D2 5 15 Q3 D3 6 14 Q4 D4 7 13 Q5 D5 8 12 Q6 D6 9 Q7 D7 11 LE 1 OE 74HC573 H×nh2.5 S¬®åch©ncña74HC573 74HC573lm¹chchèttÝnhiÖutèc®écao®−îcchÕt¹otheoc«ngnghÖCMOS. C¸c®Æc®iÓmcñavim¹ch: - Tèc®étruyÒntÝnhiÖutõ®Çuvosang®ÇurachØcã18ns. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 39 www.scribd.com/bao_trinh
  40. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn - Ph¹mvi®iÖn¸pho¹t®éng:2–6V - Dßng®iÖn®Çuvo:línnhÊt1 A. Ho¹t®éng:Khich©n/LEëmøccao,®ÇuraQphôthuécvo®ÇuvoD.Khich©n /LEëmøcthÊp,tÝnhiÖu®ÇuvoD®−îcgi÷l¹ië®Çuracho®Õnkhinoch©n/LEtrë l¹imøccao.Khich©n/OEëmøccao,tÊtc¶c¸c®ÇuraQ®Òuëmøccao. M¹chgi¶im®ÞachØ74HC138 U6 1 15 2 A Y0 14 3 B Y1 13 C Y2 12 6 Y3 11 4 G1 Y4 10 5 G2A Y5 9 G2B Y6 7 Y7 74HC138 H×nh2.6 S¬®åch©ncña74HC138 §©ylvim¹ch®−îcchÕt¹otheoc«ngnghÖCMOS.Vim¹chny®−îcdïng®Ó gi¶im®ÞachØkhihÖthèngcãnhiÒulinhkiÖncÇn®Þnh®ÞachØghÐpnèi.Nãlmét trongnh÷ngvim¹chphæbiÕnnhÊttrongc¸cm¹chvi®iÒukhiÓn.C¸cch©n®Çura®¶o Ykphôthuécvoc¸cch©ntÝnhiÖu®ÇuvoA,B,C.Tuynhiªnc¸ctÝnhiÖu®ÞachØchØ ®−îcgi¶imkhich©nG1(E3)ëmøcHigh,cßnc¸cch©n/G2A(/E1),/G2B(/E2)ëmøc Low. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 40 www.scribd.com/bao_trinh
  41. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn B¶ngchøcn¨ngcñavim¹chnh−sau: Chóý:L:LowMøcthÊp;H:HighMøccao;X:kh«ngquant©m U4 13 12 8 R1IN R1OUT 9 R2IN R2OUT 11 14 10 T1IN T1OUT 7 T2IN T2OUT 1 3 C1+ 4 C1- 5 C2+ 2 C2- 6 V+ V- MAX232 H×nh2.7 –S¬®åch©ncñaMAX232 Vim¹chMAX232 Vim¹chMAX232cãnhiÖmvôchuyÓnmøc®iÖn¸ptõ0 5Vthnh®iÖn¸p– 12V +12VtheotiªuchuÈnRS232®ÓphôcvôchoviÖctruyÒnth«ngnèitiÕp. Trªnvim¹chcã2ngâvocñach©nRxD,2ngâracñach©nRxD,2ngâvocña ch©nTxD,2ngâracñach©nTxD.TÝnhiÖutõch©nRxDcñacængnèitiÕptrong m¸ytÝnh®−îcnèivoch©n/R1OUT,tÝnhiÖutõch©nTxDcñacængnèitiÕptrong m¸ytÝnh®−îcnèiT1INcñaMAX232.T−¬ngtù,ch©nRxDcñavi®iÒukhiÓn®−îc nèivíich©n/T1OUT,cßnch©nTxDcñavi®iÒukhiÓn®−îcnèivíich©nR1INcña MAX232. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 41 www.scribd.com/bao_trinh
  42. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn BénhíRAM32K62256 Vim¹ch62256®−îcdïnglmbénhíd÷liÖungoichoc¸cvi®iÒukhiÓn. - A0 A14:l15bitdïng®Óx¸c®Þnh®ÞachØcñac¸cvïngnhítrongRAM. - /OE:OutputEnable,chophÐp®äcd÷liÖutõRAMraDataBus. - /WE:WriteEnable,chophÐpghid÷liÖuvoRAM. - CS1,CS2:Dïng®Óchänchip. - D0 D7:lc¸cch©nnèivoDataBuscñahÖthèng. U3 62256 28 10 VCC A0 9 11 A1 8 12 D0 A2 7 13 D1 A3 6 15 D2 A4 5 16 D3 A5 4 17 D4 A6 3 18 D5 A7 25 19 D6 A8 24 D7 A9 21 A10 23 A11 2 A12 26 20 A13 1 27 CS A14 22 WR OE 14 VSS H×nh2.8 –S¬®åch©ncña62256 BénhíEEPROM8K28C64 §©ylbénhíkh«ngbayh¬icãthÓ®äcvghi®−îcb»ngch−¬ngtr×nhnh−bé RAMmkh«ngcÇnsödôngnh÷ngm¹chn¹pchuyªndông,nh−ngcãkh¶n¨ngb¶ovÖ d÷liÖukhimÊtnguån. - A0 A12 : l 12 bit dïng ®Ó x¸c ®Þnh ®Þa chØ cña c¸c vïng nhí trong EEPROM. - /OE:OutputEnable,chophÐp®äcd÷liÖutõEEPROMraDataBus. - /WR:WriteEnable,chophÐpghid÷liÖuvoEEPROM. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 42 www.scribd.com/bao_trinh
  43. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn - /CE:Dïng®Óchänchip. - D0 D7:lc¸cch©nnèivoDataBuscñahÖthèng. U2 AT28C64 10 11 9 A0 D0 12 8 A1 D1 13 7 A2 D2 15 6 A3 D3 16 5 A4 D4 17 4 A5 D5 18 3 A6 D6 19 25 A7 D7 24 A8 1 21 A9 RDY/BUSY 23 A10 2 A11 A12 22 27 OE 20 WE CE 28 VCC GND 14 H×nh2.9 –S¬®åch©ncña28C64 Ngoic¸clinhkiÖnchÝnh®kÓraëtrªn,khèiCPUcßncãrÊtnhiÒuthnhphÇn kh¸cnh−m¹chResetcñaCPU,th¹chanh11.0592MHz®Ót¹odao®éngchovi®iÒu khiÓn89C52 TrongkhèiCPUcãc«ngt¾c3tr¹ngth¸i SW2Select chophÐpng−êi södôngthay®æimøc®iÖn¸p®Ætlªnch©nEAcñavi®iÒukhiÓnchÝnh®Óchänthùc hiÖnch−¬ngtr×nhl−uëbénhítronghaybénhíngoi.Mét®iÒucÇnl−uýtrªnm¹ch CPUl®ÇuraP0cñavi®iÒukhiÓncÇntreotrëv×cængP0cñavi®iÒukhiÓnkh«ng ®−îcthiÕtkÕcãtrëkh¸ngtrong.NÕukh«ngtreotrëth×khinu«it¶ilínsÏlmsôt¸p trªnc¸cch©ntÝnhiÖudÉn®ÕnsùsailÖchtÝnhiÖu,lmhÖthèngmÊtchÝnhx¸c. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 43 www.scribd.com/bao_trinh
  44. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn 2.3.3.2GiaotiÕpxuÊt/nhËp PhÇngiaotiÕpxuÊtnhËpgåm2khèi:khèihiÓnthÞLCDvkhèibnphÝm.S¬®å nguyªnlýcñaphÇnnynh− h×nh2.10 : VCC VCC R9 VCC CR11 VCC GND GND 5K DATA BUS 104 LCD1 LCD BACK LIGHT POWER U1526 8255 GND 1 D0 34 VCC 4 VCC 2 SW7.8 D1 33 D0 PA0 3 3 J13 D2 32 D1 PA1 2 LCD_RS 4 1 2 D3 31 D2 PA2 1 LCD_R/W 5 VCC 2 1 GND 1 D4 30 D3 PA3 40 LCD_E1 6 2 3 D5 29 D4 PA4 39 LCD_E2 7 3 HEADER 2 D6 28 D5 PA5 38 LCD_D0 8 D7 27 D6 PA6 37 LCD_D1 9 SWITCH D7 PA7 LCD_D2 10 A0 9 18 LCD_D0 LCD_D3 11 A1 8 A0 PB0 19 LCD_D1 LCD_D4 12 A1 PB1 20 LCD_D2 LCD_D5 13 GND 35 PB2 21 LCD_D3 LCD_D6 14 /RD 5 RESET PB3 22 LCD_D4 LCD_D7 15 VCC /WR 36 RD PB4 23 LCD_D5 16 /CS_8255_LCD_KEYPAD 6 WR PB5 24 LCD_D6 CS PB6 25 LCD_D7 VCC PB7 14 PC0 15 PC1 16 PC2 17 R12.1 R12.2 PC3 13 10K 10K PC4 J14 12 PC5 11 U14 AT89C2051 PC6 10 2 12 ROW1 8 7 PC7 3 P3.0/RXD P1.0/AIN0 13 ROW2 7 GND 6 P3.1/TXD P1.1/AIN1 14 ROW3 6 GND GND 7 P3.2/INT0 P1.2 15 ROW4 5 8 P3.3/INT1 P1.3 16 COL1 4 9 P3.4/T0 P1.4 17 COL2 3 /INT0 11 P3.5/T1 P1.5 18 COL3 2 P3.7 P1.6 COL4 19 1 P1.7 5 XTAL1 4 KEYPAD XTAL2 8255_1 1 RST/VPP 20 Y12.1 KEYPAD, LCD 10 VCC C12.2 C12.3 GNDGND 12 MHz ADRRESS: 33p 33p GND GND PA_1:8000H VCC VCC VCC VCC PB_1:8001H C12.1 BT22 10uF CR13 RST 104 PC_1:8002H GND R12.3 CW_1:8003H 10k GND H×nh2.10 –S¬®ånguyªnlýphÇnxuÊt/nhËp BnphÝm GiaotiÕpbnphÝmchophÐpng−êisödôngcãthÓnhËpd÷liÖuvth«ngquac¸c phÝmchøcn¨ng®iÒukhiÓnho¹t®éngcñabéKIT. VíiyªucÇucñaKIT,tasödôngbnphÝmd¹ngmatrËn®ÓnhËpd÷liÖu.§Óqu¶n lý®−îcc¸cphÝmcñabnphÝmmkh«nglm¶nhh−ëngnhiÒutíiqu¸tr×nhthùchiÖn tÝnhto¸ncñavi®iÒukhiÓnchÝnh,tasödôngriªngmétvi®iÒukhiÓnlo¹inhá®Óqu¶n lýbnphÝm.BnphÝm®−îcx©ydùngtheokiÓumatrËn,gåm4hngx5cét. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 44 www.scribd.com/bao_trinh
  45. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn +4hng®−îclÊytõc¸cch©nP1.0 P1.3cñavi®iÒukhiÓn +5cét®−îclÊytõc¸cch©nP1.4 P1.7cñavi®iÒukhiÓnvcétcuèicïngnèi ®Êt. Tæchøcc¸cphÝmgåmc¸cphÝmtõ09tõAFlmthnhphÇnnhËpd÷liÖu. C¸cphÝmchøcn¨ngF1,F2lphÝmlùachänc¸clÖnhtrªnmenu,phÝmBACKSPACE lphÝmxãa,giópchØnhsöakhinhËpliÖunhÇm.PhÝmENTER®ÓkÝchho¹tlÖnhhiÖn hnh,tïytheong÷c¶nh,®−îchiÓnthÞtrªnLCD. TrªnbéKIT,bnphÝm®−îcdÆtt¸chrêisovíic¸cphÇnkh¸cëgãc®ÓthuËn tiÖnchoviÖcthaot¸ovãibnphÝm.S¬®ånguyªnlýcñabnphÝmnh− h×nh2.11 : BT1 BT2 BT3 BT4 BT5 0 1 2 3 F1 4 5 6 7 BT6 BT7 BT8 BT9 BT10 F2 8 9 A B BT11 BT12 BT13 BT14 BT15 J11 1 ROW1 BACK SPACE 2 ROW2 3 ROW3 4 ROW4 5 COL1 C D E F 6 COL2 7 COL3 BT16 BT17 BT18 BT19 BT20 8 COL4 ENTER HEADER 8 5X4 KEYPAD H×nh2.11 –S¬®åbnphÝm DochØlmnhiÖmvôqu¶nlýc¸cphÝm®−îcbÊmmkh«ngcÇnxölýphøct¹p nªntadïngvi®iÒukhiÓnlo¹inhá20ch©nrÊtth«ngdôngtrªnthÞtr−ênghiÖnnayl 89C2051cñahngATMEL. Vi®iÒukhiÓnnychØcãhaicænggiaotiÕplP1vP3.RiªngcænggiaotiÕpP3 th×thiÕumÊtbitP3.6,chØcãc¸cbitP3.0 P3.5vP3.7.§©ylvi®iÒukhiÓnthuéchä 8xC51nªnnãcãtÊtc¶nh÷ng®Æc®iÓmchungcñahäny. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 45 www.scribd.com/bao_trinh
  46. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn KhicãmétphÝm®−îcÊn,89C2051sÏgi¶imvgöid÷liÖumphÝm®−îcÊn lªnchovi®iÒukhiÓnchÝnhth«ngquac¸cch©nP3.0 P3.3.ViÖcth«ngb¸ochovi ®iÒukhiÓnchÝnhbiÕtcãphÝm®−îcÊnthùchiÖnquang¾tngoi1cñavi®iÒukhiÓn chÝnh.Ch©nP3.7sÏ®−îcnèivíich©nng¾tEX1cña89C52. U1 2 12 3 P3.0/RXD P1.0/AIN0 13 6 P3.1/TXD P1.1/AIN1 14 7 P3.2/INT0 P1.2 15 8 P3.3/INT1 P1.3 16 9 P3.4/T0 P1.4 17 11 P3.5/T1 P1.5 18 P3.7 P1.6 19 P1.7 5 XTAL1 4 XTAL2 1 RST/VPP H×nh2.12 S¬®åch©ncña89C2051 20 VCC AT89C2051 MntinhthÓlángLCD2408 §ÓcãthÓhiÓnthÞmétc¸chthuËntiÖn,linhho¹tc¸cth«ngsècñahÖthèng®ångthêi ®¶mb¶o®−îctÝnhmüthuËt,tachänmnh×nhtinhthÓlángLCD2408.§©yllo¹i mntinhthÓlánggåmcã8dßng,mçidßngcãthÓhiÓnthÞ24kýtù,rÊttiÖnchong−êi södôngtrongkhilmviÖcvíiKITëchÕ®émonitor. B¶ngchøcn¨ngcñac¸cch©n: Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 46 www.scribd.com/bao_trinh
  47. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn VCC R8 VCC GND 5K LCD LCD BACK LIGHT POWER GND 1 TÝn hiÖu ®iÒu khiÓn VCC 2 3 SW7.2 LCD_RS 4 J12 LCD_R/W 5 1 2 LCD_E1 6 VCC 2 1 GND 1 LCD_E2 7 2 3 LCD_D0 3 8 HEADER 2 LCD_D1 9 LCD_D2 10 SWITCH LCD_D3 11 LCD_D4 12 LCD_D5 13 LCD_D6 14 LCD 24x8 LCD_D7 15 DATA BUS 16 H×nh2.13 –S¬®åch©nvs¬®åcÊpnguåncñaLCD2408 LCD2408cã4ch©n®iÒukhiÓnv8ch©nd÷liÖu,4ch©n®iÒukhiÓnlRS, R/W,E1,E2. Ch©nE1,E2: ®−îcgäilch©n“Enable”.Ch©nnychophÐpgöid÷liÖuvo LCDhaykh«ng.E1dïngchänlmviÖcvíi4dßngtrªncñamnh×nh.E2lmviÖcvíi 4dßngd−íi.§ÓcãthÓgöid÷liÖuvoLCD,®Çutiªnch©nnyph¶i®−îcsetlªn“1”. SaukhithùchiÖnxongc¸clÖnh,ch©nnyph¶isetxuèng“0”®Ób¸ochobiÕtr»ng LCD®thùchiÖnlÖnhv®angchêlÖnhtiÕptheo. Ch©nRS :“RegisterSelect”.Khich©nnyëmøc“0”,LCDsÏbiÕtr»ngc¸cd÷ liÖutruyÒn®Õnnãdïng®Ó®iÒukhiÓnnh−c¸clÖnhxãamnh×nh,®ÆtvÞtrÝcontrá, NÕuRSëmøc“1”c¸cd÷liÖutruyÒn®ÕnLCD®−îcnãhiÓulc¸cd÷liÖud¹ngkýtù cÇnhiÓnthÞ Ch©nR/W:lch©n“Read/Write”.§ÓcãthÓghid÷liÖulªnLCD,ch©nnyph¶i ëmøc“0”.Cßn®Ó®äcd÷liÖutõLCDth×ch©nnyph¶iëmøc“1”.Tuynhiªntrong LCDchØcãmétlÖnh®äcd÷liÖutõLCD,®ãchÝnhllÖnhlÊytr¹ngth¸icñaLCD®Ó b¸ochobiÕtnã®angbËnhaykh«ng.ChÝnhv×vËych©nnyhÇunh−chØëmøctÝnhiÖu “0”. DB0DB7 :8ch©nd÷liÖucñaLCD. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 47 www.scribd.com/bao_trinh
  48. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn MçilÇnthùchiÖnmétlÖnh,LCDph¶imÊtmétkho¶ngthêigian®ÓhontÊtviÖc ny.ChÝnhv×vËykhiralÖnhthùchiÖnchoLCD,taph¶itrÔmétkho¶ngthêigian.Sau ®ãmíi®−îcthùchiÖnlÖnhtiÕptheo.Tuynhiªnph−¬ngph¸ptrÔkh«ng®−îcændÞnh vchÝnhx¸ckhitÇnsèth¹chanhthay®æi,cßnmétph−¬ngph¸pn÷alph−¬ngph¸p kiÓmtraLCD®s½nsngnhËnd÷liÖuhaych−ab»ngc¸chkiÓmtrabitcãträngsè caonhÊtD7cñathanhghilÖnh(l−uýlthanhghilÖnh,tøckhiRS=0),khibitny xuèng0b¸ohiÖuLCD®s½nsngnhËnlÖnhtiÕptheo.Ph−¬ngph¸pnycã−u®iÓm llmviÖcæn®Þnh,®ångbévkh«ngph¶imÊtthêigiantrÔd−rakh«ngcÇnthiÕt. §ÓchoLCDcãthÓho¹t®éng,®Çutiªntaph¶ikhëit¹oLCD,b¸ochonãbiÕtsè hng,sèkýtùhiÓnthÞtrªnméthng.C¸cd÷liÖu®iÒukhiÓnlÇnl−ît®−îcchuyÓnvo DataBuscñaLCDl38H,0EH,v06H.Sauc¸clÖnhkhëit¹oLCDnytamíicãthÓ hiÓnthÞkýtùlªntrªnmnh×nhLCD. ViÖcxãamnh×nh,®−acontrávÒgãctrªnbªntr¸icãthÓthùchiÖn®−îcb»ng c¸cchuyÓnd÷liÖu®iÒukhiÓn01HvoDataBuscñaLCD. C¸cthaot¸clËptr×nhvíiLCDsÏ®−îcbnkütrongphÇnx©ydùngc¸cbithÝ nghiÖmchoKIT. S¬®åkhèicñaLCD2408 Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 48 www.scribd.com/bao_trinh
  49. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Sau®©ylb¶ngmlÖnhcñaLCD: M (Hexa) LÖnh®ÕnthanhghicñaLCD 1 Xãamnh×nhhiÓnthÞ 2 TrëvÒ®Çudßng 4 DÞchcontrásangtr¸i 5 DÞchcontrásangph¶i 6 DÞchhiÓnthÞsangph¶i 7 DÞchhiÓnthÞsangtr¸i 8 T¾tcontrá,t¾thiÓnthÞ A T¾thiÓnthÞ,bËtcontrá C BËthiÓnthÞ,t¾tcontrá E BËthiÓnthÞ,nhÊpnh¸ycontrá F T¾tcontrá,nhÊpnh¸ycontrá 10 DÞchvÞtrÝcontrásangtr¸i 14 DÞchvÞtrÝcontrásangph¶i 18 DÞchtonbéhiÓnthÞsangtr¸i 1C DÞchtonbéhiÓnthÞsangph¶i 80 §−acontrávÒ®ÇudßngthønhÊt(*) C0 §−acontrávÒ®Çudßngthøhai(*) 38 HaidßngvmatrËn5x7 (*)§ÞachØcñac¸cdßngcôthÓcñaLCD2408nh−sau Dßng1 0080H Dßng2 0098H Dßng3 00B8H Dßng4 00D8H LCD2408®−îcph©nlm2nöamnh×nhvch©nE1,E2®−îcdïng®Óchän lmviÖcvíic¸cmnh×nhtheothøtù1,2,møctÝchcùccñac¸cch©nnylmøc"1". CôthÓ,vÝdôtamuèninkÝtù'A'lªndßng2cñanöamnh×nh2(d−íi)cñaLCD, tathùchiÖn: §ÆtE1=0,E2=1 ChuyÓnsangthanhghilÖnh:®ÆtRS=0 GöimlÖnhraLCD: mov LCD_DATA_PORT,#DONG2 Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 49 www.scribd.com/bao_trinh
  50. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn ChuyÓnsangthanhghid÷liÖu:®ÆtRS=1 InkÝtù'A':mov LCD_DATA_PORT,#'A' 2.3.3.3Vim¹chmëréngcænggiaotiÕpcãthÓlËptr×nh8255 Do89C52chØcã32®−êngxuÊtnhËpnªntasödông8255métvim¹chchuyªn U19 dôngcñahngIntel®ÓmëréngI/Ocña89C52.Sau®©y 34 4 33 D0 PA0 3 tat×mhiÓuküvÒvim¹chny. 32 D1 PA1 2 31 D2 PA2 1 30 D3 PA3 40 §©ylvim¹chcñahngInteldïng®Ómëréng 29 D4 PA4 39 28 D5 PA5 38 27 D6 PA6 37 D7 PA7 thªmc¸ccænggiaotiÕpchoc¸cvi®iÒukhiÓncòngnh− 9 18 8 A0 PB0 19 c¸cvi®iÒukhiÓn.Nã®−îcsödôngrÊtréngritrong A1 PB1 20 35 PB2 21 5 RESET PB3 22 c¸c øng dông ®iÒu khiÓn bëi tÝnh linh ho¹t v ®é æn 36 RD PB4 23 6 WR PB5 24 CS PB6 25 PB7 ®Þnhho¹t®éng.Chipcã3cængA,B,C®−îctruycËp 14 PC0 15 riªngbiÖt.C¸ccængny®Òucãkh¶n¨nglËptr×nhlm PC1 16 PC2 17 PC3 13 cængvohoÆcra®éclËp.Ngoirac¸ccængcña8255 PC4 12 PC5 11 8255 PC6 10 PC7 cßncãkh¶n¨ngb¾ttay,dovËy,chophÐpgiaodiÖnvíi c¸cthiÕtbÞkh¸ccòngcãtÝnhiÖub¾ttay,vÝdônh−m¸y H×nh2.14 S¬®åch©ncña8255 in. PA0PA7,PB0PB7 : C¶8bitcñacængA,B cãthÓ®−îclËptr×nhthnh8bitvo,8bitra,hoÆcc¶8bit2chiÒuvo/ra. PC0PC7: TÊtc¶c¸cbitcñacængC®ÒucãthÓ®−îclËptr×nhthnhc¸cbit vohoÆcc¸cbitra.8bitnycòngcãthÓ®−îcchialm2phÇn:PhÇncao(PC4 PC7)lCU(Uppersbits)vphÇnthÊp(PC0PC3)lCL(LowerBits).MçiphÇn cãthÓ®−îcsödông®éclËplm®ÇuvohoÆcra.Ngoira,tõngbitcñacængCtõ PC0PC7còngcãthÓ®−îclËptr×nhriªngrÏ. D0 D7 :c¸cch©nd÷liÖuD0D7cña8255®−îcnèitíic¸cch©nd÷liÖucñabé vi®iÒukhiÓn®ÓchophÐptrao®æid÷liÖugi÷achóng. RD,WR :LhaitÝnhiÖu®iÒukhiÓntÝchcùcmøcthÊpvlc¸cch©nvocña 8255.C¸cch©ntÝnhiÖucña/RD/WRcña8031/51®−îcnèi®Õnc¸cch©nny. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 50 www.scribd.com/bao_trinh
  51. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn RESET :L tÝn hiÖuvo tÝch cùc møc cao®−îc dïng®Ó xãa thanh ghi®iÒu khiÓn.Khich©nRESET®−îckÝchho¹tth×tÊtc¶c¸ccæng®−îckhëi®éngl¹ilm c¸ccængvo.TrongnhiÒuthiÕtkÕth×ch©nny®−îcnèitíi®ÇuraRESETcña bushÖthènghoÆc®−îcnèi®Êt®Ókh«ngbÞkÝchho¹t.Còngnh−tÊtc¶c¸cch©n vo cña IC, ch©n ny còng cã thÓ ®Ó hë. A0,A1,/CS :/CSlch©nchänchip,cßnA0,A1chophÐpchäncæng.C¸cch©n ny®−îcdïng®ÓtruycËpc¸ccængA,B,ChoÆcthanhghi®iÒukhiÓnnh−tr×nh byëb¶ngsau: /CS A1 A0 Chäncæng 0 0 0 CængA 0 0 1 CængB 0 1 0 CængC 0 1 1 Thanhghi®iÒukhiÓn 1 x x 8255Kh«ng®−îcchän B¶ngchäncængcña8255 C¸cchÕ®élmviÖccña8255 C¸ccængA,B,Ccña8255®−îcdïng®ÓnhËpxuÊtd÷liÖu,cßnthanhghi®iÒu khiÓnth×®−îclËptr×nh®ÓchänchÕ®élmviÖcchoc¸ccængny.C¸ccængcña 8255®−îclËptr×nhtheoc¸cchÕ®ésau: 1. ChÕ®é0(Mode0): §©ylchÕ®évo/ra®¬ngi¶n.ëchÕ®ény,c¸ccæng A, B, CL, CU cã thÓ ®−îc lËp tr×nh lm ®Çu vo hoÆc ®Çu ra. Nªn nhÊn m¹nhr»ng,ëchÕ®é0th×tÊtc¶c¸cbithoÆclm®Çuvo,hoÆclm®Çura mkh«ngthÓ®iÒukhiÓnriªngrÏtõngbitnh−c¸ccængP0P3cña8051.V× c¸cøngdôngliªnquan®Õn8255chñyÕusödôngchÕ®ényvKITcòng chØsödôngchÕ®énynªnchóngtasÏt×mhiÓuküh¬n. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 51 www.scribd.com/bao_trinh
  52. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn 2. ChÕ®é1(Mode1): ëchÕ®ény,cængA,BcãthÓdïnglmcængvo/ra haichiÒuvíikh¶n¨ngb¾ttay.TÝnhiÖub¾ttay®−îccÊpbëic¸cbitcña cængC. 3. ChÕ®é2(Mode2): ëchÕ®ény,cængAcãthÓ®−îcdïnglmcængvo/ra haichiÒuvíikh¶n¨ngb¾ttay,tÝnhiÖub¾ttay®−îccÊpbëic¸cbitcængC. CængBcãthÓ®−îcdïngnh−ëchÕ®évo/ra®¬ngi¶nhoÆcëchÕ®éb¾t tayMode1. 4. ChÕ®éBSR: §©ylchÕ®éthiÕtlËp/xãabit(BitSet/Reset).ëchÕ®ény chØcãnh÷ngbitriªngrÏcñacængCcãthÓlËptr×nh®−îc. LËptr×nhchÕ®évora®¬ngi¶n HngIntelgäichÕ®é0lchÕ®évo/rac¬së.MétthuËtng÷kh¸c®−îcsödông phæbiÕn®ãlvora®¬ngi¶n.ëchÕ®ényth×bÊtk×c«ngA,B,hayC®ÓthÓ®−îc lËptr×nhlmcængvohoÆcrariªngrÏ.Tuynhiªnmétcængkh«ngthÓ®ångthêivõa l®Çuvol¹ivõal®Çura. NhãmA NhãmB D7 D6 D5 D4 D3 D2 D1 D0 Chänmode CængA CængC 1=I/OMode 0=Mode0 PC3–PC0 1=Input 1=Mode 1 0=BSR 0=Output 1=Input Mode 0=Output CængC Chänmode PC7–PC4 Cæng B 00=Mode0 1=Input 1=Input 01=Mode1 0=Output 0=Output 1x=Mode2 H×nh2.15 Khu«nd¹ngtõ®iÒukhiÓncña8255(chÕ®évorac¬së) Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 52 www.scribd.com/bao_trinh
  53. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn 2.3.4Khèivo/raADC,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 VCC J7 U18 U14 ADC0809/LCC SW1 U1 26 8255 D0 34 4 4PA0 8 4PA0 26 17 4PA0 2 1 D1 33 D0 PA0 3 4PA1 7 4PA1 27 IN0 DB0 14 4PA1 VOUT VS+ TO BOARD NGOAI VI 3 D2 32 D1 VCC PA1 2 4PA2 6 4PA2 28 IN1 DB1 15 4PA2 LED 7 DOAN, LED MATRIX 8X8 D3 31 D2 PA2 1 4PA3 5 4PA3 1 IN2 DB2 8 4PA3 LM35/TO D4 30 D3 PA3 40 4PA4 4 2 IN3 DB3 18 D0 1 2 D5 29 D4 PA4 39 4PA5 VCC 3 3 IN4 DB4 19 D1 3 J6 4 D6 28 D5 PA5 38 4PA6 2 4 IN5 DB5 20 SW DIP-4 R3 D2 5 6 D7 27 D6 PA6 37 4PA7 1 5 IN6 DB6 21 D3 7 8 D7 PA7 IN7 DB7 D4 9 10 /RD 5 18 4PB0 4PC0 25 7 4PC5 D5 11 12 /WR 36 RD PB0 19 4PB1 C14.1 10uF 4PC1 24 ADDA EOC 10K R4 D6 13 14 A0 9 WR PB1 20 4PB2 HEADER 8 4PC2 23 ADDB D7 15 16 A1 8 A0 PB2 21 4PB3 GND ADDC A0 17 18 35 A1 PB3 22 4PB4 12 A1 19 20 /CS 6_8255 6 RESET PB4 23 4PB5 GND 16 +VREF 10K R5 /RD 21 22 CS PB5 24 4PB6 -VREF /WR 23 24 PB6 25 4PB7 CLK ADC 10 /CS_8255_7SEG_LED 25 26 PB7 CLK /CS_8255_MATRIX_LED 27 28 14 4PC0 4PC3 22 10K 29 30 PC0 15 4PC1 4PC4 9 ALE GND -12V 31 32 -12V GND PC1 16 4PC2 6 OE 12V 33 34 12V PC2 17 4PC3 START GND 35 36 GND PC3 13 4PC4 VCC 11 VCC -5V 37 38 -5V PC4 12 4PC5 VCC VCC 39 40 VCC PC5 11 CR14 PC6 10 104 7 PC7 8255_4_5 GND GND VCC GND VCC 12V 8255_2 CR15.1 ÑAÀU RA TÖÔNG TÖÏ C GND 7 J_OUT ANALOG ADC, DAC GND 3 + U17A HA17741 U15 13 DAC0808 6 1 4PB7 V+ 12 4 2 - 2 ADRRESS: 4PB6 11 A8 IOUT 4PB5 10 A7 CLOCK for ADC 4 4PB4 9 A6 2 PA_2:8004H 4PB3 8 A5 IOUT GND HEADER 2 CR16.1 4PB2 7 A4 -12V 4PB1 6 A3 GND R2 4PB0 5 A2 16 PB_2:8005H 330pF R15.1 R15.3 A1 COMP R17.1 2.7K CR16.2 VCC 14 U16 LM555 GND VR+ CLK ADC 3 7 1.5K 1K 15 4K7 PC_2:8006H C15.1 OUT DSCHG 10nF VR- 3 0.1uF 5 V- CV 4 R15.2 CW_2:8007H RST R1 6 VCC 1.5K THR 2 TRG 6.9K 8 -5V 1 VCC R15.4 GND 1K GND H×nh2.16 –S¬®ånguyªnlýkhèivo/raADC,DAC Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 53 www.scribd.com/bao_trinh
  54. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn C¸clinhkiÖnchÝnhcãtrongm¹ch: ADC0809 26 17 27 IN0 DB0 14 28 IN1 DB1 15 1 IN2 DB2 8 2 IN3 DB3 18 3 IN4 DB4 19 4 IN5 DB5 20 5 IN6 DB6 21 IN7 DB7 25 7 24 ADDA EOC 23 ADDB ADDC 12 16 +VREF -VREF 10 CLK 22 9 ALE 6 OE START 11 VCC H×nh2.17 S¬®åch©ncñaADC0809 ADC0809lvim¹chchuyÓn®æitÝnhiÖutõt−¬ngtùsangsè8bit.Vim¹chny ®−îcchÕt¹otheoc«ngnghÖCMOS.BéchuyÓn®æit−¬ngtùsènysödôngph−¬ng ph¸pchuyÓn®æixÊpxØ.SaisècñaphÐpchuyÓn®æil1bit.TuynhiªndoyªucÇuvÒ ®échÝnhx¸ccñatÝnhiÖutrongbéKITkh«ngqu¸caonªnsaisènh−trªnlchÊpnhËn ®−îc.Sau®©ylmétvi®Æc®iÓmcñavim¹chADC0809: - Nguånnu«i5V.D¶itÝnhiÖulèivot−¬ngtù5Vkhinguånnu«il+5V. CãthÓmëréngthang®ob»ngc¸cgi¶iph¸pküthuËtchotõngm¹chcôthÓ. - DÔdnggiaotiÕpvíivi®iÒukhiÓnv×®Çuracãbé®Öm3tr¹ngth¸inªncã thÓghÐptrùctiÕpvokªnhd÷liÖucñahÖvi®iÒukhiÓn. - Tængsaisèch−achØnh1/2LSB. - ThêigianchuyÓn®æi100 s. - TÇnsèxungclock10kHz–1028kHz. - §¶mb¶osaisètuyÕntÝnhtrongd¶inhiÖt®étõ–400C 85 OC. Chøcn¨ngcñac¸cch©ncñaADC0809: Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 54 www.scribd.com/bao_trinh
  55. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn - IN0–IN7:8ch©n®Çuvot−¬ngtù. - A,B,C:c¸cch©ntÝnhiÖuchänkªnh. - C¸cch©nD0 D7:lc¸c®Çurasè. - ALE:ch©ntÝnhiÖuchophÐpchètsèliÖu®Çuvo. - Start:xungchophÐpb¾t®ÇuchuyÓn®æi. - Clk:®ÇuvocungcÊpxungclockchoADC - Ref(+):®iÖn¸pvochuÈn+5v - Ref():®iÖn¸pvochuÈn0 - OE:Ch©nchophÐpxuÊtd÷liÖu®chuyÓn®æiraDataBus. - EOC:ChobiÕtqu¸tr×nhchuyÓn®æi®kÕtthóc. - Vcc:nguåncungcÊp Ho¹t®éngcñaADC0809:§Çutiªntaph¸ttÝnhiÖuvo3ch©nA,B,C®Óchän cængvot−¬ngtù.§Ób¾t®ÇuchoADC0809ho¹t®éng,taph¸txungvoch©nStart. TiÕptôcph¸txungALE®Óchètd÷liÖut−¬ngtù®Çuvo.Saukhiqu¸tr×nhchuyÓn®æi t−¬ngtù–sè®diÔnraxong.ADC0809sÏtùph¸tramétxungtrªnch©nEOC®Ób¸o chobiÕt®kÕtthócqu¸tr×nhchuyÓn®æi.§Ód÷liÖu®−îc®−arac¸cch©nD0 D7,ta ph¸tmétxungvoch©nOEcñaADC0809.B©ygiêcãthÓ®äcd÷liÖu®−îc. Trongm¹chnguyªnlýcñakhèivo/raADCDAC,ADC0809®−îc®iÒukhiÓn bëi2cængcña8255.CængPAcña8255®−îcnèivíic¸cch©nrasècñaADC,cßn viÖcph¸txung®iÒukhiÓnADC®−îcthùchiÖnbëi4bitthÊpcñacængPC. LM555 §©ylvim¹chdïng®Ót¹oxungclockchoADC0809.Vim¹chny®−îcsö dôngréngritrongc¸cøngdôngcÇnt¹oraxungvu«ngcãtÇnsèthay®æi.D−íi®©y ls¬®åkhèivc¸chlmviÖccñaICny. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 55 www.scribd.com/bao_trinh
  56. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn U1 3 7 OUT DSCHG 5 CV 4 RST 6 THR 2 TRG 8 VCC LM555 H×nh2.18 S¬®åch©nLM555 LM35 TrongphÇnchuyÓn®æiADC,DACngoi®ÇuvotÝnhiÖut−¬ngtùb»ngc¸c biÕntrëvichØnh,trªnKITcßntrangbÞmétc¶mbiÕnnhiÖt®é,häLM35.§©ylhä c¶mbiÕnnhiÖt,m¹chtÝchhîp,chÝnhx¸ccao,cã®iÖn¸p®ÇuratûlÖtuyÕntÝnhvíi nhiÖt®étheothang®éC.Häc¶mbiÕnnykh«ngyªucÇuc¨nchØnhngoiv×vènnã ®®−îcc¨nchØnh.Hänycho®iÖn¸pra10mVøngvíithay®æinhiÖt®él1 0C. U6 13 12 4 A8 IOUT 11 V+ 10 A7 9 A6 2 8 A5 IOUT 7 A4 6 A3 5 A2 16 A1 COMP 14 VR+ 15 VR- V- DAC0808 3 H×nh2.20 S¬®åch©ncñaDAC0808 H×nh2.19 S¬®åch©ncñaLM35 Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 56 www.scribd.com/bao_trinh
  57. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn DAC0808 DAC0808lvim¹chchuyÓn®æitÝnhiÖutõsèsangt−¬ngtùcã®échÝnhx¸c8 bit.TÝnhiÖut−¬ngtùldßng(I out )vnÕunèi®iÖntrëtíich©nI outth×kÕtqu¶sÏ®−îc chuyÓnthnh®iÖn¸p.Dßngtæng®−îccÊpbëich©nIout lméthmsènhÞph©ncña c¸c®ÇuvoD0–D7cñaDAC0808v®−îctÝnhtheoIref nh−sau: DDDDDD7654321 D D 0 I I OUT REF 2 4 8 16 32 64 128 256 Dßng®ÇuvoI REF ph¶i®−îc¸pvoch©n14.DßngI REF th−êng®¹tgi¸trÞ2mA. NÕuIREF=2mA,cßntÊtc¶®Çuvonèivíimøccaoth×dßng®iÖncùc®¹ië®Çural 1.99mA. ChuyÓnI OUT sang®iÖn¸pëDAC0808 NÕunèi®iÖntrëtíich©nI OUT th×dßng®−îcchuyÓnthnh®iÖn¸pvcãthÓkiÓm tra®Çurab»ngm¸yhiÖnsãng.Tuynhiªn,nh−vËysÏlmgi¶m®échÝnhx¸cdobÞ thay ®æi trë kh¸ng vo cña t¶i. V× vËy dßng I REF cÇn ®−îc c¸ch ly b»ng c¸ch dïng khuyÕch®¹ithuËtto¸n,vÝdônh−HA17741víi®iÖntrëhåitiÕpR f=5K. Chøcn¨ngc¸cch©n: - A1 A8:C¸c®Çuvosè - VR+:§iÖn¸pchuÈnd−¬ng - VR:§iÖn¸pchuÈn©m - V(V EE ):§iÖn¸psos¸nhhiÖuchØnh - V+:§iÖn¸pnguåncungcÊp - COMP:Ch©ntÝnhiÖusos¸nh - IOUT :Dßngrad−¬ng - /I OUT :Dßngra©m Sau®©ylm¹chøngdôngphæbiÕnnhÊtcñaADC0808: Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 57 www.scribd.com/bao_trinh
  58. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 58 www.scribd.com/bao_trinh
  59. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn 2.3.5Khèivo/raxungsè,®iÒukhiÓn®éngc¬b−íc V A ØO R A X UNG SOÁ Ñ I E ÀU K H I E ÅN Ñ OÄNG CÔ BÖÔÙC Ñ OÄNG CÔ 1 CH I E ÀU VCC CR3 104 GND ÑAÀU VAØO SOÁ VCC RN2 U3 26 8255 SW1 D0 34 VCC 4 3PA0 1 D1 33 D0 PA0 3 3PA1 3PA0 3PA0 2 D2 32 D1 PA1 2 3PA2 3PA1 3PA1 3 D3 31 D2 PA2 1 3PA3 3PA2 3PA2 4 D4 30 D3 PA3 40 3PA4 3PA3 3PA3 5 D5 29 D4 PA4 39 3PA5 3PA4 3PA4 6 D6 28 D5 PA5 38 3PA6 3PA5 3PA5 7 VAØO RA XUNG SOÁ D7 27 D6 PA6 37 3PA7 3PA6 3PA6 8 D7 PA7 3PA7 3PA7 9 /RD 5 18 3PB0 ÑOÄNG CÔ BÖÔÙC /WR 36 RD PB0 19 3PB1 D0 1 2 A0 9 WR PB1 20 3PB2 10k D1 3 J5 4 A1 8 A0 PB2 21 3PB3 D2 5 6 35 A1 PB3 22 3PB4 SW DIP-10 D3 7 8 /CS_8255_PULSE_STEPPER 6 RESET PB4 23 3PB5 D4 9 10 CS PB5 24 D22.13 D5 11 12 PB6 25 D6 13 14 PB7 3PA0 D7 15 16 14 3PC0 A0 17 18 GND PC0 15 3PC1 A1 19 20 PC1 16 3PC2 LED D22.14 /RD 21 22 PC2 17 3PC3 /WR 23 24 PC3 13 3PC4 3PA1 /CS_8255_PULSE_STEPPER 25 26 PC4 12 3PC5 27 28 PC5 11 3PC6 29 30 PC6 10 3PC7 LED D22.15 RN1 -12V 31 32 -12V 7 PC7 VCC 12V 33 34 12V GND 3PA2 1 GND 35 36 GND 2 -5V 37 38 -5V GND 3 VCC 39 40 VCC LED 4 D22.16 5 3PA3 6 8255_3 7 8 LED 9 D22.17 3PA4 8255_3 1k LED D22.18 J10 XUNG SOÁ, ÑOÄNG CÔ BÖÔÙC 3PA5 1 VCC 2 LED ADRRESS: D22.19 SW22.9 R22.9 3PA6 PA_3:8008H 3PC4 3PC4 3PC0 HEADER 2 3PC1 1K J11 3PC2 LED 3PC3 D22.20 PB_3:8009H SW22.10 R22.10 3PA7 3PC5 3PC5 1 2 PC_3:800AH 1K LED SW22.11 R22.11 HEADERJ9 2 CW_3:800BH 3PC6 3PC6 VCC 12V 1K 1 VCC 2 GND SW2 SW22.12 R22.12 3PC7 3PC7 HEADER 2 1K R22.21 D22.9 3PC4 ÑAÀU VAØO XUNG SW KEY-SPDT ÑAÀU VAØO XUNG 1K R22.22 D22.10 TÖØ CAÙC THIEÁT BÒ NGOAØI J_STEPMOTOR 3PC5 J6 J7 DAÏNG NUÙT AÁN U4 1 NHÖ ENCODER 2 2 2 1K 3PB0 1 18 3 OUT5 1 OUT6 1 3PB1 2 IN1 OUT1 17 4 R22.23 D22.11 3PB2 3 IN2 OUT2 16 5 3PC6 3PB3 4 IN3 OUT3 15 6 3PB4 5 IN4 OUT4 14 OUT5 HEADER 2 HEADER 2 3PB5 6 IN5 OUT5 13 OUT6 1K 7 IN6 OUT6 12 HEADER 6 8 IN7 OUT7 11 R22.24 D22.12 IN8 OUT8 ÑOÄNG CÔ BÖÔÙC ÑOÄNG CÔ 1 CHIEÀU 3PC7 10 COM 1K ULN2803 H×nh2.2 1Khèivo/raxungsèv®iÒukhiÓn ®éngc¬b−íc,®éngc¬1chiÒu LinhkiÖnchÝnhcãtrongm¹ch: §éngc¬b−íc §éngc¬b−ícthùchiÖnviÖcchuyÓnc¸cxung®iÖnthnhc¸cb−ícquaymÞncña motor.Docãsùt−¬ngøng11gi÷axung®iÖn®iÒukhiÓnvb−ícquaycñamotornªn ®éngc¬b−íccã®échÝnhx¸cdÞchchuyÓncao.V×vËy®éngc¬b−ícth−êng®−îcsö dôngtrongc¸cthiÕtbÞto¹®échÝnhx¸cnh−c¸nhtayrobot,m¸yin,m¸yvÏ,thiÕtbÞ khoahäc Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 59 www.scribd.com/bao_trinh
  60. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Nguyªnlýho¹t®éngvcÊut¹ocña®éngc¬b−íc®−îctr×nhbynh−sau: H×nh2.2 2NguyªnlýcÊut¹o cña®éngc¬b−íc. Nh−h×nhvÏtrªnllo¹i®éngc¬b−íclo¹inamch©mvÜnhcöu.Rotolmb»ng namch©mvÜnhcöucßnc¸ccuénd©y®−îcquÊntrªnstato.B−ícgãccñar«tol90 0. §éngc¬cã4cùc®−îc®ÆtëvÞtrÝ®èidiÖnnhautõngcÆpmét,gåm X , X v Y ,Y . TuúthuécvochiÒudßng®iÖnch¹yquac¸ccuénd©ymtõtr−êngcñastatosÏcã méth−íngnhÊt®Þnh.Do®ãrotosÏ®−îc®ÞnhvÞchÝnhx¸c. ViÖcthay®æithøtùchiÒudßng®iÖnch¹yquac¸ccuénd©ytheométtr×nhtù nhÊt®ÞnhsÏ®iÒukhiÓn®−îc®éngc¬ch¹ythuËnhaych¹yng−îcnh−mongmuèn.V tèc®écña®éngc¬cãthÓ®−îc®iÒuchØnhb»ngkho¶ngthêigiantrÔgi÷ahailÇnthay ®æithøtùchiÒudßng®iÖn. TheochiÒukim®ånghå Ng−îcchiÒukim®ånghå H×nh2.23NguyªnlýcÊpxungcho®éngc¬b−íc. Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 60 www.scribd.com/bao_trinh
  61. suu tam: trinhvubao.ac@gmail.com Gi¸otr×nhm«nKüthuËtVi§iÒuKhiÓnCh−¬ng21:thiÕtkÕKitvi®iÒukhiÓn Trongm¹chnguyªnlýëh×nh2.20cãmétheader6®Çura®Ó®iÒukhiÓn®éngc¬ b−íc(Steppermotor).Lo¹i®éngc¬b−íc®−îcl¾p®ÆttrªnbéKITl®éngc¬b−íccã ®iÖn¸pnguåncÊpl5Vv®éph©ngi¶il200,tøclvíimçinhÞp®iÒukhiÓn,motor b−ícsÏquaymétgãc=360 0/200=1,8 0. H×nhcñakhèixungsè,®éngc¬b−íc,®éngc¬1chiÒu Biªnso¹n:L©mt¨ng§øc –LªTiÕnDòng – Bém«nT§HTrang 61 www.scribd.com/bao_trinh