thiết kế mạch khóa số điện tử dùng password

123
Trường ĐHBK Đà Nẵng--Khoa ĐTVT ---------------------- Đồ án chuyên ngành Điện tử Nhận xét của giáo viên hướng dẫn ......................................................... ......................................................... ......................................................... ......................................................... ......................................................... 1 SV thực hiện : LÊ CÔNG HUY HOÀNG ------------------- Đề Tài : Khóa Số Điện tử.

Upload: hoanglecong2504

Post on 29-Sep-2015

73 views

Category:

Documents


17 download

DESCRIPTION

Thiết kế mạch khóa số điện tử dùng password

TRANSCRIPT

Chng 1

Trng HBK Nng--Khoa TVT ---------------------- n chuyn ngnh in t

Nhn xt ca gio vin hng dn Nng, Ngy Thng Nm 20...

Gio Vin hng dn

Nhn xt ca gio vin chm Nng, Ngy Thng Nm 20...

Gio Vin hng dn

Mc Lc

3LI M U

4CHNG 1 : PHN TCH H THNG

41.1.T VN :

41.2.GII THIU H THNG KHA S.

61.3.CC GII PHP V CCH XC NH BI TON

61.3.1.Phn Tch V La Chn Phng n

71.3.2.Xc nh Bi Ton V Gii Hn Ca Ti

8CHNG 2 :THIT K H THNG

82.1. S KHI TNG TH CA H THNG

82.2. S CALL GRAPH

92.3. S C T CA H THNG

92.4. CC MODUL TRONG H THNG

102.4.1Khi iu Khin Trung Tm

122.4.2Khi Hin Th

132.4.3Khi Bn Phm

132.4.4. Khi Khuch i, ng C V Bo ng

142.4.5Khi Ngun

152.5. LA CHN LINH KIN

152.5.1. Khi iu khin PIC 16F877a

232.5.2. Khi hin th

262.5.3. Bn Phm

272.5.4. Khi Mch Cu H Khuch i Tn Hiu

312.4.4.ng c

312.4.6. Khi Ngun

322.6.S NGUYN L CA MCH

322.7.NGUYN L HOT NG CA MCH

332.8.S THUT TON IU KHIN

34CHNG 3: XY DNG H THNG

343.1. CHNG TRNH PHN MM

343.2. CHNG TRNH QUT PHM C BN

353.3. CHNG TRNH CHNH:

373.4. CHNG TRNH KIM TRA

383.5. CHNG TRNH BO NG

40NH GI V KT LUN

40HNG PHT TRIN

41TI LIU THAM KHO

LI M U Ngy nay, vi nhng ng dng ca khoa hc k thut tin tin, th gii ca chng ta v ang mt ngy thay i, vn minh v hin i hn. S pht trin ca k thut in t to ra hng lot nhng thit b vi cc c im ni bt nh s chnh xc cao, tc nhanh, gn nh l nhng yu t rt cn thit gp phn cho hot ng ca con ngi t hiu qu.in t ang tr thnh mt ngnh khoa hc a nhim v. N p ng c nhng nhu cu cn thit trong hot ng i sng hng ngy.Mt trong nhng nhu cu l vn bo mt. Mi mt c nhn, mt gia nh, hay mt c quan u c cc vn cn c bo mt. V bo mt c th phi c mt h thng bo mt. Trc nhu cu kha s bng in t l mt gii php dng bo mt rt hiu qu v tin li.

Ngoi ra do nhu cu ng dng l thuyt hc trng vo trong cuc sng nn chng em chn ti kho s lm n mn hc.

Sau mt thi gian hc tp v rn luyn, vi s ch bo tn tnh ca thy gio Hunh Thanh Tng cng s tr gip ca cc bn trong nhm v cc ti liu c lin quan,chng em hon thnh xong ti.

n hon thnh xong, nhng khng th trnh nhiu thiu st mong thy c gio thng cm v ch bo thm ti c th ng dng rng ri trong thc t.

Chng em xin chn thnh cm n cc thy c!

CHNG 1 : PHN TCH H THNG1.1. T VN :

Vi mi gia nh, c qua, x nghip, trng hc hay bt c ni u, bo v ti sn trong phng. Trn mi cnh ca ra vo c trang b thm chic kha . Hin nay trn th trng c rt nhiu loi kha ca nhng hu nh u l kha c kh, cc kha c kh ny gp vn ln l tnh bo mt ca cc kha ny khng cao, nn d dng b ph kha bi cc cha kha a nng.

Kha s ni chung l loi kha bo v thit b, ti sn.m khi mun m ra th phi tc ng n s m ta ci t trc. c 2 loi kha s c bn hin nay trn th trng c l kha s c kh v kha s in t.

Kha s c kh : khi m kha hay kha li th ta phi xoay cc vng s trn kha sao cho mt dy cc s no cng hp vi nhau th m c kha

