You are on page 1of 19

i hc Cng Nghip H Ni

DH C IN T 1 K2

N VI X L
bi : Thit k b m sn phm dng cm bin hng ngoi I Gii thiu v mch v s khi Mch s dng cm bin hng ngoi m sn phm i qua mt v tr c nh trn bng truyn. Mch m sn phm bng phng php m xung nn mi khi sn phm i qua bng chuyn th cn c mch chuyn tn hiu t cm bin thnh dng xung.Ta goi phn nay la mch iu ch. Xung tao ra s c a qua khi x l tin hnh m sau s sn phm c hin th ln my tnh. V vi iu khin s dng mc logic TTL cn my tnh th c thit k cng COM theo chun RS232 nn giao tip gia vi iu khin v my tnh chng ta cn c mt mch chuyn i mc tn hiu. T ta c s khi nh sau:

Cm bin v iu ch

X l v tnh ton

Chuyn i mc tn hiu

Hin th bng my tnh

II Tm hiu v cc khi chc nng 1/ Khi cm bin v iu ch a/Cm bin hng ngoi - Cm bin hng ngoi s dng mt cp LED thu/pht hng ngoi - LED pht s pht ra tia hng ngoi khi c cp dng - LED thu khi khng c nh sng hng ngoi chiu vo th c in tr rt ln.nh sng hng ngoi c cng cng mnh th in tr ca LED thu cng nh..

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

LED pht LED thu -S dng c im ny ca LED thu chng ta s dng mch so snh dng O-amp to ra xung. -Mch pht chng ta s dng mt transistor pnp to dng cho LED pht S mch :
5 V

R 6 1 0 0 R 8 4 K 7 D 3 L E D p h a t

Q N

1 P

Khi pht
V C C V V 0 K C C C C V C C 1 K D U 3 V C C R 5 D 4 2 8 + L M 3 5 8 4 4 1 5 A 5 6 8 U + L M 3 5 8 7 5 B 2 L E D R 4 1 0 7 R

L E

T H

Khi thu

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

- Bin tr R4 s c iu chnh to in p so snh vo chn 3. - in tr R5 kt hp vi LED thu to thnh mch phn p.Khi khng c nh sng hng ngoi chiu vo th in tr ca LED thu rt ln => chn 2(-V) c in p > in p chn 3 (+V) do u ra 1 s mc thp = 0V. - O-amp th 2 co nhim v phi hp tr khng tn hiu a ra chn 7 c n nh. - Led D2 dng bo cho ta bit mc logic ca u ra 7. 2 b O-AMP c s dng ly t IC LM358.S chn ca LM 358 :

2/ Khi x l v tinh ton Trong khi ny chng ta s dng vi iu khin 89s52 tnh ton v giao tip vi my tnh.Vi iu khin thuc h 8051. a. Gii thiu cu trc phn cng 89s52 a1) S chn 89s52: 8051 l h vi iu khin (Microcontroller) do hng Intel sn xut. 89s52 c c im nh sau: - 8k byte ROM,256 byte RAM - 4 Port I/O 8 bit (32 chn xut nhp) - 3 b m/ nh thi 16 bit. - Giao tip ni tip song cng hon ton UART (full duplex UART) - 64k byte khng gian b nh chng trnh m rng. - 64k byte khng gian b nh d liu m rng. - Mt b x l lun l (thao tc trn cc bt n). - 6 ngun ngt - Watch Dog Time (WDT) S lc v cc chn ca 8051 (89s52):

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

a2/ Chc nng ca cc chn 8051: Port 0: t chn 32 n chn 39 (P0.0 _P0.7). Port 0 c 2 chc nng: trong cc thit k c nh khng dng b nh m rng n c chc nng nh cc ng IO, i vi thit k ln c b nh m rng n c kt hp gia bus a ch v bus d liu. Port 1: t chn 1 n chn 9 (P1.0 _ P1.7). Port 1 l port IO dng cho giao tip vi thit b ngoi nu cn. Port 2: t chn 21 n chn 28 (P2.0 _P2.7). Port 2 l mt port c tc dng kp dng nh cc ng xut nhp hoc l byte cao ca bus a ch i vi cc thit b dng b nh m rng. Port 3: t chn 10 n chn 17 (P3.0 _ P3.7). Port 3 l port c tc dng kp. Cc chn ca port ny c nhiu chc nng, c cng dng chuyn i c lin h n cc c tnh c bit ca 8051 nh bng sau :

Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7

