Vi điều Khiển PIC - Học Nhanh

Embed Size (px)

Citation preview

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    1/28

    Vi iu khin PIC - Hc nhanh i vo ng dng

    Li khuyn la chn b cng c lm vic vi PIC

    Mch np: PG2C - PIC TutorialChng trnh np: IC - PROGBootloader: Tiny bootloaderDebugger: ICD2 CloneChng trnh dch: MPLAB IDE - CCS C

    La chn PIC:

    - Mi hc: PIC16F628A hoc PIC16F88- Hc tng hp: PIC16F877A- Lm ti: PIC16F876A- Cn mnh hn: PIC18F458

    Cc loi trn u c th dng PG2C v IC-PROG 1.05D- iu khin ng c: PIC18F4331, PIC18F4431 (ICD2)- Lp trnh thut ton: dsPIC30Fxxxx (dng ICD2)

    trnh mt thi gian cc cu hi thng c lp i lp li v PIC, cc bn mi hc vPIC lu bi vit ny. Bi vit ny sc update lin tc khi c cc thng tin mi.

    0) Mt vi iu cbn v PIC

    - PIC16F84 l dng PIC ph bin nht c khuyn khch cho nhng ngi mi hc. Tuy nhin,gn y, dng PIC16F628A ra i, gi thp hn, nhiu chc nng hn, v thc s l dng PICFlash. N c hu ht cc chuyn gia khuyn dng bt u thc hnh v PIC. Hu ht cc

    tutorial mi u bt u chn PIC16F628A. Tuy nhin, hin nay dng PIC16F88 mi ra i, cngnhsra i ca PIC16F628A, PIC16F88 c nhiu chc nng hn PIC16F628A, gi c khngchnh lch l bao (khong 5000 n 10000 ng ti Vit Nam), v n h tr gn nhton bchc nng ca mt vi iu khin hin i. Do vy, chng ti khuyn cc bn nn chnPIC16F628A hoc PIC16F88 bt u hc v PIC

    Thi im thng 05 nm 2005- Gi hin nay ca dng PIC 18 chn dao ng t20.000 ng n 50.000 ng mi con- Gi dng PIC16Fxxxx dao ng t40.000 ng n 150.000 ng- Gi dng PIC18Fxxxx dao ng t100.000 ng n 300.000 ng- Gi dng dsPIC dao ng t150.000 ng n 350.000 ng hoc hn- Gi dng rfPIC dao ng t50.000 ng n 100.000 ng

    nh gi cc dng PIC- Dng PIC nhiu chn nht l dng PIC18Fxxxx, c nhng con schn ln n 80 chn- Dng PIC t chn nht l dng PIC10Fxxx, ch c 6 chn- Dng PIC ph bin nht l dng PIC16F877A ( mnh v tnh nng, 40 chn, b nh chohu ht cc ng dng thng thng)- Dng PIC m chng ti nh gi cao nht l dng PIC16F876A (28 chn, chc nng khng khcg so vi PIC16F877A, nhng nh gn hn nhiu, v schn cng khng qu t nhPIC16F88).- Dng PIC h tr giao tip USB l dng PIC18F2550 v PIC18F4550- Dng PIC iu khin ng c mnh nht l dng PIC18F4x31- Khi cho rng mnh chuyn nghip hn, cc bn nn dng PIC18F458- dsPIC chng ti khuyn khng nn dng v khng nn ngh ti khi mi hc, bn thn chng ticng cha c iu kin lm vic vi dsPIC mc d v lp trnh th dsPIC hon ton ging vi PIC

    thng thng.- Dng PIC tng hnh l dng PIC17xxxxx, hin nay khng cn c sn xut

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    2/28

    1) Mch np PIC, Bootloaders v cc chng trnh np tng ngMch nphttp://www.olimex.com/Trang web ny cung cp rt nhiu loi mch np ca PIC, c s nguyn l y , v tt ccc hng dn lin quan n vic ci t v sdng mch np. Trong ti liu hng dn PICTutorial, chng ti chn sdng mch np PG2C hng dn.

    http://siscobf.webcindario.com/winpic800.htmHi kh coi mt cht v n l ting Ty Ban Nha hay sao ? Nhng khng vn g, cc bndownload v, tng s hiu phi lm thno. Ti vn ch trng, ngi cha bit g dngPG2C.In Circuit Debuggerhttp://www.stolz.de.be/ICD2 Clone, np c hu ht cc loi PIC hin c, h tr debug trong mch v quan trng nhtl np c cho dng dsPIC30FBootloaderhttp://www.ac.ugal.ro/staff/ckiku/software/picbootloader.htmy l b tinybootloader, l b bootloader xn nht cho n by gi m ti bit.http://www.dontronics.com/rfarmer.htmlhttp://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en012031Microchip bootloader, ch h tr dng 16F, nhng l bootloader chnh thc ca hng, cung cpmin phChng trnh nphttp://www.ic-prog.com/2) Cc chng trnh dchChng trnh MPLAB IDE : http://www.microchip.com/Chng trnh CCS C (phin bn 3.222 c crack): download ti yChng trnh HT PIC (phin bn 8.05PL2 ngy 27/9/2004, c crack): download ti yChng trnh HT PIC18 (phin bn demo): http://www.hitech.com/Hng dn ci t: MPLAB, CCS C, HT PIC, HT PIC18 , download tt c3) Cc ti liu hng dn

    - Chng ti ng ton vn cc ti liu hng dn trong lung TI LIU HNG DN TING ANH cc bn tin download.Lu rng, chng ti ng nhng ti liu ny bng file .pdf thun tin cho vic download, ctrn my v in n. Chng ti khng mun ng file .doc v l do khng mun cc bn mi hcthun tay copy and paste. Chng ti hy vng rng thi gian u mi hc, cc bn nn kin nhnhc tng dng lnh, cch trnh by hiu r ni dung. Ngoi ra, theo nhng nh gi c nhn,nhng ti liu hng dn ny khng ging nhmt thvin source code, cch thc hin ti uho tng ti mt, nn cng khng ph hp vi cc bn mi hc.- Ti liu hng dn ting Vit ang c thc hin, v sng tng phn trong lung TI LIUHNG DN TING VIT.Ti liu ny cng cung cp dng file .pdf trnh sao chp, v l do chng ti mun son thohon thin ti liu ny trc khi cng b, v y cng l mc ch chnh ca din n picvietnam.4) Hng dn mch np Falleaf PG2C - PIC Tutorial- Ti liu hng dn ny c ng ti lung Falleaf PG2C - PIC Tutorial- Cc bn c th tm mua mch np ny v a CD i km thng [email protected] (H Ni)[email protected] (TPHCM)vi gi 35.000 ng/b5) Cc a ch tm source code ca PIChttp://www.piclist.com/ (a ch nhiu source code ca PIC nht trn i)6) Cc forum ting Anh v PIC- Forum chuyn v MPASM, c stham gia ca Nigel Goodwin:http://www.electro-tech-online.com/- Forum chuyn v CCS C, do chnh CCS C info xy dng:http://www.ccsinfo.com/forum/viewforum.php?f=1

    - Forum hng dn ca Olimex v SparkFun:http://www.sparkfun.com/Trang web ny hng dn cc mch do Olimex cung cp, hay ni cch khc SparkFun l forum

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    3/28

    ca Olimex.7) http://www.microchip.com/Trang web chnh ca Microchip PIC, cung cp:- datasheet- din n chnh ca Microchip PIC (nhng khng si ni lm)- mi trng son tho v trnh dch MPLAB (lun c phin bn mi nht)

    - bn cc linh kin (PIC, dsPIC, rfPIC, mch np, chng trnh dch, linh kin analog...)- bootloader chnh thc ca PIC dng cho 16F877A v 16F876A8) Mt strang web mua bn cc cng c h trPIC, cc sn phm tPIC...http://www.ccsinfo.com/ (bn chng trnh CCS C cho PIC)http://www.dontronics.com/dt101.html (bn mt ssn phm in t)http://www.digikey.com/ (bn mt ssn phm in t)http://www.phanderson.com/PIC/PICC/index.html (a ch mua trnh dch v thvin sourcecode)http://www.diendandientu.com/ (trong lung Mua Bn Linh Kin c mt sngi bun bn l ccsn phm PIC)9) Cc ti thc hin vi PIChttp://www.bobblick.com/techref/projects/propclock/propclock.htmlng h quay, dng n led v hin tng lu nh hin th gi, dng tn hiu xung trn ccmu rotor xc nh thi gian hin th.http://www.seattlerobotics.org/encoder/may97/picchip.html10) Email h trthc hnh PICCc bn c th email cho ti khi gp vn cn tvn v PIC qua a ch:[email protected] gi email, mong cc bn gi km theo mch nguyn l, chng trnh thc hin, v ccthng tin nh: bn sdng hiu hnh g? bn dng mch np no? bn dng chng trnhdch g? bn dng chng trnh np g? Cc li bo c th.... v tt nhin cc vn cc bnmun hi.Ti khng ha c th tr li tt c email ca cc bn, tuy nhin ti v cc bn ca ti s cgnght sc gip cc bn thc hin ti trn vi iu khin PIC.Ngoi ra, chng ti rt thch trao i v cc quan im thit k, tng sng to nht l v PIC,

    robotics, haptic device, biomedical equipements, radio frequency devices... Chng ti rt mong cc sng h v chia s ca cc bn.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    4/28

    C bn v picDi y l hnh mch chy ca PIC16F84A, PIC16F628A v PIC16F88. Tt c cc PIC ny u

    c v tr chn tng ng nhau, v thm ch c th ni PIC16F628A tng thch PIC16F84A vPIC16F88 tng thch vi hai loi cn li. C ngha l trong cc ng dng ca PIC16F84A, khi thayi bng PIC16F88, hay PIC16F628A u c.

    Tt nhin, 3 loi vi dng PIC trn y c th tng thch vi nhiu dng PIC c hn, nhng vth trng PIC Vit Nam ph bin vi 3 loi PIC ny, cho nn chng ti ch cp n 3 loi PICny m thi.

    Sau khi cc bn c mch np, chng trnh np, MPLAB IDE, CCS C hoc HT PIC, cc bn lmmch chy ny. K ty khi thit kcch mch test, hoc cc thit b ngoi vi khc, cn thnghim, cc bn ch vic thit kmch ngoi, sau cm vo cc chn ra v chy th.

    Khi mch chy tt, cc bn mun thit kc hon chnh, cc bn ch vic copy mch chy tOrcad v dn vo mch nguyn l ca thit b ca bn. Xo cc chn header i, v ni dy votrong mch chy PIC. Nhvy, chng ta khng phi tn thi gian thit kcho PIC na.

    Mt vi im lu v mch nhsau:

    - Ngun ch dng cho PIC, tuyt i khng dng b ngun ny cho thit b ngoi vi. Nu thit bngoi vi cn ngun, cc bn thit kb ngun ring. Mt sthit b ngoi vi qu n gin, v tnt dng, cc bn c th dng ngun chung (khong 100mA)- Ti khng khuyn khch dng dao ng ni ca PIC, bi v dao ng ni ch chy c 4MHz,v khng n nh nhdng thch anh ngoi. Mt s ti cng nghip, h dng thch anh chuncng nghip 4 chn, nn chng ta cng to thi quen dng thch anh ngoi, khng cn qu tndng 2 chn ca PIC.

    - Mch reset ny l mch reset n gin nht ca PIC, v to ch reset power on. Mt sng

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    5/28

    dng ca PIC yu cn mch brownout reset, cc bn c th tham kho trong datasheet. Nhng tithit ngh, nhng ti thng thng, khng cn dng mch brownout reset ny.

    - Chng ta thng nht chun thit kcho cc header l ni vo cc chn ca PIC theo ththai chn ngoi cng l Rx0 v GND. Mc ch l khi chy mch in, chn GND c thc xpra pha ngoi, chn Rx0 quy nh cho tt c cc port khc nhau, v c port ch c 3 chn, c

    port 5 chn, 8 chn... Nu ly chn RB7 lm chun chng hn, th s rt kh gii thch khi lychn RA4 t ra pha ngoi. V vy RA0 v RB0 chng ta ly lm chun. iu ny cng cthc hin trong mt stutorial, v gn nh l quy c bt thnh vn khi thc hin cc mch phttrin cho vi iu khin. Chn VDD (5V) c ni vo, nhm sdng cho cc ng dng cn c inp ng vo, nhng khng cao lm nh trn ni (100mA). Tuyt i khng thit kchn VSS(GND) v chn VDD (5V) hai u ca header, trnh tnh trng i khi chng ta khng cmnhm, c th lm hng PIC, hoc hng lun c thit b ngoi vi.- Cc nt bm v cng tc, ti thit k l cc nt bm 4 chn, v hin nay trn th trng hu nhch bn loi nt bm ny, v loi nt bm ny chc chn hn loi 2 chn trc y. Cc bn cnglu sau ny khi thit knt bm cng nn thit knt bm 4 chn.

    - Con n p 78L05 khc vi con 7805. N l dng TO92, tc l n ging nhcon transistor thngthng, nn rt nh, chkhng phi dng 3 chn v c tm tn nhit pha sau nhcon 7805. Dovy, mch thit ks nhi kh nhiu.

    - y, ti khng chy ra mch in, v rng ti mun dnh cng vic ny cho cc bn sinh vinmi hc. Sau khi cc bn lm xong mch in, nu cc bn c th chia s vi chng ti th tht ltuyt vi. Ch c mt iu lu l, chng ta thng khng cm trc tip vi iu khin vo mch hn, m chng ta cm qua mt socket c th g ra lp trnh li, v m bo khng bchy PIC khi hn. Do vy, khi cm socket, cc bn s c th nht hai t ni thch anh vo bntrong socket, khi cm PIC ln, n s che hai ci t i, v mch ca cc bn s gn gng hn.Socket loi 18 chn khng th nht thch anh v in tr ni tchn MCLR n VDD vo bntrong c, nhng sau ny khi dng PIC 28 hoc 40 chn, cc bn nn nht tt c vo bn disocket cho mch gn gng hn.

    - Mt im cui cng, chng ti khng thit kphn np bng ICSP, bi v chng ti khng munlm cho cc bn mi hc PIC cm thy bi ri. Chng ta s thc hin mch chy PIC vi cc chnICSP v bootloader sau.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    6/28

    Hc vi iu khin PIC trong 1 ngy

    Bi tp 1: Bt tt n LED

    Cc dng ca LED c ni vi in tr, in trc ni vi cc chn vi iu khin. Cc m caLED c ni vi GND ca vi iu khin. Nhvy, khi chn vi iu khin mc cao, tc l 5V, nLED s sng. Khi chn vi iu khin mc thp (0V) n LED s tt.

    Lu trong hnh: Gi tr ca in trc xc nh da vo dng ti a ca vi iu khin, in pv dng in ti a ca n LED. Nhvy, gi tr nh nht ca in trc dng c tnh tonnhtrong hnh. R = 125 Ohm.

    Tuy nhin, m bo hot ng ca n LED, chng ta nng gi trin tr ln thnh 200 Ohm.n LED khi sng qu, ch cn s tay vo n, hoc cc va chm mnh, hoc trng hp b tnhin, n LED c th b hngay. Hin tng ny d thy nht l cc LED cc sng dng trongcc bng hiu hoc bin bo giao thng, cc n LED cc sng ch cn chm tay vo, s c hintng tnh in v n ngay. Vi cc LED thng v dng trong th nghim, kh xy ra hin tngny, tuy nhin cht lng sn xut ca cc n LED cng khng m bo, do vy chng ta chngii php an ton l trn ht. Hn na, chng ta cng khng cn n LED qu sng.

    bt u bi tp 1, chng ta tm hiu s qua v cu trc mt chng trnh vit bng MPASM

    nhsau:

    Bt cmt chng trnh ASM no, cng c bt u bng vic gii thiu v chng trnh, tnchng trnh, ngi thc hin chng trnh, ngy thc hin chng trnh, ngy hon tt, ngikim tra li chng trnh, ngy kim tra chng trnh, phin bn ca chng trnh, m t phncng ca mch giao tip v mt sch thch. V vy, ti a ra y mt form m ti cho rng hpl, ty v sau, cc bn ch cn ct dn form ny, thay i ni dung tng mc lm phn mu.Chng ta quy nh mt squy c sau:;========== dng phn cch cc phn chnh ca chng trnh;---------------- dng phn cch cc chng trnh con ca chng trnh

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    7/28

    Code:

    ;================================================= =======

    ; Ten chuong trinh : Mach test den LED_1; Nguoi thuc hien : Falleaf; Ngay thuc hien : 23/05/2005; Phien ban : 1.0; Mo ta phan cung : Dung PIC16F628A - thach anh 10MHz; : LED giao tiep voi PORTB; : Cuc am cua LED noi voi GND; : RB0 - RB7 la cac chan output;----------------------------------------------------------------; Ngay hoan thanh : 23/05/2005; Ngay kiem tra : 23/05/2005; Nguoi kiem tra : Doan Hiep;----------------------------------------------------------------

    ; Chu thich : Mo ta cac diem khac nhau cua cac phien ban khac nhau; : hoac cac chu thich khac; : vd, dung che do Power On Reset, PORTB = 00000000; : hoac, chuong trinh viet cho PIC Tutorial; : hoac, chuong trinh nay hoan toan mien phi va co the dung cho; : moi muc dich khac nhau;================================================= =======

    Mc d cha chc rng on ch thch ny c th ngn hn chng trnh cc bn vit, v nhvyvic vit ch thch di hn vic vit chng trnh? Khng, thc scc ch thch ny rt quantrng, v sau 1, 2, 3 nm, cc bn nhn li, cc bn s vn cn hiu c mnh lm g. C thkhi mi bt u, cc bn thy cng vic ghi ch ny l nhm chn, chnh v vy, ti cung cpform ca ghi ch ny, cc bn sau ch cn ct v dn. Ti hy vng rng cc bn nn to thi

    quen a on ch thch ny vo chng trnh cc bn tr nn chuyn nghip hn khi lm vicvi vi iu khin, c thy l PIC.

    Tt nhin, y l bi hc u tin, do vy cc ch thch sc ghi rt chi tit, nht l khi m tphn cng. Sau ny, vi cc mch phc tp hn, cc bn khng th ghi ch qu chi tit nhthny c, cc bn ch ghi ch nhng im chnh thi. Cng tt nhin, khi lp trnh vi CCS C hayHT PIC, cc bn cng nn ghi ch nhvy trong chng trnh chnh, nhng chng ta cha bnn CCS C v HT PIC y.Phn thhai cc bn cn hc, l khi to PIC. Phn ny l phn bt buc theo sau phn ghich, bi v chng trnh dch cn phi hiu bn ang lm vic vi con PIC no, lm vic vi n nhthno?Code:

    ;================================================= ======TITLE "Mach test LED_1"PROCESSOR P16F628AINCLUDE __CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC

    ;================================================= ======

    Cc bn s thy rng c mt stkho nhsau:TITLE: dng cc bn ghi ch thch tn chng trnh. TITLE l ten chng trnh chnh. C phpghi TITLE nhtrn. Nh phi c du nhy kp khi vit tn chng trnh.PROCESSOR: dng khai bo dng vi iu khin m cc bn sdng. Cc bn lu , trongMPLAB quy nh, khng vit y tn PIC16F628A m ch vit P16F628A, v trong chng trnh

    dch quy nh nhvy.INCLUDE: dng a thm vo cc file m bn vit trong chng trnh. Mc nh, trong MPLABng dn n thmc cha file P16F628A.inc c sn. Nu bn t file ni khc khng phi

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    8/28

    trong thmc bn ang lm vic, hoc cc file include khong phi l file .inc c sn ca MPLAB,th cc bn phi chng dn r rng. Lu rng, MPASM dch c, cc bn phi t ngdn tthmc gc n ht tn file (k c phn m rng ca file) khng c qu 60 k t.__CONFIG: dng thit lp cc ch hot ng ca PIC. Cc bn c th xem hiu thm vcc ch hot ng ny trong ti liu

    PICmicroMid Range MCU FamilyReference Manual

    Section 27. Device Configuration BitsTable 27-1 page 27-7

    Ti liu ny c th download trn trang web ca microchip http://www.microchip.com/, keyword:MidRange Manual.

    Mi directive t ch, cch nhau mt k t&.Nu ghi ch hot ng vo y, cc ch hot ng s trng thi mc nh khi khi ng.Cc bn cng c cch khc t ch hot ng bng cch tc ng trc tip vo cc thanhghi khi to. Tuy nhin, vic ny l vic lm khng cn thit, khi chng ta c cc directive vit tt.

    Nhvy, chng ta t y ch _CP_OFF, tc l khngt ch bo v source code khinp vo PIC, sau khi np vo s c thc ngc li tPIC ra. Chng ta khng cn bo vchng trnh ny, bn c thc ngc bng IC-PROG v kim tra li.

    Ch _PWRITE_ON, tc l cho timer 0 chy khi Power On Reset. Thc ra timer0 c chy haykhng cng khng quan trng, v n chng lin quan g n cng vic ca chng ta. Nu sau nymun dng timer0, th cc bn vn phi khi to li gi tr cho n, chu th sdng gi trngu nhin ca n c, thnh ra c cho n chy, sau ny cn dng khi phi khi to._WDT_OFF, ti thi im ny, ti tt Watch Dog Timer v l do cc bn cha nn tm hiu phnny vi._HS_OSC, chng ta dng thch anh 10MHz, tc l chy ch dao ng HS. Tham kho ti:

    datasheet PIC16F628ASection 14. Special Features of the CPU14.2. Oscillator ConfigurationPage 95

    Mt im lu cui cng l cc bn phi sdng phm TAB phn cch cc ct ca mt chngtrnh vit bng MPASM. Cc dng khi to ny c vit ct th3. Cc directive __CONFIG,TITLE, PROCESSOR, INCLUDE c vit vo ct th3. Cn chi tit khi to c vit vo ct tht.

    Ct thnht dng vit cc [NHN], ct thhai vit m lnh, ct thba li dng vitchi tit cc tham sca lnh, v ct thtb trng to khong cch vi ct thnm. Ct thnm dng vit cc ch thch.

    Cc ch thch bt u bng du chm phy ( . Trn mt dng, tt c cc k tvit saudu chm phy u v ngha. Chnh v vy, khi vit phn ch thch ban u, cc bn thy rng ttc ni dung u bt u bng du chm phy. Nhvy, mt dng lnh c c th nhsau:Code:

    NHN LNH thamso1, thamso2 ; ch thch dng lnh

    By gi chng ta dnh cht thi gian cho l thuyt, cc bn m datasheet PIC16F628A trang 15,Section 4. Memory OrganizationChng ta s thy rng t chc b nh chng trnh ca PIC c chia ra lm my phn nhsau:- Pointer- Stack

    - Interrupt vector- Program memory

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    9/28

    Chng ta tm thi cha bn n pointer v stack.Interrupt vector c t a ch 0x0004Program memory c t a ch 0x0005Vy ta ch 0x0000 n a ch 0x0003 chng ta lm c g?

    Khi PIC c reset, n lp tc nhy va ch 0x0000. Ri csau mt chu k my, nnhy n a ch tip theo, xem xem trong a ch yu cu n lm g, n thc hin vic ,

    xong ri li nhy tip. C lm nhthcho n khi ht chng trnh. Tt nhin, khi chng ta thchin mt s lnh iu khin v tr nhy, th n s nhy khng theo thtna, nhng vic nycha bn vi. Chng ta trc mt ch cn bit rng n cnhy nhvy cho n ht chng trnh.

    Nhvy, nu khng sdng ngt, th chng ta vit chng trnh ta ch 0x0000 lun, vn cth l nhy t0x0000 khi khi ng, cho n ht chng trnh. Tuy nhin, nu lm nhvy, sau ny chng ta sdng chng trnh ngt, th chng ta s gp trc trc v thi quen vitta ch 0x0000.Chnh v vy, chng ta nn t chng trnh trong phn Program Memory nh thit kPIC.Vy, chng trnh ca chng ta s vit nhsau:Code:

    ;================================================= ===================

    ORG 0x0000GOTO MAIN

    ORG 0x0005MAIN.....

    END.;================================================= ===================

    y s l cu trc mt chng trnh m chng ta s thc hin. Directive ORG dng xc nha ch m chng ta s lm vic. By gi chng ta xem tip n trang 16 ca datasheet. Chng ta

    thy rng, b nh d liu ca PIC16F628A c chia ra thnh 4 BANK, hay chng ta gi ting Vitl 4 BNG. Trong 4 bng ny, chng ta thy r n c chia lm 3 phn. Phn thnht l phncc thanh ghi c a ch xc nh (c ghi ch bn cnh) v c tn tui r rng. Nhng thanhghi ny c gi l nhng thanh ghi c bit ca PIC. Tn ca chng, thc ra khng c, mtthanh ghi chc xc nh bng a ch ca thanh ghi m thi.

    Tuy nhin, chng ta lm ng tc include file P16F628A.inc, file ny nh ngha sntn cc thanh ghi ny, v l quy c ca MPLAB, ng thi cng l quy c chung cho tt cngi dng PIC. Chng ta c th thay i, sa cha nhng nh ngha ny, tuy nhin vic lm va khng cn thit, li va gy ra rt nhiu kh khn khi lm vic nhm.

    Vy cc bn phi hiu, nhng tn thanh ghi ny xem nh l khng thay i trong PIC, vchng ta sdng n nhn tn ti vi chc nm nay.

    Phn thhai, l phn General Purpose Register. Chng ta gi n l cc Thanh Ghi DngChung. Nhng thanh ghi ny cha c nh ngha, v v thn cng khng c tn. Nhng thanhghi ny c gi tr nhcc bin trong chng trnh m chng ta s sdng.

    Phn thba, l cc thanh ghi nm a ch 70h n 7Fh, v v tr tng ng ca n bng 1, 2, 3. Cc thanh ghi tng ng bank1, 2, 3 s tng thch vi cc thanh ghi t70hn 7Fh bng 0. Tuy nhin, chng ta tm thi cha quan tm n phn ny.By gi chng ta hc vit chng trnhCode:

    ;================================================= ==============================ORG 0x0000GOTO MAIN

    ORG 0x0005

    MAIN

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    10/28

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    11/28

    4) Trong trng hp mch ny, cc bn s lm thno?

    Kt lun: Qua bi hc ny, cc bn hc c cc ni dung sau:- Lm mt mch chy PIC- Cu trc mt chng trnh PIC- Lp trnh tmy tnh, np vo PIC, v cho PIC hot ng- Hiu c hot ng xut nhp ca PIC, chc nng ca thanh ghi TRISA, TRISB, PORTA, PORTB,hiu c cc lnh CLRF (xo thanh ghi bt k), MOVLW (ghi mt gi tr bt k vo thanh ghi W),MOVWF (ghi gi tr ca thanh ghi W vo mt thanh ghi khc), BSF (bt mt bit trong mt thanhghi bt k), GOTO (nhy n mt nhn bt k), GOTO $ (nhy ti ch), BANKSEL (chon bngtrong b nh chng trnh, cha mt thanh ghi bt k), ORG nh a ch trong b nh chngtrnh. Hin nay cc bn cha hc n lm thno Input, nhng c th cc bn s thc hin ddng bng vic thay LED bng mt nt bm. Hoc gi, cc bn mun n LED nhp nhy, vnguyn tc cc bn c th thc hin bt tt lin tc n LED bng lnh BSF v BCF. Nhng lm

    nhthn nhy qu nhanh, khng th thy c.Bi hc sau, chng ta s hc cch vit hm Delay, v cc bn c th thc hin vic lm cho nLED nhp nhy, lm cho dy n tRB0 n RB7 chy qua chy li...Chc cc bn may mn trong bi hc u tin, v chc cc bn thnh cng vi PIC!

    ******* &&& *******

    Thanh ghi WTrong bi ny, chng ta ni i nt v thanh ghi W cc bn nm r hn phng thc hot ngca PIC.Khi nim thanh ghi W:Thanh ghi W l thanh ghi lm vic (Working register), v hu ht mi lnh ca PIC u lin quan

    n thanh ghi W ny, ly th d nhADDLW (cng mt svo gi tr c trong thanh ghi W),SUBWF (trgi tr ca thanh ghi W cho mt thanh ghi khc), XORLW (ly XOR ca mt svthanh ghi W)... V cc bn rng, tng s lnh c th tng tc vi thanh ghi W l 23/35lnh, gn nhchim ton b tp lnh ca PIC. Vy chng ta ghi nhn iu thnht, khi PIC lmvic, gn nh lun lun tng tc vi thanh ghi W.

    iu thhai, cc bn nhn trong bn b nh d liu ca PIC, cc bn s thy l thanh ghi W lthanh ghi khng c mt bt k bng no ca b nh d liu, trong khi thanh ghi STATUS cmt c 4 bng. Cc bn li thy mt iu rng, thanh ghi W v thanh ghi STATUS c thctruy nht ttt c cc bng, v tbt ku trong chng trnh, v v vy chng tr thnhnhng thanh ghi ton cc nht. im khc bit gia chng ra sao? u l skhc bit gia thanhghi W v cc thanh ghi khc?

    im thba, trong tp lnh ca PIC, khng c lnh no cho php tng tc trc tip gia mtthanh ghi trong b nh d liu dng chung vi mt gi tr thm vo, m u phi thng qua thanh

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    12/28

    ghi W. Nhvy, thanh ghi W l cu ni ca hu ht cc php ton c thc hin trn cc thanhghi nm trong b nh d liu. Nhvy, thanh ghi W v cng quan trng trong hot ng ca PIC.Nhc li kin trc Harvard v Von Newmann:

    Hnh sau s gi li cho cc bn nh v kin trc Harvard v Von Newmann, trong cc bnlun nh rng c sphn bit gia b nh d liu v b nh chng trnh. Cc bn thy rng busb nh chng trnh ca PIC midrange ch c 14 bit.

    Vi c im ny, chng ta s phn tch v sao cn phi c thanh ghi W, v sau chngta s phn tch tt c cc hot ng ca thanh ghi W trong mt chng trnh vit bng PIC, nuc th. Nhng g cn li, chng ta s xem trong bi tp lnh ca PIC midrange.V sao cn phi c thanh ghi W?

    Bn s lm thno tnh php ton sau: ly gi tr a ca thanh ghi A cng vi gi tr bca thanh ghi B v t vo thanh ghi A? Mt gii hn ca tp lnh PIC l khng cho php cng haithanh ghi v t vo mt thanh ghi khc. Do , cc bn s phi thc hin thao tc sau:

    Chuyn gi tr b tthanh ghi B vo thanh ghi W, sau ly gi tr ca thanh ghi W (lc ny lb) cng vi gi tr a thanh ghi A, sau gn li vo thanh ghi A. on code c thc hin nhsau:Code:

    MOVF B, W ; chuyn gi tr ca thanh ghi B vo thanh ghi WADDWF A, F ; cng gi tr ca thanh ghi A vi gi tr b cathanh ghi W v gn li vo A

    Khi cc thanh ghi A v B khng nm trong cng mt bng, khi thao tc vi tng thanh ghi, ccbn ch vic i v bng cha cc thanh ghi l xong. Mt on lnh hon chnh c th thchin cho bt k 2 thanh ghi no c vit nhsau:Code:

    BANKSEL BMOVF B, W

    BANKSEL AADDWF A, F

    on chng trnh ny cng minh ho lun cho vic thanh ghi W l mt thanh ghi ton cc,khi chng ta thao tc vi thanh ghi B mt bng bk, nhng khi chuyn gi tr b tthanh ghi Bvo thanh ghi W ri, th chng ta khng cn quan tm rng gi tr nm u, ch cn chuynv bng cha thanh ghi A th lnh cng sc thc hin mt cch d dng.

    Mt th d khc v lnh cng, nhng khng phi l cng gi tr nm trong 2 thanh ghi, m lcng gi tr a ca thanh ghi A vi mt sk cho trc no , gi sk = 5 v lu vo thanh ghi A.

    Chng ta thy rng, hon ton trong tp lnh khng c lnh cng trc tip mt thanh ghi vimt s, m ch c lnh cng mt svi thanh ghi W. Nhvy chng ta phi thc hin thao tcsau: chuyn gi tr a tthanh ghi A vo thanh ghi W, cng thanh ghi W vi hng sk = 5, sau chuyn gi tr mi ca thanh ghi W tr li thanh ghi A. iu ny c thc hin nhsau:

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    13/28

    Code:

    MOVF A, WADDLW d'5'MOVWF A

    Trong th d ny, chng ta s khng thy W l mt bin tm na, m tr thnh mt thanh ghidng lu kt qu cng vi mt con s. n by gi, th chng ta s gi thch r hn v saochng ta phi lm nhvy.

    Chng ta thy r rng rng, mt dng lnh ca PIC midrange, c m t bng 14 bit. iu nyc ngha l, khi thc hin mt lnh cng, khng th no dng lnh va lu a ch ca thanhghi A, va lu gi tr 8 bit ca hng sk c, v mt thanh ghi trong dng PIC midrange cn tithiu 7 bit biu din a ch thanh ghi, v mt hng schim 8 bit. N vt qu con s14 bitcho php m ho lnh. Chnh v vy, khng th thc hin lnh cng trc tip tmt thanh ghivi mt sc. Quay li th d trn, chng ta cng thy rng khng th thc hin vic cnghai thanh ghi vi nhau, nu nhcn lu 2 a ch thanh ghi, chng ta s mt 14 bit, v nhvykhng c cc bit m ho m t lnh cn thc hin l g.

    y chnh l im khc bit gia tp lnh RISC v tp lnh CISC. Tp lnh CISC c th thc hinlnh phc, v n c th to ra mt lnh di 8 bit, 16 bit, 24 bit... v l b sca 8 bit. Do , nucn cng 2 thanh ghi 8 bit, n hon ton c th to ra mt lnh di 24 bit, trong 8 bit dng m ho, 8 bit dnh cho a ch ca thanh ghi thnht, 8 bit dnh cho a ch cua thanh ghi th2.Trong khi , tp lnh RISC l tp lnh rt gn, cho d n l lnh g, n cng lun lun ch c 14bit (i vi PIC midrange).Thanh ghi W ging nhmt thanh ghi mc nh duy nht, v vy, khi thc hin, b x l trungtm c th gii m c nu lnh c cn thao tc vi thanh ghi W hay khng, m khng cnlu a ch ca thanh ghi W bn trong on m lnh.Chng ta xem hnh di y bit c b x l logic hot ng nhthno vi thanh ghi W.

    Vy chng ta thy r scn thit ca thanh ghi W, bi v chng ta cn c mt thanh ghi tmcho cc cng vic tnh ton, v chng ta cn m ho thanh ghi m khng cn tn qu nhiu bit,vy th thanh ghi W va l thanh ghi c tnh ton cc, va l thanh ghi tm, va l thanh ghikhng cn thit nhiu bit biu din a ch.

    Cc bn bit v sao chng ta phi cn thanh ghi W, by gi chng ta cn bit thanh ghi W hot

    ng nhthno trong cc chng trnh ca PIC.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    14/28

    Bi 2 - DELAY FUNCTION

    Qua bi hc thnht, chng ta hc v cch bt tt mt n LED. By gi nu mun lmcho n LED nhp nhy, c ngha l chng ta bt n LED, sau ch mt khong thi gian, vtt n led i, sau li ch mt khong thi gian na v li bt n led ln. Mun thc hin

    vic ny, chng ta phi tm cch lm mt hm delay (delay - ting Anh c ngha l tr, chm li)Hm DELAY l mt hm rt thng dng khi lp trnh thi gian thc. Nguyn l ca hm delay ldng thi gian thc hin cc lnh ca vi iu khin lm thi gian tr. Nhcc bn bit (nucha bit th by gi bit.. hihi), mi lnh ca vi iu khin, khi thc hin, cn phi tn mtkhong thi gian no . Nu mt vic lm m khng tn thi gian th ng l v l. Vy thi gianthc hin mt lnh ca PIC l bao lu?

    Nhtrong bi hc u tin chng ta cp, chng ta sdng thch anh t4MHz n10MHz v n 20MHz. Thch anh ny to ra cc dao ng xung nhp chnh xc duy tr nhngkhong thi gian xc nh cho vi iu khin hot ng.Chng ta xem hnh sau hiu c nguyn l to dao ng bn trong vi iu khin:Hnh 1:

    Thch anh to dao ng trn cc chn OSC, a vo bn trong PIC. PIC sm 4 nhp trn daong thch anh, v thc hin mt lnh. Nhvy, thi gian thc hin mt lnh chnh l 4 nhpdao ng ca thch anh.Chng ta thng gi thi gian thc hin mt lnh ca PIC l mt chu k my (on s2 trnhnh). Vy mt chu k my bng bao nhiu, nu chng ta sdng thch anh 10MHz cho PIC?

    Code:

    Tn s dao ng ca thch anh:F_osc = 10MHzChu k ca dao ng thch anh:T_osc = 1/10.000.000 sChu k myT_instruction = 4 * T_osc = 4/10.000.000 s = 0.0000004 s = 0.0004 ms = 0.4 us = 400ns

    Nhvy, mt lnh my c thc hin trong vng 0.4 micro giy, hay 400 nano giy.

    Tng t, khi cc bn dng thch anh 4MHz, chu k my s l 1us, v dng thch anh 20MHz,chu k my s l 200 nano giy.Quay tr li vi vic nu chng ta cn thc hin mt vic g ging nhnhp nhy n

    LED, th chng ta cn PIC phi dng li, khng lm g c ch chng ta. Nu nh lnh NOP (lnhkhng lm g) s gip chng ta ch 0.4 us, m chng ta cn ch 1 giy, th chng ta vit baonhiu lnh NOP cho ? Thay v nhvy, chng ta vit mt vng lp cho vi iu khin lm mtvic v thng v pht no N ln, v mi ln nhvy n tn T chu k my. Nhvy, sau khikt thc vic lm v thng v pht , vi iu khin ch chng ta N * T chu k my. vit mt vng lp nhvy, trc tin chng ta hc cch t bin.Mt bin c t trong PIC, thc cht l mt tn gi chung cho mt hoc nhiu thanh ghi cc gitr. Trong phn ny, chng ta chn gin lm t bin c ngha l t tn cho mt thanh ghi.Thc ra, chng ta hon ton khng cn t tn, m c th gi trc tip a ch ca thanh ghi,nhng nu lm nhvy, sau ny, khi chng trnh phc tp dn ln, chng ta s d b ln ln cc

    bin.Khi t bin, thanh ghi ny nm u? N s nm trong b nh chng trnh v c th,

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    15/28

    n s nm trong vng nh dng chung m chng ta cp trong bi hc trc.Vy lm thno t bin? C rt nhiu cch t bin, v trong phn ny, ti s hng dn ccbn cch t bin m ti cho rng r rng nht.

    Code:

    ;================================================= =================

    ORG 0x020COUNT_L RES 1COUNT_H RES 1COUNT_N RES 3

    ;================================================= =================

    Cc bn va lm g?Directive ORG dng xc nh a ch vng nh. Cc bn lu rng, khi xc nh a ch

    vng nhy, chnh l cc bn xc nh a ch vng nh d liu, chkhng phi a ch vng

    nh lp trnh. Nhng g cc bn vit pha bn di, s gip cho trnh dch hiu c rng cc bnang lm vic trong vng nh lp trnh, hay vng nh d liuDirective RES quy nh vic t bin. S1 pha sau xc nh rng bin c tn COUNT_L chim 1thanh ghi 8 bit, tc l 1 byte. Tip theo, cc bn li t bin tn l COUNT_H. Nhvy, binCOUNT_H cng chim 1 byte.

    Cu hi t ra l cc thanh ghi ny nm u?Cc bn lu , khi cc bn dng directive ORG, l cc bn xc nh ni bt u t bin.

    Nhvy, bin COUNT_L s c di 1 byte, v c t a ch 0x020 tc l a chu tinca vng nh d liu dng chung trong bng 0 (20h)V COUNT_L chim 1 byte. Do , bin COUNT_H s chim byte tip theo, v a chu tinca COUNT_H s l 21h, nhng COUNT_H cng ch c 1 byte, cho nn n chnh l thanh ghi a

    ch 21h. n bin COUNT_N, tng t, a chu tin ca n s l 22h. Bin COUNT_N chim 3thanh ghi, nhvy, bin COUNT_N s nm t22h, 23h n 24h. Nu tip tc t thm cc binkhc, cc bin s bt u ta ch 25h, cnhth.

    Nu hiu nm na theo cch ny, bn c th s d hiu n hn, mt hng l mt gi tr. Gitr c th nm trong thanh ghi d liu (b nh d liu), nhng cng c th nm trong lnh iukhin (b nh chng trnh). iu ny khng nh rng, hng l mt gi tr.Mt khi bn t mt tn no , i din cho mt hng s, c ngha l thay v bn vit ci gitr, th bn vit ci tn i din , d nh. Chng hn, bn vit chpi, i din cho hngsc gi tr 3.1415926....

    Trong khi , nu bn t mt bin pi, th c ngha l bn xc nh a ch ca thanh ghi dliu no , m mi khi bn truy xut n bin pi, c ngha l bn ang thao tc vi thanh ghi a ch m bin pi i din. V d: bn t bin pi thanh ghi 0x20 chng hn. iu c ngha lkhi ban lm g vi bin pi, chnh l bn ang lm vic vi thanh ghi a ch 0x20.Nhng bn s thy rng, vy bin pi v hng spi c g khc nhau? By gi bin pi v hng picng u mang gi tr c. Nhng cc bn nn nh, trong cu lnh lc no v tr ca bin (thanhghi) F, v v tr ca hng sk (trong cu trc mt cu lnh MPASM, ti s post li bi ny tdddt). c sphn bit r rng.

    Vy ty theo v tr bn t n u, n s l bin, hoc l hng. Nu l bin, n ch manggi tr ca da ch ca thanh ghi nm trong b nh d liu, nu l hng, n nm u cng c kc b nh d liu v b nh chng trnh.Vy mun t bin cc bng khc th lm thno? Cc bn c ly a chu ca vng nh dliu dng chung ca bng v vit nhsau:Code:

    ;=================================================

    ORG 0x0A0h

    COUNT_X RES 10

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    16/28

    ;=================================================

    Tm li, chun ho mt chng trnh, cc bn chp on code ny vo, v sau khng baogi cn phi vit li na:

    Code:

    ;================================================= ======================

    ;-----------------------------------; Bien nam o Bank0;-----------------------------------

    ORG 0x020

    COUNT_L RES 1COUNT_H RES 1

    ;----------------------------------; Bien nam o Bank1

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

    ORG 0x0A0

    COUNT1_L RES 1

    ;---------------------------------; Bien nam o Bank2;---------------------------------

    ORG 0x120

    ;================================================= =======================

    Nhvy, mt chng trnh tng qut by gi s tr thnh nhthno?Code:

    ;================================================= =======================; Phn ch thch ban u;;================================================= =======================; Phn khi to vi iu khin

    TITLEPROCESSORINCLUDE__CONFIG

    ;================================================= =======================; Phn t bin

    ;-------------------------------------; Bin bng 0;-------------------------------------

    ORG 0x020;------------------------------------; Bin bng 1;------------------------------------

    ORG 0x0A0;------------------------------------; Bin bng 2;------------------------------------

    ORG 0x120

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    17/28

    ;================================================= ========================; Phn chng trnh chnh

    ORG 0x0000GOTO MAIN

    ORG 0x0005MAIN; nhng dng lnh c vit y

    END;================================================= =========================

    Nhvy, chng ta bit cch vit mt chng trnh y dnh cho vi iu khin PICbng ngn ngMPASM. Cc bn cn ch thm, nu pha trn ch bin bng 2, cc bn khngt bin g c, th cc bn c nguyn nhvy, v ngay bn di, cc bn t li a ch0x0000, n chng nh hng g n chng trnh. Cng ging nh, nu bn khng vit g on

    ORG 0x0000 v GOTO MAIN, m bn ngay dng ORG 0x0005 th chng trnh vn chy bnhthng. n gin l ton 0x0000 n 0x0004, PIC s khng lm g c. Chng ti ang cgngtng bc hnh thnh cho bn kt cu chng trnh vit bng MPASM, mi ngy mt hon thinhn, cc bn nm r l do v sao cc chng trnh c vit nhvy, v chng ta cng thngnht vi nhau im ny khi vit chng trnh. Nu cc bn tin tng vo vic to ra mt chunvit chng trnh MPASM cho Vit Nam, th cc bn l ngi ang t nn mng cho n. Ti cngc tham vng ny, cho nn cc quy cch k hiu ti cgng dng mt chun thng nht, vmong rng cc bn cng ti lm vic ny, sau ny tt c mi ngi khi lm vic cng vi nhauc th hiu v truyn ti tng mt cch nhanh nht.

    K tnay, cc bn bit cch t bin, bit cch vit phn khi to, chng ta s ch cnbn ti vic vit phn chng trnh chnh nhthno na m thi.

    Code:

    ;================================================= ===========================ORG 0x0000GOTO MAIN

    ORG 0x0005MAIN

    BANKSEL TRISBCLRF TRISB ; t portb l output

    MOVLW D'255'MOVWF COUNT_L ; COUNT_L l 1 byte

    BANKSEL PORTBLOOP BSF PORTB, 0CALL DELAYBCF PORTB, 0CALL DELAYGOTO LOOP

    ;================================================= ============================; Cc chng trnh con;================================================= ============================DELAY DECFSZ COUNT_L, F

    GOTO DELAYRETURN

    ;================================================= ============================GOTO $

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    18/28

    END;================================================= ============================

    Cc bn va lm g vi on chng trnh trn?im thnht cc bn nn ch , l vic ti thm phn cc chng trnh con vo trong

    phn chng trnh chnh. Phn cui chng trnh ti vn lun l GOTO $ v kt thc vi lnhEND. Tm thi cc bn cvit nhvy kho chng trnh dng GOTO $, khi chng trnhnhy n , n s thc hin vng lp v cng ti ch, cn lnh END l lnh bt buc.

    Vic ny gip chng ta phn tch rch ri phn chng trnh con v chng trnh chnh trnh nhm ln. Bi v y chng ta mi bt u cc bi hc c bn, cho nn ti cho rng ccchng trnh ca cc bn vit l ngn, nn chng ta cha i xa hn v vic phn b v tr ny. Ccbn chn gin hiu l chng ta cn phi bon chng trnh con u , v chng ta nntch thm mt phn na dnh ring cho vic vit chng trnh con. Vic lm ny v sau s rtc li, nhng tm thi chng ta khoan bn ti, v chng ta cvit nhvy .Phn tch von chng trnh con ny, chng ta thy chng trnh con lun bao gm nhsau:

    Code:

    [NHN]cc cu lnhRETURN

    Lu rng trn, chng ta gi chng trnh con CALL DELAY. Nhvy, vic gi hm cthc hin bng lnh CALL [NHN].Con tr chng trnh s nhy v [NHN] c gi. N thc hin cc lnh nm tnhn tri.Thc hin cho n khi gp lnh RETURN, n s quay tr v v thc hin lnh tip theo ngay bndi lnh CALL. y, chng ta gp phi mt vn , l khi nim Top of Stack. Tuy nhin,chng ta tm gc n li cho bi hc sau, cn by gi cc bn ch cn nm c vic thc hin lnhCALL bao gi cng i km vi mt nhn. Con tr nhy ti nhn v thc hin cc lnh bn trong, n khi gp lnh RETURN th n nhy tr v v tr nm sau lnh CALL v thc hin tipcng vic ang lm.

    V b qua khi nim Top of Stack, cho nn ngh cc bn khng t ra cu hi nu trongcc lnh thc hin, n li c mt lnh CALL gi i ch khc th lm thno? Chng ta s giiquyt vn ny phn sau.Thbn trong hm DELAY chng ta lm nhng g?

    Lu rng, trn chng trnh chnh, sau khi khi to PORTB l ng output, cc bnthy chng ta ghi gi tr d'255' vo bin COUNT_L. Cch vit gi tr nhsau:b'11001010' xc nh snh phnd'234' xc nh sthp phn0xF3 xc nh sthp lc phnLu :Snh phn ch c cc gi tr 0 v 1, v ti a di 8 bit. Sthp phn ch c th c gi tr t0 n255, v sthp lc phn ch c gi tr t00 n FF

    Quay tr li, bin COUNT_L ang mang gi tr 255.Khi thc hin hm DELAY, cc bn thc hin lnh DECFSZ (DECrement File, Skip if Zero), c nghal n s gim gi tr ca mt thanh ghi no mt n v. Nu sau khi gim xong, m kt qu l0, th n s nhy cch ra mt nh trong b nh chng trnh, v thc hin lnh tip theo .Nu gi tr sau khi gim mt n v cha bng 0, th n s thc hin lnh lin k vi n.Nhvy, vng lp c thc hin nhsau:

    Code:

    COUNT_L = 255 ( trn t)

    DELAY COUNT_L = COUNT_L - 1if COUNT_L 0

    GOTO DELAYif COUNT_L = 0

    RETURN

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    19/28

    Code:

    Lnh DECFSZ [File], F/W

    Nu pha sau du phy, chng ta W, th kt qu s lu vo thanh ghi W, v [File] khng

    thay i gi tr g ht. Nhng y, chng ta mun thc hin nhon m gi trn, nn chngta phi l F. COUNT_L s gim dn t255 n 1, trong qu trnh n cchy ln DELAY, rigim COUNT_L mt n v, xong li nhy v DELAY, li thc hin vic gim 1 n v ca COUNT_LKhi COUNT_L = 1 n li gim 1 n v, lc ny COUNT_L = 0. V n khng thc hin lnh GOTOna, m thay bng lnh NOP, sau n thc hin lnh RETURN, c ngha l quay v li lnh CALL trn. Nhvy, cc bn hiu r hm DELAY ri. Nhng quan trng nht l lm sao tnh tonc thi gian hao tn ca on vng lp ny k tkhi bt u thc hin lnh CALL, v thc rachng ta mun l mun bit chnh xc thi gian thc hin lnh ca n.

    Thi gian thc hin ca lnh CALL DELAY l bao lu?

    Lnh CALL khi thc hin tn 2 chu k my, nhvy chng ta ghi ch l (2) y.Lnh DECFSZ tn 1 chu k my khi gi tr tr v khc 0. Nhvy, trong qu trnh thc hin gim

    t255 xung 1, n thc hin 255 - 1 = 254 ln. Mi ln thny n tn 1 chu k my, chng tak hiu (254) y. Khi thc hin lnh GOTO, lnh GOTO tn 2 chu k my, vy n cng thchin 254 ln, chng ta k hiu (254 x 2 = 506) y.Khi COUNT_L = 1, n vn thc hin lnh DECFSZ, vy n tn thm 1 chu k my na (1). Sau khithc hin lnh ny, kt qu tr v l 0, vy n s thc hin mt lnh NOP (1), v sau thc hinlnh RETURN, lnh RETURN tn 2 chu k my (2)Kt qu:(2) + (254) + (508) + (1) + (1) + (2) = 768 chu k myNu chng ta dng thch anh 10MHz, 1 chu k my tn 0.4 us, c ngha l lnh CALL DELAY tn768 * 0.4 us tc l khong 1/3000 giy.Chng ta khoan bn n vic xa hn, vy th chng ta bit cch tnh thi gian hao tn ca hmDELAY ri. Nhng nu tnh nhthny th qu mt cng, chng ta c th chuyn n thnh cng

    thc c

    th

    nh

    sau:CALL = 2DELAY (COUNT_L) = [COUNT_L - 1] * (DECFSZ + GOTO) + 1 + 1RETURN = 2Cc bn nn nh cng thc ny sau ny pht trin ln tnh cc cng thc khc.C l hm nay chng ta tm dng bi hc yCc bn lu , ti c tnh sai mt on pha trn, v qung g hay sao , tnh t255 xung 1gim ch c 253 ln. ng l phi 254 ln. Nht2 gim xung 1 th ch c 1 ln thi. Xin thnhtht co li vi cc bn.

    Tng ktCc bn hc c g ngy hm nay?- Cc bn hiu c khi nim chu k my, dao ng thch anh to ra, PIC s thc hin 1 lnhtrong vng 4 dao ng ca thch anh. Nhvy, chu k my ca PIC s l chu k dao ng cathch anh nhn vi 4, hay tn sPIC s bng tn sthch anh chia 4.- Cc bn hc c cch t bin trong mt chng trnh vit bng MPASM, cc bn c tht bin bt k bng no cc bn mun- Sau , cc bn b sung phn t bin ny vo trong sn chng trnh ln trc hc, ccbn hon thin hn sn mt chng trnh vit bng MPASM- Cc bn li thm vo sn chng trnh phn cc chng trnh con, vy ti thng bo vi ccbn rng cc bn ch cn thiu 2 phn na l ngt (Interrupt) v bng (Table) na, l cc bn c th c mt sn chng trnh vit bng MPASM hon chnh. Cc bn s khng phi i lu hon tt sn chng trnh ny.

    - Cc bn hc c cch dng hm CALL v RETURN, n lun lun i km tng cp vi nhau.- Cc bn hc thm cc lnh: BCF, CALL, RETURN, DECFSZTi liu tham kho:

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    20/28

    Cc bn tham kho datasheet PIC16F84A, PIC16F628A v PIC16F88 bit thm chi titv cu trc b nh d liu, v c ci th c bng 2, c ci khng c, c ci li c bng 3, bng 4....Nh ch phn tp lnh c hiu thm v cc lnh va hc (Instruction Set). Cc bn c thdng keyword: DELAY tm trong trang http://www.piclist.com/ nhng on chng trnh convit v hm DELAY, lm thno vit hm DELAY di hn?...

    Lu cui cng, l cc bn ang chun b tr thnh mt ngi vit PIC chuyn nghip,

    do , cc bn cn phi nh cc chn no ca PIC thit kmch v iu khin, cc bn nn inhnh s chn ca PIC ra dn ln trc bn lm vic. Cc bn c th download bn in ti y(c trong datasheet, nhng ti mun gi trc tip cho cc bn cc bn mt cng).Bi tp lm thm:1) Cc bn thy rng, nu thi gian DELAY qu ngn, trn thc tcc bn s kh thy n LEDnhp nhy. V vy, thay v vit mt hm CALL DELAY, cc bn vit mt dc 20 dng CALL DELAYlin tip nhau, cc bn s thy skhc bit2) Nhng nu vit 20 dng CALL DELAY th cng nhvit 20 dng lnh NOP, vy c ngha l ccbn vn c th thc hin mt vng lp, trong lp li 20 ln, v trong vng lp cc bn thchin hm DELAY. Nhvy, cc bn phi vit mt hm DELAY_NGOAI bn trong thc hin hmDELAY_TRONG. Chnh v vy, ti gi cho cc bn tm trong trang web http://www.piclist.com/ tm cc source code hm DELAY, v cc bn s bit phi lm sao vit hm DELAY ch luhn. Quan trng nht l cc bn phi ch ra c cng thc tnh ton thi gian ca hm DELAY mcc bn vit. (bi tp tnh im)3) By gi cc bn c thiu khin mt n LED, vy nu mun 8 n LED nhy theo thtno chng hn, cc bn s lm thno? (bi tp tnh im)Ghi ch: (bi tp tnh im) l nhng bi tp m chng ti s cng n vo tng PIC cho ccbn no tham gia gii bi nhthng bo v vic bn PIC.

    ***** &&& *****

    Bi 3: Ngt (interrupt)Gii thiu

    Khi nim ngt l mt khi nim rt ph bin trong tt c cc h thng vi iu khin, vi xl v my tnh. Vy ngt l g? Cc bn hnh dung hnh nh chng ta ang i xe my trn brung, con ng i rt di v rt thng, bng nhin c mt con b chy ngang, hc chng taxung rung. C xe v ngi lao xung rung. Chng ta lm cm b dy, phi qun o, chi ngln mt ci v chng bit chi ai, th l chng ta em ng tri ra chi. Sau , chng ta dt xemy ln b rung, ti ci ch m chng ta b hc t xung, ri chng ta ly xe chy tip. Nu lc mt con b no khc, li hc chng ta.. th....Hot ng ngt cng ging nhvy, khi chng taang chy mt chng trnh chnh no , bng nhin c mt skin xy ra, chng ta phi dngvic chng ta ang lm li, v gii quyt ci svic xy ra . Cui cng, chng ta li quay tr vci ch m chng ta tm dng li lc ny v tip tc cng vic ang lm.

    Khi nim ngt chn gin nhvy, tuy nhin, i vi vi iu khin ni chung, v PIC niring, ngt c th do rt nhiu ngun xy ra, v vi mi ngun ngt khc nhau, chng ta c thnh trc rng trong ngt chng ta s lm vic g. Cng nhkhi i trn b rung, chng ta cth b b hc, cng c th b tru hc, cng c th b vp cc , cng c th b lt g... V nunhb b hc th chng ta chi ng tri, b tru hc chng ta mng ng trng, b vp cc

    chng ta ttrch mnh xui xo, v n khi vp g... th chng ta v nh thng...Cc ngun ngt trong PIC:S lng v loi ngun ngt trong PIC rt a dng, v rt khc nhau mi dng PIC. Do vykhng th lit k ht ra y tt c cc dng PIC v tt c cc loi ngt trong tng dng c.Chng ta cha ra y s tng qut ca cc ngun ngt, v i su vo mt s loi ngt phbin.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    21/28

    Hnh 1: Cc ngun ngt ca dng PIC MidrangeChng ta ch n mt sim sau:1) Trong hnh c cc k hiu cng logic AND v OR

    y l cng AND, c ngha l ch khi u vo ca hai cng ny u c gi tr l 1, th u ra mic gi tr l 1. Chng ta quan st mt gc hnh bn tri pha di TXIF v TXIE, chng i qua cngAND, ch khi no bit TXIE bt ln, v bit TXIF cng c bt ln, th lc ng ra ni vo cng ORpha trn mi c gi tr.

    y l cng OR, c ngha l ch cn mt trong cc tn hiu ng vo c gi tr l 1, th ng ra s cgi tr l 1. Nhvy, nu c TXIE v TXIF u c gi tr 1, th ng ra sau cng AND ca chng sc gi tr 1 v ng ra sau cng OR cng c gi tr 1, bi v t nht cng OR y cng c 1 ngvo c gi tr 1. Chng ta ctip tc nhvy m suy ra.2) im thhai, l cc chui IE v IF:

    IE y l vit tt ca chInterrupt Enable, v IF y vit tt ca Interrupt Flag.IE c ngha l chng ta cho php kch hot mt loi ngt no xy ra hay khng. y l tn hium chng ta c th quy nh ngay tban u. Mc nh, tt c chng u c gi tr 0, ch khi nochng ta cho php mt ngt no xy ra, th v sau n mi xy ra ngt thi.Cng ging nh, ban u trn b rung c dy ro chn, th con b khng th no hc bn t

    c, nu bn b hng ro ra, th nu c con b hc bn, bn s t. Nguyn l ny n gin nhvy thi.IF y l cc c ngt. Tc l khi bn b b hc, th c mt ngi cm c gi ln bo l

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    22/28

    bn b b hc, nhng ngi di rung reo h...hihi... V tt nhin, khi bn khng ph rocn th ngi trn rung vn c. V khi con b lao vo bn, th ngi ta cng pht c ln nhthng, nhng b ci ro cn nn bn cthoi mi m i con ng ca bn, chng phi quantm n vic t xung, chi bi hay tro ln lm g.Ci ro cn chnh l IE v ci svic cui cng m bn vn i hay lm cm b dy chnh l cicng AND m chng ta va ni trn kia.

    3) im thba, cc lp ngt:Bn thy rng, trong hnh, r rng c 2 lp ngt. Lp thnht nm bn tay tri ngoi cng, lpthhai nm gia hnh. Lp thba ch c mt cng AND nn chng ta khng k ti lm g.Lp thnhtc gi l lp ngt ngoi vi.

    Thc cht lp ny v c qu nhiu ngun ngt, v cc ngun ngt ny u l mt schungiao tip, hoc chc nng c bit ca PIC, cho nn ngi ta phn ra lm lp ngt ngoi vi. cc ngt ngoi vi hot ng, trc tin chng ta phi cho php ngt ngoi vi, tc l bt bit PIEln. Cn c th mun cho ngt ngoi vi no hot ng, th chng ta bt ngt ln. Trn scc bn cng thy r thng qua cc cng AND v OR.Lp thhai tm gi l lp ngt phthng.

    Khi mun dng cc ngun ngt ph thng, chng ta ch vic bt cc bit IE ca ngun ngtny. Tt nhin, cui cng, chng ta phi bt ngt ton cc GIE th ngt mi c php xy ra (kc ngt ngoi vi v ngt ph thng. Khi , PIE c coi l mt ngun ngt ph thng. iu nycng ging nhkhi bn chy xe trn b rung, mt hng ro di chy dc theo con ng, chnhl ngt ton cc GIE. Lp bn ngoi thhai l lp ngt ph thng, bao gm lun c ngt ngoi viPIE. V ngoi cng l cc hng ro thuc lp ngt ngoi vi.

    Nu cc bn bt cc ngun ngt, m khng bt ngt ton cc GIE th cho d ngt c xyra, th chng trnh vn khng dng thc hin ngt, ging nhcon b c th lao qua hng rongoi cng c m, nhng vn cn hng ro trong cng.

    Nhvy, cc bn hiu mt cch tng quan v hot ng ngt ca PIC, nhng nguyn tc phibt hay tt ngt. im lu cui cng, l ti mun gii thiu vi cc bn rng, chk hiutrong bng, l tn cc bit lin quan n vic bt tt ngt. VD: bit PIE, INTE.. nm trong thanh ghiINTCON (ngt ph thng), cc bit quy nh ngt ngoi vi nm trong cc thanh ghi PIR v PIE.

    Vectngt ca PIC:Nh ln trc gii thiu, vect ngt ca PIC nm v tr 0x0004 cc bn xem li hnhsau. Khc vi khi bn b t rung, bn t xung ngay ti ch bn b hc, i vi vi iu khin, khixy ra interrupt, n s nhy v mt a ch cnh, v thc hin cng vic ti . Sau khi thchin xong, n s quay tr v v tr m t n thot ra. V tr cnh m n s nhy v khixy ra ngt l v tr 0x0004.

    Chng trnh ngt:Li quay v th d t rung, c l ti thch ci th d ny v n c th gip bn hnh dung

    mi th. By gi cc bn hy chia giai on tkhi b b hc, t xung rung, ri bn chi ngln, ri bn lm cm b ln. Vy cho d bn b b hc, hay b vp g, th ch c giai on bnchi ng ln l khc nhau, cn li, giai on bn t xung rung l t xung rung, v sau thbn cng b ln. Vy ngt cng ging th, khi nhy vo ngt, bn s c mt giai on cn phinhy vo ngt, v mt giai on nhy ra khi ngt, cn bn trong ngt cc bn lm ci g lni dung cn thc hin ca tng ngun ngt. Ti cung cp ra y on chng trnh ngt chun,tnay v sau, cc bn ch cn copy on chng trnh ny v sdng:Code:

    ;================================================= ==================ORG 0x0000GOTO MAINORG 0x0004GOTO INTERRUPTORG 0x0005

    MAIN; y l phn chng trnh chnh ca cc bn

    ;================================================= ==================

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    23/28

    INTERRUPT

    RETFIE;================================================= ==================; Cc chng trnh con c vit y

    ;================================================= ==================GOTO $END

    ;================================================= ==================

    Nhvy, mt ln na, chng ta b sung sn chng trnh ca chng ta mt cch chi tit hn.Chng ta va thm vo mt on chng trnh con INTERRUPT. Thc ra, gi INTERRUPT l mtchng trnh con cng khng sai, nhng v n kh c bit, nn chng ta ctch ri n ra.Khi to v kt thc ngt:Ti cung cp di y on chng trnh khi to v kt thc ngt y cho PIC, tnay v sau,khi mun sdng ngt, cc bn ch cn copy v paste on code ny li, hon ton khng cn

    sa cha g v cthsdng. Ti s dnh cho cc bn t cu hi v phn ny tcc cuhi, c th gii thch r hn v sao chng ta li vit nhvy, tng im mt. Nu khng, ti khngth c thi gian vit tt c mi vn v ngt ra y c.Code:

    ;============================================================================================INTERRUPT

    ;-------------------------------------------;Doan ma bat buoc de vao ngat;-------------------------------------------

    MOVWF W_SAVE ;W_SAVE(bank unknown!) = WSWAPF STATUS, WCLRF STATUS ; force bank 0

    for remainder of handlerMOVWF STAT_SV ; STAT_SV = swap_nibbles(

    STATUS ); STATUS = 0

    MOVF PCLATH, WMOVWF PCH_SV ; PCH_SV = PCLATHCLRF PCLATH ; PCLATH = 0MOVF FSR, WMOVWF FSR_SV ; FSR_SV = FSR

    ; 10 cycles from interrupt tohere!

    ;-----------------------------------;Doan chuong trinh ngat;-----------------------------------

    ; cac ban se viet chuong trinh ngat o day

    ;--------------------------------------------------;Doan ma bat buoc de ket thuc ngat;--------------------------------------------------

    MOVF FSR_SV, WMOVWF FSR ; FSR = FSR_SV

    MOVF PCH_SV, WMOVWF PCLATH ; PCLATH = PCH_SVSWAPF STAT_SV, W

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    24/28

    MOVWF STATUS ; STATUS = swap_nibbles(STAT_SV )

    SWAPF W_SAVE, FSWAPF W_SAVE, W ; W = swap(swap( W_SAVE )) (no change

    Z bit)

    BSF INTCON, GIERETFIE

    ;=================================================================================================== =

    Nhvy, chng trnh ngt c chia lm 3 phn chnh.Phn thnht l phn bt u vo ngt, y l on chng trnh bt buc, tt nhin khng honton nghim ngt nhvy, v thc tnhiu khi bn khng dng n tt c cc lnh ny, nhng vmc ch cung cp cc khi nim c s, v cng c lm vic y , ti cung cp cho bn chngtrnh ngt chi tit. Phn thhai l phn chng trnh ngt ca bn. Khi xy ra ngt, bn munlm ci g, th bn bt u vit tphn ny tri. Phn thba l phn kt thc ngt, bn cvitnguyn bn nhvy khng cn sa i. Tm thi, s khng c cc phn tch chi tit ging nh

    cc bi hc trc, cc bn c th ttm hiu thm, nu khng, c tht cu hi, v chng ta stttm hiu r hn v ngt ca PIC. Thi gian ti y, c l ti hi bn, cho nn ti khng thvit bi lin tc c, mong rng cc bn cgng tm hiu v hc tt PIC. n giai on ny, ccbn c th dng con PIC, ging nhmt con 89C51 thng thng. V cc bn thy y, thcsPIC ch cn 1 ngy hc.

    Chng ta va hc xong 3 bi hc c bn nht ca mt con vi iu khin: iu khin port,vit hm delay v vit chng trnh ngt.Phn thtca bi vit chng trnh ngt, si chi tit vo cc ngt v gii thch r ngha tngngt. Nhng thit ngh, ti nn kt hp bi hc ny y, v kt hp phn thtvo bi hcsau: Nt bm v cc ng vo ca PIC.Ti liu tham kho:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011006

    Bi 4. Nt bm

    Cc bn va bit khi nim ngt, v bit chng trnh ngt c vit nhthno. Vyby gi chng ta chuyn n bi tip theo v nt bm.Cng dng ca nt bmNt bm l mt hnh thc ra lnh ph bin nht trn thgii. Bn gi mt ci thang my, bnbm nt, bn ku ca th bm chung, bn bt n th bm nt cng tc, v ti ang ngi vitcho bn bng cch bm nt bn phm...

    Nhvy, bn bit cng dng ca ci nt bm. By gi cc bn s hc cch lm mt cint bm!!! iu ny c v bun ci, nhng vi vi iu khin, v my tnh, kh nng x l cclnh rt a ng. Bn c th bm cng mt nt, nhng lnh s khc nhau mi thi im, v mitrng thi. V d, nhbn nhp chut my tnh, thc ra cng l bn nhp nt bm, nhng bnthy r rng rng, nhng v tr di chuyn chut khc nhau, nt bm ca chut sa ra ccmnh lnh khc nhau cho my tnh thc hin.Mt strng thi nt bm thng dng

    Trng thi nt bm ra lnh tc thi, l khi bn bm nt, lp tc mi trng thi phic kim tra v chng trnh dng li thc hin lnh tnt bm ca bn. C ngha l bn ralnh ti thi im bm nt, v my hiu rng bn bm nt. Cn vic x l thno th hi sauphn gii. Trng thi ch nt bm, l chng trnh bn ang chy, n mt giai on no ,n cn phi c sra lnh ca bn bng nt bm, v chng trnh ch bn bm nt chy tip,hoc bt u mt cng vic no sau khi ch. Nhc li thao tc bm nt mt cht, ci nt cabn ang trn cao, bn bm n xung th n s c mt giai on nt bm i xung, khi chmvo mch in, hin nhin bn mun hay khng mun th cng phi c mt khong thi gian bn

    gicho nt bm tip xc vi mch in, sau l giai on bn th nt bm ra.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    25/28

    Theo di hnh trn, chng ta thy. Khi bm nt, c qu trnh i xung ca nt bm, v qu trnhi ln ca nt bm. Nhng thc t, i vi mch in trong nt bm, n ch c th nhn ctrng thi tip xc hoc khng tip xc, nn tn hiu nhn c s nhng mu xanh tronghnh di. Chng ta ch quan tm n trng thi ca ng mu xanh trong cc ng dng ca ntbm.

    Vy, trng thi nt bm li c thm 3 trng thi na l trng thi bm xung, trng thigint bm, v trng thi nh nt bm ln. Kt hp vi 2 trng thi iu khin trn, chng ta c6 trng thi ph bin ca nt bm. Cc bn lu rng, chng ta c 6 trng thi chkhng phich c 4 trng thi, v thc ra rt nhiu ngi cho rng ch c 4 trng thi khi cho rng trng thich trong lc gint bm khng phi l trng thi ph bin. Nhng nu cc bn tng dngin thoi di ng th cc bn thy sngi dng trng thi ch ca nt bm cng khng phi lcon snh.

    y, ti mun tn dc mt cht rng, khi cc bn lm vic v khoa hc k thut, v n

    mt khi cc bn kh c th tm ra ng hng suy ngh gii quyt mt vn khoa hc kthut, hy tm mi lin h vi n trong khoa hc x hi. Chnh v vy, cc bn thng thy ti haya ra nhng v d x hi minh ho cho vn k thut cn c gii quyt.

    Ti s dnh vic ng dng tng trng thi nt bm ph bin trong cc ng dng cho ccbn, cn y, ti ch mun nhn bi hc ny tip tc bi hc v interrupt m chng ta bd trc . Vy chng ta ch xt trng thi khi bm nt, lp tc lnh sc thc hin, tc trngthi tc thi ca nt bm.

    Cc bn hy lm bi tp thc hnh, thc hin mt mch in tnhhnh sau chun bcho bi hc ca chng ta.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    26/28

    Trong mch in ny, chng ta thy c mt vi im c bit khi c 1 nt bm ni gia chn caPIC v ngun, cn cc nt bm khc li ni chn ca PIC vi t.Gia ngun v t lun c mt in tr 10K. V sao chng ta phi ni mch in nhvy? Chngta tm dng bi hc v nt bm y v theo di bi hc c bn vin ttip theo.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    27/28

    in tcbnGii thiu

    y l phn rt c bn vin t, m cc bn khi bt u lm vic vi vi iu khin cnphi nm r. Nh ni, PIC to ra dng in khong 20mA v in p khong 5V, tng tnhvy, nu dng ng vo qu cao so vi 20mA v in p ng vo qu cao so vi 5V, th PIC s bh. V vy, bi hc ny trang b cho cc bn mt skhi nim c bn vin t, cc bn cth nm vng nguyn l thit kmch v tnh ton cc gi trin tr cn thit. ng l bi hcny cn c thc hin ngay tu, tuy nhin, ti cho rng bi tp n LED qu n gin, ccbn cha bit g cng c th hiu c, nhng nay, nu nhcc bn mi hc vin tv vi iukhin khng c trang b kin thc c bn ny, c th lm cho cc bn lng tng v mt simkhng c lm r trong mch in t.Hin tng tri in p

    Cc bn xem hnh sau:

    Chng ta cho rng ng vo ca PIC, cng ging nhng vo ca mt linh kin in tthng dngl 74HC04. Thay v v mt ci chn PIC, th chng ti v hnh mt con 74HC04 cho n n gin,v cc bn d hnh dung. Nu mt con PIC ln mt hnh th qu phc tp hnh nh, v likhng cn thit. Hn na, bi vit ny c tham kho tti liu Very Basic Circuits ca Encoder,v trong trang web ny, ngi ta sdng 74HC04 lm th d, ti tn trng v d ny nn khivit li bi vit cng sdng 74HC04 ging nhh.Cc bn thy, nu nhnt bm c nhn xung, th ng vo ca 74HC04 hay PIC c ni vi

    Mass. Nhvy, lc PIC c thc gi tr 0. Tuy nhin, nu nt nhn c th ra, chng tathy rng ng vo ca PIC chng c ni vi mt linh kin no, vy l in p chn ca PIC stri ni khng xc nh c. Nu khng may mn, in p tri ni ny ri vo vng logic 0, rili nhy sang vng logic 1... th cc bn thy r rng chng ta khng th xc nh c nt bmc c bm hay khng?!!V vy, m bo, nu khi khng bm nt, PIC phi c in p tham kho l 5V, sau khi bmnt th in p s gim xung 0V, nhvy mc logic mi tht r rng, khng th tri ni nhhnh trn. Vy chng ta c hnh di y

    Cng dng ca in trko lnCc bn li thy, nu by gi khng bm nt, th in p ng vo ca PIC s l 5V. Nhng

    nu bm nt mt ci, r rng chng ta gy ra ngn mch khi ni trc tip tngun xung t.Chnh v vy, chng ta phi a thm vo mt in tr gia t, nt bm v ngun.

  • 8/14/2019 Vi iu Khin PIC - Hc Nhanh

    28/28

    C hai vn t ra, l in tr st u, v gi tr ca n bng bao nhiu.Chng ta xem hnh ny:

    Cc bn s bc mnh ngay rng, ng l thng ngc mi t in tr nhthny, bi v nu t

    in tr nhvy, d bn c bm nt hay khng bm nt th in p ng vo vn lun lun l 5V,vy nt bm tr nn v ngha.Thth ch cn mt cch t in tr nhhnh tip theo y(H.a):

    (H.a) (H.b)Vy vn cn li l gi trin tr bng bao nhiu?Cc bn s thy, PIC hot ng 20mA v 5V trn cc chn. V vy, khi cha bm nt, ngun 5Vc ni vi in tr v i vo chn ca PIC. Nu nhtrong mt trng hp no chn ca PICchuyn tch input sang output, th vn xy ra l dng trn chn phi m bo nh hnhoc bng 20mA. Nhvy, trong thit ktrn, chng ta xem dng ti chn PIC nu PIC t 0Vl:I = U/R = 5V/ 10000 Ohm = 5mA

    Nhvy, thit kny m bo cho hot ng ca PIC c an ton.Khi ng nt bm dng 5mA ny si xung t, v chn ca PIC c ni vi t.Cc bn xem tip hnh sau(H.b)Trng hp ny, nt bm c ni vi ngun 5V. in tr ni gia chn ca PIC vi t s khnglm cho PIC c hin tng tri ni in p, v khi ng nt bm th dng vn 5mA.

    Tng kt:Qua bi hc ny, cc bn hiu c c bn v khi nim in tr ko ln (trng hp in trni vi ngun), v in tr ko xung (trng hp in tr ni vi t). Gi trin trc t y nhm loi b hin tng ngn mch, v m bo ng vo ca PIC khong 20mA. Khi an ton,

    cn thit ksao cho ng vo nh.

    To be continue