Kha s in t : khi m kha th ta phi nhp ng mt khu l mt dy cc s lin tip nhau, nu nhp ng cc dy s th m c kha.

Nhn chung th kha s in t s c nhiu k t, nhiu m s ci t hn, cng nh di ca m s s di hn. V vy tnh bo mt ca kha s in t cng cao hn. Bn cnh , thao tc trn kha s in t cng thc hin d dng hn vi cc phm bm, ch khng phi l cc vng xoay kha s c kh. Khi thao tc i mt khu cng d dng hn v thao tc trn cc phm bm. Kha s in t ngoi tnh nng v bo mt cao, v thao tc d dng cn c tnh nng cnh bo nu nhp mt m nhiu sai qu s ln quy nh. Vi dao din ngi dng, hin th cc thng bo v nhp mt khu, cnh bo, thay i mt khu khin ngi dng d s dng hn.

1.2. GII THIU H THNG KHA S.Trn th trng hin nay c bn rt nhiu loi kha s in t. Hu ht cc loi kha in t u c tnh nng i mt m, cnh bo. Nhng li khng c tnh nng giao din ngi dng bng mn hnh LCD khin ngi dng kh s dng cc sn phm . Thit b m b kha s trn th trng iu khin ch yu l Roler ng, m cht ca.

a s kho k thut s ang c bn trn th trng l do Hn Quc sn xut, ch yu l loi kho tay nm v c gi kh cao.

Kho s dng phng php ci t m s (nh kho s ca cc loi va li hay cp s) kho hoc m v ngi s dng c th ci t s bt k. H thng s ca kho c thit k nh cc phm bm s ca in thoi nn kh tin li khi s dng. Bn cnh loi ch c mt chc nng kho bng m s, cn c loi km theo chc nng kho bng cha. Cha ca loi ny cng c bit hn cc loi thng thng, n c lm 4 cnh, kh lm gi nh cc loi kho 2 cnh.

Kho k thut s cn c loi m bng du vn. Loi kho ny c th ng k c 25 hoc 40 vn tay khc nhau. Nh vy bn c th lu li rt nhiu vn tay ca mi ngi trong gia nh vo b nh ca kho. Khi cho ng cc vn tay c lu trong b nh th ca s c m. Phn ln loi ny khng s dng cha na.

Hnh 1.1: kha s trn th trng khng c giao din ngi dng

Mt s loi trn th trng c giao din ngi dng qua nhng mn hnh LCD 16x2 hin th thng tin ti ngi dng. Nh vy th d s dng hn cc loi khc.

Hnh 1.2: kha s trang b mn hnh LCD giao din ngi dng.

1.3. CC GII PHP V CCH XC NH BI TON

1.3.1. Phn Tch V La Chn Phng na. Yu cu ca h thng:Qua tham kho cc sn phm kha s trn th trng th yu cu ca mt b sn phm kha s thng thng:

Do din ngi dung d s dng.

Mt khu c di m bo tnh bo mt cao.

C th thay i c mt khu.

Tnh nng cnh bo khi nhp mt khu sai 3 ln lin tip.

ng c quay iu khin ca ht hnh trnh th dng li.

H thng phi lm vic c ngay c khi mt in.

H thng kha s nh gn.

in p hot ng ca h thng khng gy nguy him n ngi s dng.

b. La chn phng nVi yu cu v tnh nng nh trn, chng em chn cc thit b chnh:

Vi iu khin 16f877 vi b nh eeprom c kh lu tr d liu ngay c khi mt in.

Mn hnh LCD 16x2 vi mc ch hin th thng tin, giao tip vi iu khin vi ngi dng

Bn phm 16 phm c cc phm s v phm chc nng a u vo l mt khu, cc lnh ng m ca ti vi iu khin.

ng c ko cnh ca ng v m. Vi ti ny c yu cu sn phm m phng thc t, chng ti chn ng c mt chiu cng sut nh.

Ngun d tr khi mt in l ngun acquy.

1.3.2. Xc nh Bi Ton V Gii Hn Ca Tia. Xc nh Bi Tonim quan trng nht ca chng trnh kha s l thut ton qut phm, sau l lu v thay i mt m trn eeprom. Cn mt s phn khc l hin th thng tin ra LCD th c cc lnh h ch nn khng phc tp. cui cng l a tn hiu ra iu khin thit b l kha ca.V vy bi ton chnh l ta cn quan tm l :

Thut ton qut phm

Qu trnh lu mt m trong eeprom v thay i eeprom

Hin th thng tin ra mn hnh LCD

b. Gii Hn Ca Ti

Cc rng buc :

Thng thng h thng giao din vi ngi dng bn ngoi, nn phi an ton, trnh c nhng tc ng ca ngoi cnh.

Chi ph ca b sn phm (khng c ng c) khng qu 500.000vn.

Chu c qu ti ti khi gp chng ngi vt trong thi gian di.

p dng iu khin ng c c cng sut nh.CHNG 2 :THIT K H THNG