Tn RXD TXD INT0\ INT1\ T0 T1 WR\ RD\

Chc nng chuyn i Ng vo d liu ni tip. Ng xut d liu ni tip. Ng vo ngt cng th 0. Ng vo ngt cng th 1. Ng vo TIMER/ COUNTER th 0. Ng vo ca TIMER/ COUNTER th 1. Tn hiu ghi d liu ln b nh ngoi. Tn hiu c b nh d liu ngoi

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

PSEN (Program store enable): PSEN l tn hiu ng ra c tc dng cho php c b nh chng trnh m rng v thng c ni n chn OE\ ca Eprom cho php c cc byte m lnh. PSEN mc thp trong thi gian 8051 ly lnh. Cc m lnh ca chng trnh c c t Eprom qua bus d liu, c cht vo thanh ghi lnh bn trong 8051 gii m lnh. Khi 8051 thi hnh chng trnh trong ROM ni PSEN mc cao. ALE (Address Latch Enable): Khi 8051 truy xut b nh bn ngoi, Port 0 c chc nng l bus a ch v d liu do phi tch cc ng d liu v a ch. Tn hiu ra ALE chn th 30 dng lm tn hiu iu khin gii a hp cc ng a ch v d liu khi kt ni chng vi IC cht. Tn hiu chn ALE l mt xung trong khong thi gian port 0 ng vai tr l a ch thp nn cht a ch hon ton t ng. EA\ (External Access): Tn hiu vo EA\ chn 31 thng c mc ln mc 1 hoc mc 0. Nu mc 1, 8051 thi hnh chng trnh t ROM ni. Nu mc 0, 8051 thi hnh chng trnh t b nh m rng. Chn EA\ c ly lm chn cp ngun 21V khi lp trnh cho Eprom trong 8051. RST (Reset): Khi ng vo tn hiu ny a ln mc cao t nht 2 chu k my, cc thanh ghi bn trong c np nhng gi tr thch hp khi ng h thng. Khi cp in mch phi t ng reset. Cc ng vo b dao ng X1, X2: B to dao ng c tch hp bn trong 8051. Khi s dng 8051, ngi ta ch cn ni thm t thch anh v cc t. Tn s t thch anh thng l 12 Mhz -mch reset
V C C

2 C 6 1 0 u F

R 2 1 0 K

-Mch to dao ng (89s52 c th ly tn s thch anh t 0 33Mhz) y ta ly tn s l 11.0592 Mhz to tc baud chun.

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

XTAL2

Y 1

1 . 0 5 C 4 3 3

XT AL1 9 2

M C 5 3 3

h z

Trong mch chng ta s dng ngt ngoi 0 m xung,cng ni tip giao tip vi my tnh qua cng COM DB9,timer 1 to tc baud.Do ta s i su tm hiu v : - Cc ngun ngt - Port ni tip (serial port) - Timer b/ Ngt (interrupt) - 89s52 c 6 ngun gy ngt : ngt ngoi 0,ngt ngoi 1,ngt timer 0,timer 1, timer 2,ngt do port ni tip

Vector ngt v cc c ngt.

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

Chng ta s dng ngt ngoi 0 m xung.Vi phng php ny,nu sn phm i qua bng ti khi vi iu khin ang bn x l th chng ta vn m c.Do s cho kt qu chnh xc hn. - Ngt ngoi 0 ly tn hiu u vo l chn INT0 (P3.2).C hai kiu gy ngt l ngt theo mc 0 v ngt theo sn m.Khi c tn hiu ngt vo chn INT0 th c IE0 c dng ln yu cu phc v ngt.IE0 c xa bi phn mm. C 2 thanh ghi iu khin ngt l: - Thanh ghi cho php/cm ngt IE Bit IE.7 IE.6 IE.5 IE.4 K hiu EA _ ET2 ES a ch bit AFH AEH ADH ACH M t Cho php / Cm ton b Khng c m t Cho php ngt t Timer 2 (8052) Cho php ngt port ni tip

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