2.1. S KHI TNG TH CA H THNG

Hnh 2.1: s khi kha s c bn.

Khi giao tip v hin th thng tin : dng a tn hiu, thng s ti khi iu khin

Khi iu khin tip nhn cc thng tin, v x l cc thng tin . Xut tn hiu iu khin cc thit b khc.

Thit b chp hnh y c th l ng c, c th l rle iu khin thit b chnh l ca hoc kha.

2.2. S CALL GRAPH

Hnh 2.2 : s Call graph gia phn cng v phn mm2.3. S C T CA H THNG

Hnh 2.3: s c t ca h thng

2.4. CC MODUL TRONG H THNG

Hnh 2.4 : S khi cc Modul trong h thng2.4.1Khi iu Khin Trung Tm

Hnh 2.5 : Khi vi iu khin

Khi vi iu khin s dng vi iu khin Pic16F877A, n ng vai tr ht sc quan trng trong h thng iu khin h thng kha s. Khi VK bao gm mch to dao ng thch anh, mch Reset reset h thng li trng thi ban u. Cc chn ca VK s c kt ni vi cc khi khc nh ng c, bn phm, khi hin th. Lu tr mt khu qua b nh EEPROM c th lu tr ngay khi mt in. Ton b d liu m ta thit k iu khin h thng kha s u c cha trong b nh ca VK. 2.4.2Khi Hin Th

Khi hin th chnh l mn hnh hin th LCD 16x2

Hnh 2.6 : Khi hin th

Khi hin th c dng l LCD, c 2 ch dng cho LCD l ch LCD 16 bit v ch 8 bit. Trong bi s dng LCD 8 bit th cc ch cn s dng cc chn RW, RS, E, D4 =>D7.2.4.3Khi Bn Phm

Hnh 2.7: Ma Trn 16 Phm

Nguyn l hot ng ca vic qut phm chnh l cho cc ct bng 1 v ln lt cc chn ni vi hng mc 0. Ri kim tra xem c ct no bng 0 hay khng, nu ct no bng 0 trong thi im mt hng bng 0 th pht hin ra phm c bm.2.4.4. Khi Khuch i, ng C V Bo ng

H thng bo ng: cnh bo khi nhp sai mt khu qu 3 ln. Thng qua h thng chng bo ng.

Hnh 2.8 : chung bo ng

B khuch i tn hiu v mch cu H :dng a tn hiu iu khin ng c

Hnh 2.9 : mch cu H khuch i tn hiu

2.4.5Khi NgunCung cp ngun nui cho vi iu khin hot ng theo yu cu ti. y ta to ra ngun 5v cp cho vi iu khin.

Hnh 2.10: Khi ngun cung cp

2.5. LA CHN LINH KIN

2.5.1. KHI IU KHIN PIC 16F877a

a. c im pic 16f877a:

Cng ngh CMOS c c tnh : cng sut thp, cng ngh b nh Flash/EEPROM tc cao. in p hot ng t 2V n 5,5V v tiu tn nng nng thp. ph hp vi nhit lm vic trong cng nghip v trong thng mi.

Tc hot ng :

- DC 20MHz ng vo xung clock

- DC 200ns chu k lnh

Dung lng ca b nh chng trnh Flash l 8K x 14words.

Dung lng ca b nh d liu RAM l 368x8Bytes.

Dung lng ca b nh d liu EEPROM l 256x8 Bytes.

B nh d liu EEPROM cho php xa v ghi 1.000.000 ln.

B nh EEPROM c th lu gi d liu hn 40 nm v c th t lp trnh li c di s iu khin ca phn mm.

S chn : 40 pins. 5 cng vo ra s RA,RB,RC,RD,RE.

Hnh 2.11: S chn ca pic 16F877a.

b. Cc cng vo ra ca PIC 16F877a:

Vic iu khin cc cng vo ra ca pic da trn vic iu khin cc File thanh ghi. V trong ti ch s dng 3 cng vo ra l PORTB, PORTC, PORTD nn chng ti xin a ra c im ca cc chn. PORTB v thanh ghi TRISB:

Portb (RPB) gm 8 pin I/O. thanh ghi iu khin xut nhp tng ng l TRISB. Bn cnh mt s chn ca PORTB cn c s dng trong qu trnh np chng trnh cho vi iu khin vi cc ch no khc nhau. PORTB cn lin quan dn ngt ngoi vi v b Timer0. PORTB cn c tch hp chc nng in tr ko ln c iu khin bi chng trnh.

Ba chn ca PORTB c a hp vi mch in g ri bn trong v chc nng lp trnh in p thp RB3/PGM, RB6/PGC v RB7PGD.

Mi chn ca PORTB c in tr ko ln. Bit iu khin RBPU (OPTION_REG) =0 th c th m tt c cc in tr ko ln . khi portb c thit lp l ng ra th s t ng ngt chc nng in tr ko ln , cng tng t khi CPU b reset lc mi cp in.