IE.3 IE.2 IE.1 IE.0

ET1 EX1 ET0 EX0

ABH AAH A9H A8H

Cho php ngt t Timer 1 Cho php ngt ngoi 1 Cho php ngt t Timer 0 Cho php ngt ngoi 0

Tm tt thanh ghi IE - Thanh ghi u tin ngt IP:

- 2 bit IT0,IT1 nm trong thanh ghi TCON dng chn kiu ngt.IT0=0 cho ta kiu ngt theo mc 0,IT0=1 cho ta kiu ngt theo sn m.Trong bi ny ta s dng ngt theo sn m.Code thit lp ngt :
EA=EX0=1; IT0=1; // cho phep ngat 0 // ngat bang suon am

Chng ta phi m s sn phm n 12 ch s thp phn,tc l c gi tr bng 1012,trong khi kiu s nguyn trong C ln nht l kiu unsigned long int co gi tr ln nht l 4,3*109 (4 byte).Do tit kim b nh m vn m c n 12 ch s ta s dng 3 bin dng unsigned int (2byte) x,y,z mi bin s m t 0000 9999 .Code:
void ngat_ngoai0() interrupt 0 { z=z+1; //tang z len 1 sau moi lan ngat if(z==10000) {z=0;y++;}; //neu z =10000 thi cho z=0 va tang y len 1 if(y==10000) {y=0;x++;}; //neu y =10000 thi cho y=0 va tang x len 1 if(x==10000) x=0; } //neu x =10000 thi cho z=0 va quay lai qua trinh dem

c/ Timer 1 Chng ta dng timer 1 ch 2 (t np li 8 bt auto- reload) to tc baud cho port ni tip. S hot ng ca time 0 va 1 ch ny l :

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

Cc thanh ghi iu khin timer 1: Thanh ghi chn ch TMOD :

Thanh ghi iu khin TCON :

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

iu khin v thit lp cho timer 1 to tc baud ta s ni r phn sau. d/ Port ni tip

S cng ni tip :

C 2 thanh ghi SBUF dng lm phn m d liu.Chng c chung tn gi l SBUF nhng mt thanh ghi ch c th c (dng nhn d liu) v mt thanh ghi ch ghi (dng

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

gi d liu).Ty vo cch truy xut thanh ghi ny l c hay ghi vi iu khin bit l thanh ghi no. Thanh ghi iu khin SCON:

Cc bt SM0,SM1 chn ch truyn thng:

Chng ta s dng ch 1 (truyn, nhn 8 bt)

Ta c bng tc baud :

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

vi iu khin khp vi my tnh chng ta s dng tc baud l 9600. Do tn s thach anh l 11.0582Mhz,SCON = 0,TH1=-3. Ta thit lp cho cng ni tip nh sau:
void thiet_lap() { SCON=0x52; //che do 1 TMOD=0x20; //timer 1 che do 2 TH1=TL1=-3; //tao toc do baud la 9600 TR1=1; //chay timer 1 }

Mun gi mt byte vo ta dng hm sau :


void gui(unsigned char dt) { while(!TI); //cho bo nho dem gui SBUF san sang TI=0; //xoa co bao SBUF=dt; //ghi du lieu vao bo dem }

3/ Khi chuyn i mc in p Nh ni trn,vi iu khin s dng mc in p TTL trong khi cng COM ca my tnh s dng mc RS232. Mc logic TTL RS232 0 0 0.5V +3+12V 1 3.5 5 V -3 -12V IC MAX 232 c 2 knh chuyn i gia hai mc in p trn (mi knh gm mt cng pht vao mt cng thu) :

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

Ta s dng mt knh cho mch:


U T X D R X D T X D C 1 0 1 0 u F u F C 8 C 1 0 9 u F 7 _ R1 1 1 1 3 4 5 2 6 M 8 3S R R 2 3 3 2 1 I NR 2 I NR 1 2 O O O O 1 2 U T 9 U T 1 4 U7 T U T R X D _ R S 2 3 2

1 0 T 1 I N T 1 T 2 I N T 2 C C C C V V A 1 1 2 2 + + -

+ -

C 1 0 C

1 0 u F

X 2 3

5 9 4 8 T X D _ R S 32 3 2 7 R X D _ R S 2 2 3 2 6 1 C O M D B 9

Cng COM DB9 :

4/ Mch nguyn l

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni
S 2 W 1 3 S W _ V D K XTAL2 XTAL1 D 1 1 N L M 41 0 U G N D 0 7 I N O 0 5 C J 1 2 1 A C Q UJ Y 3 3 C 1 0 1 0 0 u F 1 2 0 4 1 1 U 3 T R 1 3 3 C 3 0 0 0 0 V C C Y 1 1 S 1

DH C IN T 1 K2
V C C

2 C 6 1 0 u F

7 8

1 . 0 C 4 3 3

5 9

2 MR h E z S C 5 3 3

u F D L 1 L E D B 1

R 2 1 0 K

5 9 4 8 T X D _ R S 32 3 2 7 R X D _ R S 22 3 2 6 1 C O M D B 9

U J 4

V V C C R T 1 2 3 4 5 6 7 8 9 J 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 X T A X T A Q B 2 5 V 6 2 R J 1 1 2 C O I 0 31 0 K C C R S T 3 3 3 3 3 3 3 3 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 40 C O JN 6 8 U P P P P P P P P P P P P P P P P 2 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 . . . . . . . . . . . . . . . . 0 1 2 3 4 5 6 7

C J 8

1 2

5 1 2

V 4 K

VC C

J N G U O N

5 5 V

/ / / / / / / /

A P A P AP AP AP AP AP AP

D 2 D 2 D2 D2 D2 D2 D2 D2

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

2 /2 A /2 A A 2 A 2 A 2 A 2 A 2 A

1 2 8 3 9 41 0 51 1 61 2 71 3 81 4 1 5

1 2 3 4 5 6 7 8

8 U T X D _ R1 1 1 C 1 1 0 u 0 u C C F F 8 9 u F 1 V C C 7 1 3 4 5 2 6 M 8 3S 3 2 3 2 R 1 I NR R 2 I NR 1 2 O O O O 1 2 U T 9 U T 1 U7 U 4 T T R X D _ R S 2 3 2

1 0 0 / P 23 . 0 / R 1 1X D T 1 / TP 2 3 - . E 1 X/ T1 X2 D I N 2 P 3 . 2 / I 1N 3 T 0 3 P 3 . 3 / I 1N 4 T 1 4 P 3 . 4 /1 T 5 0 5 P 3 . 5 /1 T 6 1 6 P 3 . 6 / W 7 R C 1 7 P 3 . 7 / R D 3 0 L A1 L E / P R 9O 2 L 2 P S E N G N D P P G

J 9 T 0 1 2 3 4 5 I _ B 6I P C O N 6

R X D T X D

1 2

1 0 T 1 I N T 1 T 2 I N T 2 C C C C V V 1 1 2 2 + + -

R 6 I _ B I P 1 K

L 11 9 L 12 8 X T A X T A 3 1 E 9 R A

+ A

A / V S T T 8 9

V 2

C 1 2 3

1 0 u

0 F

X 2 3

20

I N

5/Hin th trn my tnh bng phn mn Hyper teminal Trong Windows c cung cp sn cho chng ta mt phn mn truyn tin qua cng ni tip l Hyper teminal.Cch s dng nh sau: T menu Start programs Acessories communications hyper teminal Nhp tn cho kt ni :

Sau chon cng ni tip :

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni

DH C IN T 1 K2

Cai t cc thng s cho cng :

V by gi th xem kt qu. III nh gi v sn phm *u im : Mch n gin do hin th trn my tnh (khng phi thit k thm phn hin th nh LCD hay led 7 thanh ) v cm bin hng ngoi khng c phn chng nhiu (thu v pht nh sng hng ngoi mt tn s no chng nhiu ).Do mch r tin v d lm. *Nhc im :

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni -

DH C IN T 1 K2

Mch khng co giao tip vi cac phm nhn nn khng t c gi tr cn m ban u (chi m c t 0) hoc gi tr dng m. - Ch m c cc sn phm c kh nng che c nh sng hng ngoi - Khng chng c nhng ngun nhiu hng ngoi - Khong cch gia mch thu v pht cn hn ch * Hng pht trin : - Thm modun nt n cho mch hoc thit k phn mn c th ci t cc thng s ngay trn my tnh. -Thit k thm phn iu ch c th chng nhiu cho cm bin. * ng dng : Vi cc ci tin va nu trn sn phm hon ton c kh nng em vo ng dng trong thc t sn xut. VI:CODE
#include <AT89X52.h> #include <stdio.h> #include <math.h> sbit COI = P3^7 ; unsigned int x=0, y=0, z=0; // 9999 9999 void delay_1ms(unsigned int t) { unsigned int j; TMOD=0x21;//time0 che do 1 for(j=1;j<=t;j++) { TH0 = 64535/256; TL0 = 64535%256; TR0=1; while(!TF0); TR0=TF0=0; TMOD=0x20; }; } //ham bat coi void bat_coi() { unsigned int i; delay_1ms(1); for(i=0;i<200;i++) { delay_1ms(1); COI=~COI; } } //thiet lap truyen thong noi tiep void thiet_lap()

9999 hien thi 12 chu so

// tao coi bip

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni { SCON=0x52; TMOD=0x20; TH1=TL1=-3; TR1=1; } void gui(unsigned char dt) { while(!TI); TI=0; SBUF=dt; } //gui mot chuoi ki tu void ngat_ngoai0() interrupt 0 { z=z+1; if(z==10000) {z=0;y++;}; if(y==10000) {y=0;x++;}; if(x==10000) x=0; } /*ham gui so lieu*/ void gui_ki_tu(unsigned char *s) { while(*s) //lam de khi gap ki tu null o cuoi chuoi { gui(*s); s++; } } //cac ham tinh toan //gui di 4 chu so cua so thap phan void send_data(unsigned int m) { unsigned char M[4],i; unsigned int tg; tg=m%10000;// bien trung gian bang 4 chu so cuoi cua m M[0]=tg/1000; //so hang ngan M[1]=(tg%1000)/100; //so hang tram M[2]=(tg%100)/10; //lay so hang chuc M[3]=tg%10; //lay so hang don vi for(i=0;i<=3;i++) { gui(M[i]+0x30); }; } void khoang_trong(unsigned char kt) { unsigned char j; for(j=0;j<kt;j++)

DH C IN T 1 K2

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni { gui_ki_tu(" ") ; };

DH C IN T 1 K2

} //gui di 1 dong void gui_1dong(unsigned char *s) { unsigned char dem=0; while(*s) //lam de khi gap ki tu null o cuoi chuoi { gui(*s); s++; dem++; } khoang_trong(81-dem); } //ham main void main() { unsigned char i; unsigned int k=0,l=0,m=0; unsigned char code dong2[45]={" === >>> DESIGN BY NHOM 10 <<< === "}; P0=P1=P2=P3=0xff; bat_coi(); thiet_lap(); gui_1dong(" mach dem san pham dung hong ngoai hien thi qua phan mem hyper terminal ") ; for( i=0;i<45;i++) { gui(dong2[i]); delay_1ms(400); }; khoang_trong(35) ; send_data(0); send_data(0); send_data(0); khoang_trong(8); EA=EX0=1; // cho phep ngat 0 IT0=1; // ngat bang suon am while(1) { if((z!=m)) { bat_coi(); k=x;l=y;m=z; send_data(k); send_data(l); send_data(m); khoang_trong(8); };

n Vi iu Khin

Nhm 10

i hc Cng Nghip H Ni }; }

DH C IN T 1 K2

n Vi iu Khin

Nhm 10

You might also like