Bn chn ca portb RB4:RB7 c cu chc ngt thay i, ch c nhng chn c thit lp cu hnh l ng vo th mi c chc nng ngt. cc chn ng vo l (RB4:RB7) c so snh vi gi tr c c cht trong ln c trc ca portb. Cc ng ra khng trng nhau ca cc chn RB4:RB7 c OR li vi nhau tao ra ngt PORTB vi bt c bo ngt RBIF.

Ngt ny c th kch hot vi iu khin tr li trng thi hot ng khi n ang ch SLEEP. Trong chng trnh phc v ngt th ngi dng c th xa ngt bng cc cch khc nhau: Bt k lnh c hay ghi PORTB s kt thch iu kin khng thch ng.

Xa bt c RBIF.iu kin khng tng thch s tip tc lm c bo ngt RBIF bng 1. Khi c PORTB s chm dt iu kin khng tng thch v cho php xa bt c bo ngt RBIF.

Cu trc ngt thay i dng thot khi ch ngh khi c nhn phm v cc hot ng m PORTB ch c dng cho cu trc thay i ngt.

PORTC v thanh ghi TRISC:

PORTC l port 2 chiu 8 bt. Thanh ghi nh hng l TRISC. Khi bit TRISC=1 th portc l nhp, khi TRISC=0 th portc l xut.

Portc c a hp vi vi chc nng ngoi vi. Cc chn ca portc c mch m Schmit Trigger ng vo. Khi khi I2C c cho php th cc chn PORTC (3,4) c th c nh cu hnh cc mc I2C hoc mc SMBUS bng cch s dng bt CKE (SSPSTAT).

Khi cho php chc nng ngoi vi, nn ch n cc bt TRIS cho mi chn ca PORTC. Mt vi thit b ngoi vi ghi ln bt TRIS lm mt chn nh l 1 ng ra, trong khi cc thit b ngoi vi ghi ln bt TRIS lm nh mt chn ng vo. Khi ghi bt TRIS th khng nh hng n cc thiets b cho php, cc knh c hiu chnh ghi (BSF,BCF,XORWF) vi TRISC l ch n phi trnh dng. Ngi s dng tham chiu ti phn thit b ngoi vi tng ng thip lp cho ng bt TRIS PORTD v thanh ghi TRISD:

PORTD l port 8 bt vi ng vo c mch Schmitt Trigger. Mi chn c th c cu hnh c lp l ng vo hoc ng ra. PORTD c th nh cu hnh nh l port ca vi s l 8 bt bng cch thit lp bt iu khin PSPMODE(TRISE). Trong mode ny th cc b n ng vo dng TTL. PORTD v TRISD khng c xy dng cho cc b m ng vo TTL

Cc BANK thanh ghi:

B nh d liu trn c chia lm nhiu Bank v cha nhng chc nng c bit. hai bit RP0, RP1 nm trong thanh ghi STATUS thuc bit th 5 v th 6 dng chn BANK thanh ghi.

Hai BANK thanh ghi : BANK 0 v BANK 1 thuc a ch t 0x5 n 0x09 l a ch ca PORTA n PORTE dng xut nhp d liu. a ch t 0x85 n 0x89 l a ch ca cc thanh ghi nh hng TRISA n TRISE.

Khi chn BANK thanh ghi ta thit lp cc gi tr ca RP0 v RP1 thuc thanh ghi STATUS nh sau:

Bank 0 : RP0=0, RP1=0.

Bank 1 : RP0=1, RP1=0.

Bank 2 : RP0=0, RP1=1.

Bank 3 : RP0=1, RP1=1.

Hnh 2.12: S File thanh ghi.

Vi phn mm CCS vit chng trnh C cho PIC, khi truy xut cc d liu t cc cng th ta khng cn chn BANK thanh ghi phc tp nh trn. Ta ch cn dng cc lnh : SET_TRIS_X v OUTPUT_X l c th xut nhp. Nhng khi nhp d liu vi cc cng ta khng nn dng lnh OUTPUT_X v trc khi thc hin xut mt d liu th mc nh n SET_TRIS_X. Ta nn khai bo a ch ban u ca thanh ghi v d:

#BYTE PORTB =0x06, #BYTE PORTC=0x07.

Nh th th ta c th xut d liu ra cc cng bng cc lnh gn PORTX=0xXX m khng lm nh hng n thanh ghi nh hng ban u qua lnh SET_TRIS_X.

Cc cng RB, RC, RD l cng vo ra 8 bt, vi cc chn RX0 n RX7.c. chn cng vo ra kt ni vi thit b ngoi vi :

Do trong phn mm CCS c h ch file LCD.C mc nh dng cng PORTD nn ta dng cng RD kt ni vi LCD. iu khin LCD dng PORTD vi thit lp ban u l cng xut d liu iu khin LCD nn ta thit lp ban u l SET_TRIS_D(0x00). Cc chn t RD4 => RD7 ca PIC ni vi cc chn d liu D4 => D7 ca LCD

Chn RD0 ca pic ni vi chn cho php E (enable) ca LCD. Chn RD1 ni vi chn RS chn chn thanh ghi ca LCD

Chn RD2 ni vi chn RW chn chn ch c/ ghi ca LCD.

Chn cng qut 16 phm: ma trn phm ni vi cng RC. Chn cng iu khin ng c , cng tc hnh trnh v bo ng : cng RB

Chn RB0, RB1 ni vi cng tc hnh trnh dng ng c khi iu khin ca Chn chn RB6,RB7 iu khin ng c thng qua mch cu.

Chn chn RB5 a tn hiu ra h thng bo ng.

d. B nh EEPROM:D liu EEPROM v b nh chng trnh Flh c th c v ghi trong sut qu trnh hot ng bnh thng. B nh ny khng c thit lp trc tip trong khng gian file thanh ghi c bit. C 6 thanh ghi FSR c s dng c v ghi b nh ny: EECON1

EECON2

EEDATA

EEDATH

EEADR

EEADRH

Khi giao tip vi khi b nh d liu , thanh ghi EEDATA cha 8bt d liu cho vic c/ghi v thanh ghi EEADR cha a ch nh ca EEPROM ang c truy xut. Nu pic c b nh 128 byte th a ch nm trong khong t 80H n FFH, nu PIC c b nh EEPROM l 256 byte th a ch nm trong khong t 00h n FFh. Vi PIC 16f877a c 256 byte b nh nn EEPROM nm trong khong t 00h n FFh.

Khi giao tip vi b nh chng trnh th hai thanh ghi EEDATA v EEDATH kt hp vi nhau li thnh thanh ghi 16 bit lu tr d liu 14bit cho lnh c/ghi v hai thanh ghi EEADR v EEADRH kt hp li thnh thanh ghi 16 bt lu a ch 13 bit ca nh ang truy sut . Vi pic c dung lng b nh chng trnh l 8k wd th a ch trong khong t 0000h n 1FFFh . Nu truy sut nh c a ch ln hn th s b cun nm trong vng nh thcB nh d liu EEPROM cho php c v ghi 1 byte b nh chng trnh Flash cho php c 1 word v ghi khi 4 word . Hot ng ghi ca b nh chng trnh s t ng thc hin xa trc khi ghi vo khi 4 word . Mt byte ghi vo b nh d liu EEPROM s t ng xa nh ri mi ghi d liu mi xa trc khi ghi Khi chip c m bo bb th CPU c th c v ghi d liu b nh EEPROM. Ty thuc vo cch thit lp cc bt bo v chng ghi, PIC c th cho hoc khng cho ghi d liu vo mt vi khi b nh chng trnh ; tuy nhin cho php c b nh chng trnh. Khi PIC coa m bo v th ngi dung khng cn c truy cp b nh d liu hoc b nh chng trnh. Thanh ghi EEADR v EEADRH

Cp thanh ghi EEADRH:EEADR c th nh a ch ti a 256 byte ca b nh d liu EEPROM hoc ti a 8k word ca b nh chng trnh EEPROM

Khi truy xut b nh d liu th ch dung thanh ghi EEADR lu byte a ch thp

Khi truy xut b nh chng trnh th dung thanh ghi EEADR lu byte a ch thp v thanh ghi EEADRH lu byte cao

Thanh ghi EECON1 v EECON2:EECON1 l thanh ghi iu khin truy xut b nh . Bt iu khin EEPGD dng truy xut b nh chng trnh hoc b nh d liu. Khi reset hoc khi b EEPGD s cho php truy sut b nh d liu. khi bit EEPGD bng 1 th truy xut b nh chng trnh.

Thanh ghi EECON1

Bit 7: EEPGD bit la chn b nh d liu/ chng trnh EEPROM

EEPGD=1 truy xut b nh chng trnh

EEPGD=0 truy xut b nh d liu.

Bit 6 => 4 cha s dng

Bit 3 WRERR : bt c li EEPROM

WRERR =1 vic ghi thc hin xong sm

WRERR = 0 vic ghi c hon thnh.

Bit 2: WREN bit cho php ghi eeprom WREN=1 cho php ghi.

WREN=0 khng cho ghi.

Bit 1: WR bit iu khin ghi

WR=1 bt u chu k ghi. Bit WR c xa bng phn cng sau mi ln ghi xong

WR=0 qu trnh ghi vo eeprom hon thnh

Bit 0 :RD bit iu khin c

RD=1 bt u chi k c eeprom . bit RD c xa bng phn cng .bit RD ch c th c set trong phn mm

RD=0 khng khi ng chu k c eeprom.

c d liu t b nh EEPROM:

c d liu ca mt nh ngi s dng phi ghi a ch vo thanh ghi EEADR, xa bit iu khin EEPGD (EECON1,7) v sau set bit iu khin RD (EECON1) . D liu s xut hin trong thanh ghi EEDATA chu k k. EEDATA s lu gi tr ny cho n khi xut hin ln c k hoc b thay i bi ngi s dng.

Cc bc c b nh d liu EEPROM:

Ghi a ch vo EEADR a ch khng c ln hn dung lng b nh

Xa bit EEPGD ch hng vo b nh d liu EEPROM

Set bit RD bt u hot ng c.

c d liu t thanh ghi EEPROM.

Cc bc trn khi dung vi ngn ng ASM th ta phi tun th ng quy tc. nhng khi dung vi ngn ng C th ta ch cn dung vi mt lnh read_eeprom(address) trong address l a ch ca EEPROM m ta cn c, a ch ny vi dng pic 16f877a t 00h n FFh. Ghi d liu vo b nh EEPROM:

ghi d liu vo EEPROM th ngi s dng phi ghi a ch vo thanh ghi EEADR v d liu vo thanh ghi EEDATA . sau phi thc hin ghi theo trnh t ch nh ghi cho mi byte.

Qu trnh ghi s khng c khi ng nu th t ghi khng c thc hin chnh xc cho mi byte . phi cm tt c cc yu cu ngt khi thc hin qu trnh ghi ny .

Ngoi ra bit WREN trong thanh ghi EECON2 phi c set cho php ghi. C ch ny ngn chn cc hot ng ghi ngu nhin vo EEPROM lin quan n sai st m bo b . Ngi s dng nn gi bit WREN trng thi Clear , ngoi tr khi truy cp d liu vo b nh d liu EEPROM. Bit WREN khng c xa bng phn cng.

Sau khi qu trnh ghi c khi ng th nu ta xa bit WREN s khng nh hng n chu k ny. Bit WR s b chn khng cho ln 1 tr khi bit WREN c set.Khi hon tt chu k ghi bit WR c xa bi phn cng v bit c bo ngt hon thnh xong qu trnh ghi EEIF c set. Ngi dung c th cho php s ngt hoc kim tra bit ny bit qu trnh ghi kt thc . bit EEIF phi c xa bng phn mm.

Tuy rng cc bc ghi d liu vo b nh EEPROM c nhiu bc v nhiu bit trn thanh ghi c n nh vy nhng khi dng C lm vic vi PIC th ta ch cn ch n lnh ghi : WRITE_EEPROM(address,x)

Trong lnh :write_eeprom(address,x)

Address : a ch ca EEPROM ta cn ghi

X : gi tr ta cn ghi (byte).

2.5.2. KHI HIN TH

a. Hnh dng v kch thc:

C rt nhiu loi LCD vi nhiu hnh dng v kch thc khc nhau, trn hnh 1 l hai loi LCD thng dng.

Hnh 2.13: Hnh dng ca LCD

Khi sn xut LCD, nh sn xut tch hp chp iu khin (HD44780) bn trong lp v v ch a cc chn giao tip cn thit. Cc chn ny c nh s th t v t tn nh bn di :

Hnh 2.14 : S chn ca LCD

b. Chc nng cc chn:

Chn sTnChc nng

1VssChn ni t cho LCD, khi thit k mch ta ni chn ny vi GND ca mch iu khin

2VddChn cp ngun cho LCD, khi thit k mch ta ni chn ny vi VCC=5V ca mch iu khin

3VeeChn ny dng iu chnh tng phn ca LCD.

4RsChn chn thanh ghi (Register select). Ni chn RS vi logic 0 (GND) hoc logic 1 (VCC) chn thanh ghi.

+ Logic 0: Bus DB0-DB7 s ni vi thanh ghi lnh IR ca LCD ( ch ghi - write) hoc ni vi b m a ch ca LCD ( ch c - read)

+ Logic 1: Bus DB0-DB7 s ni vi thanh ghi d liu DR bn trong LCD.

5R/wChn chn ch c/ghi (Read/Write). Ni chn R/W vi logic 0 LCD hot ng ch ghi, hoc ni vi logic 1 LCD ch c.

6E Chn cho php (Enable). Sau khi cc tn hiu c t ln bus DB0-DB7, cc lnh ch c chp nhn khi c 1 xung cho php ca chn E.

+ ch ghi: D liu bus s c LCD chuyn vo(chp nhn) thanh ghi bn

trong n khi pht hin mt xung (high-to-low transition) ca tn hiu chn E.

+ ch c: D liu s c LCD xut ra DB0-DB7 khi pht hin cnh ln (low-to-high transition) chn E v c LCD gi bus n khi no chn E xung mc thp.

7-14DB0-DB7 Tm ng ca bus d liu dng trao i thng tin vi MPU. C 2 ch s dng 8 ng bus ny :

+ Ch 8 bit : D liu c truyn trn c 8 ng, vi bit MSB l bit DB7.

+ Ch 4 bit : D liu c truyn trn 4 ng t DB4 ti DB7, bit MSB l DB7

Bng 2.1: Chc nng ca cn chn LCD

c. Cc thanh ghiChp HD44780 c 2 thanh ghi 8 bit quan trng : Thanh ghi lnh IR (Instructor Register) v thanh ghi d liu DR (Data Register)

- Thanh ghi IR : iu khin LCD, ngi dng phi ra lnh thng qua tm ng bus DB0-DB7. Mi lnh c nh sn xut LCD nh a ch r rng. Ngi dng ch vic cung cp a ch lnh bng cch np vo thanh ghi IR. Ngha l, khi ta np vo thanh ghi IR mt chui 8 bit, chp HD44780 s tra bng m lnh ti a ch m IR cung cp v thc hin lnh .

VD : Lnh hin th mn hnh c a ch lnh l 00001100 (DB7DB0)

Lnh hin th mn hnh v con tr c m lnh l 00001110

- Thanh ghi DR : Thanh ghi DR dng cha d liu 8 bit ghi vo vng RAM DDRAM hoc CGRAM ( ch ghi) hoc dng cha d liu t 2 vng RAM ny gi ra cho MPU ( ch c). Ngha l, khi MPU ghi thng tin vo DR, mch ni bn trong chp s t ng ghi thng tin ny vo DDRAM hoc CGRAM. Hoc khi thng tin v a ch c ghi vo IR, d liu a ch ny trong vng RAM ni ca HD44780 s c chuyn ra DR truyn cho MPU. Bng cch iu khin chn RS v R/W chng ta c th chuyn qua li gi 2 thanh ghi ny khi giao tip vi MPU. Bng sau y tm tt li cc thit lp i vi hai chn RS v R/W theo mc ch giao tip.

RSR/WKhi cn

00Ghi vo thanh ghi RS ra lnh cho thanh ghi

01c c bn DB7 v gi tr ca b m a ch DB0-DB6

10Ghi vo thanh ghi DR

11c d liu t DR

Trong chng trnh s dng LCD ch 4bit. Cc lnh c s dng:

lcd_send_byte( BYTE address, BYTE n ) iu khin LCD v d nh lnh : lcd_send_byte(0,0x01) dng xa mn hnh, lcd_send_byte(0,0x08) a con tr v u dng th nht lcd_gotoxy(a,b) a con tr v cc v tr mong mun thc cc dng khc nhau ca LCD. Lcd_gotoxy(x,1) a con tr v dng 1 v tr x, v tr x c th t 1->16 ca LCD printf(lcd_putc,): in mt xu k t ra mn hnh.xu k t c di < 16 k t LCD c th hin th c y lcd_putc() : in mt k t ra mn hnh.2. 2.5.3. Bn Phm

Hnh 2.15: Ma Trn 16 Phm

Thc hin chc nng giao tip vi vi iu khin PIC 16F87, dng hin th nhp password, thay i password, m kha ca S dng bn phm ma trn 16 phm

Vi cc phm s t 0 =>9 v cc phm chc nng m ca, kha ca, v i mt khu.

kt ni vi vi iu khin th ta treo 8 u vo ca ma trn phm vi tr treo ln dng ngun, vi gi tr cu tr treo l R8=4.7K.

Dng ma trn phm 4x4 ging nh hnh v:

Hnh 2.16 : Phm bm s dng trong mchChc nng cc phm trn bn phm :

Phm A : Sau khi nhp password th bm phm A m ca.

Phm B : Ca sau khi m th bm phm B ng li.

Phm C : Thay i mt khu

Phm D :Phm OK dng xc nhn thay i mt khu.Phm * v # : Khi g sai k t th bm * hoc # reset.2.5.4. Khi iu Khin ng C Quay Thun Nghch Ta s dng IC chuyn iu khin ng c L293D :

Hnh 2.17 : IC L293D v s chn. L293D l IC cu H iu khinng c.

L293D gm 4 knh iu khin c th iu khin 2 ng c DC hoc 1 ng c bc 4 pha. iu khin ng c DC, bn s s dng 2 knh ca L293D cho 1 ng c.

L293D c tch hp sn i t bo v vi iu khin chng li dng cm ng khi ng c khi ng hoc tt. V vy, bn ch cn gn motor vo L293D v cc chn ca vi iu khin tng ng, l c th lm cho ng c chy ngay. Dng L293 c 2 loi: L293B/E v L293D, dng L293B c kh nng chu ti cao hn (1A so vi 600mA ca L293D) nhng khng c i t bo v vi iu khin.

Vi mi motor, bn cn 3 chn tvi iu khinkt ni vi L293D, trong c 1 chn iu khin tc ng c dng xung PWM, 2 chn cn li l logic 0 hoc 1 dng iu chnh chiu quay camotor.

Tn hiu iu khin c x l c lp vi nhau vi tng u ra. V d: bn c th iu khin 2 ng c DC chy vi tc khc nhau, hng khc nhau, 1 ng c dng cn 1 ng c chy...

Mi knh ca L293D chu c ti 600mA v dng nh l 1A.

s dng cc ng c cng sut cao hn, bn ch vic gn song song 2 hoc nhiu L293 li vi nhau. Vi 2 IC L293, bn s c ti chu c l 1.2A v ti nh l 2A.

Ngoi ra, L293D c chc nng t ng ngt khi b nng qu mc nhm bo v IC.

Lu : tuyt i khng bao gi lm chp mch cc ng ra motor ca L293D, nu khng bn s lm chy mt bn cu H ngay lp tc.

2.5.5. ng c

Trong m phng v trong gii hn ca m hnh sn phm s dng ng c mt chiu 12V, 800mA iu khin ng m ca, hoc c th dng iu khin ng m cht, then ci.

Ta c th s dng role thay cho ng c ht hoc y cht ca, tng ng vi m/ kha ca.

Hnh 2.18: ng c

Thng qua mch cu H ta a hai tn hiu iu khin ng c t chn RB6,RB7 ca vi iu khin2.5.6. Khi Ngun

Hnh 2.19: S Khi NgunDng ngun 12V xoay chiu a vo cu it to ra in p mt chiu, qua t san phng cho in p bng phng hn. Dng IC7805 n nh in p u ra cho mch ca khi iu khin.

T in 1000u .Ngun 12v, 4A.

2.6. S NGUYN L CA MCHHnh 2.20 : S tng th h thng

2.7. NGUYN L HOT NG CA MCH

Khi mun m ca th phi g ng mt khu vi di 8 k t. Nu g ng th ng c s quay thun, v ca s m. V g sai th mn hnh LCD hin th ch nhp sai mt khu.

Khi ng c quay ht hnh trnh, cng tc hnh trnh m xong ng, khi LCD thng bo m xong.

Nu nhp mt khu sai 3 ln lin tip th h thng bo ng s hot ng, thng qua chn RB5.

Trong khi m xong, nu nhn kha th ng c s quay v ca kha li, ng c quay th nt cng tc hnh trnh kha xong s m, v nu cng tc hnh trnh m xong ng li th ng c ngng quay, LCD bo m xong.

Mun i mt khu ta nhn nt i mt khu trn bn phm, khi ny LCD bo nhp mt khu c, v ta phi nhp ng mt khu c th mi i c mt khu, nu nhp ng mt khu th LCD thng bo nhp mt khu mi. nhp xong th nhn OK, vy l mt khu c i.

2.8. S THUT TON IU KHIN

Bt u

Hnh 2.21 : lu gii thutCHNG 3: XY DNG H THNG

3.1. CHNG TRNH PHN MM

CCS l trnh bin dch lp trnh ngn ng C cho Vi iu khin PIC ca hng Microchip. Chng trnh l s tch hp ca 3 trnh bin dich ring bit cho 3 dng PIC khc nhau l:

PCB cho dng PIC 12bit opcodes

PCM cho dng PIC 14bit opcodes

PCH cho dng PIC 16 v 18bit

Tt c 3 trnh bin dich ny uc tch hp li vo trong mt chng trnh bao gm c trnh son tho v bin dch l CCS.

PIC 16f877a l pic 14. Ta c th dng phn mm lp trnh cho PIC vi ngn ng C d s dng.

Cu chc c bn ca chng trnh khi vt vi C:

#include, #device, #use, #fuses....... // cc tin x l

#define, int8 .......... //nh ngha cc d liu khai bo hng, bin...

Void tnhm() {} dng khai bo, nh ngha hm

Void main() {// chng trnh chnh.}

3.2. CHNG TRNH QUT PHM C BNvoid quetphim(){

PORTB=0xfe;// RB0=0;RB1=1;....RB7=1: kim tra hng 1 c bm if(RB4==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB5==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB6==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB7==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

PORTB=0xfd;// RB0=1;RB1=0;RB2=1;....RB7=1: kim tra hng 2 c bm if(RB4==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB5==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB6==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB7==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

PORTB=0xfb;// RB0=1;RB1=1;RB2=0;RB3=1;....RB7=1: kim tra hng 3 if(RB4==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB5==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB6==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB7==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

PORTB=0xf7;// RB0=1;RB1=1;RB2=1;RB3=0;RB4=1;....RB7=1: hng 4 if(RB4==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB5==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB6==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

if(RB7==0) { chng trnh;while(RB4==0) {khng lm g khi gi phm} }

}

3.3. CHNG TRNH CHNH:

void main()

{

set_tris_b(0x03);RB6=0;RB7=0;

set_tris_d(0x00);

set_tris_e(0x00);porte=0x00;

set_tris_c(0xf0);

portc=0xff;

enable_interrupts(INT_EXT);

enable_interrupts(GLOBAL);

ext_int_edge(H_TO_L);

lcd_init();

lcd_gotoxy(3,1);

for(i=0;i