You are on page 1of 31

H SPKT Hng Yn

Khoa- in_in T

n chuyn ngnh I
MC LC

LI CAM N
3
LI NI U
5
CHNG 1GII THIU CHUNG V C S L LUN TI
1.1 Lp vt l (Physlcal layer)........................................................................................6
1.2 Truyn thng v m ha d liu...............................................................................6
1.2.1 Truyn thng..........................................................................................................6
1.2.2 M ha................................................................................................................... 7
1.3 Chun RS485............................................................................................................ 8
1.3.1 S trm tham gia....................................................................................................9
1.3.2 Tc truyn ti v chiu di dy dn................................................................10
1.3.3. Cp ni...............................................................................................................12
1.3.4.Tr u cui.........................................................................................................12
1.3.5.Ni t................................................................................................................. 13
1.4. Truy nhp bus Master-Slave..................................................................................13
1.4.1.t vn ............................................................................................................ 13
1.4.2.Ch/t (Master/Slave)..........................................................................................14
1.5. Vi iu khin PIC 16F877A...................................................................................15
1.5.1. S chn..........................................................................................................15
1.5.2.Chc nng cc chn.............................................................................................16
1.5.3. Mt vi thng s ca PIC 16F877A...................................................................18
1.5.4. Khi qut v chc nng ca cc port trong vi iu khin PIC16F877A..............19
1.5.5. Mt vi thanh ghi chc nng c bit SFR.........................................................20
1.5.6.Cc vn v Timer............................................................................................22
1.6. IC Max 485............................................................................................................ 25
1.6.1. S chn..........................................................................................................25
1.6.2. Chc nng ca IC Max485.................................................................................26
1.6.3. c im............................................................................................................. 26
1.6.4. Mch ng dng...................................................................................................26
1.6.5.Truyn d liu vi Max485.................................................................................27
CHNG 2THIT K,THI CNG H THNG IU KHIN THIT B S
DNG LP VT L RS485
2.1. S khi ton mch............................................................................................28
2.2. S nguyn l.....................................................................................................28
2.3. CODE chng trnh:..............................................................................................29
CHNG 3KT LUN, NH GI
3.1 Hng pht trin ti...........................................................................................32
3.2 Ti liu tham kho..................................................................................................33

GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

LI CAM N
Trong qu trnh thc hin ti m c d g p phi rt nhiu nhng vn kh khn
song vi s hng dn ca thy Giang Hng Bc cng vi s chi bo ca cc thy c
gio Khoa in in T v s n lc khng ngng ca c nhm, n nay chung em
hon thnh ti.. Tuy nhin, do kin thc ca chung em con hn ch, nn khng
th trnh khi nhng thiu st. V vy chung em rt mong nhn c nhng kin
ng gp chn thnh t pha thy Giang Hng Bc ,cng cc thy c gio Khoa in
in T v cc bn c ti ny ca chung em ngy cng hon thin v pht
trin ln mc cao hn trong thi gian gn nht.
Sau 1 thi gian thc hin ti ti khoa, chung em c hc hi rt nhiu
kinh nghim v kin thc. Cc thy c gia trong khoa nhit tnh chi bo. c bit
l s hng dn rt nhit tnh ca thy Giang Hng Bc giup chung em hon thnh
ti ny.
Chung em xin chn thnh cm n!

GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Nhn xt gio vin hng dn

.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................

LI NI U
Trong nhng nm gn y, nn kinh t ca nc ta pht trin rt mnh m v nhanh
chng, t c kt qu ny th c s ng gp rt ca ngnh k thut in - in t,
k thut vi x l.
GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Vi s pht trin nh v bo hin nay th k thut in-in t, k thut vi x l


ang xm nhp vo tt c cc ngnh khoa hc k thut khc v p ng c mi
nhu cu ca ngi dn. S ra i ca cc vi mch iu khin vi gi thnh gim
nhanh ,kh nng lp trnh ngy cng cao mang li nhng thay i su sc trong
ngnh k thut in in t.
bc u lm quen dn vi vi iu khin, chung em c cc thy c gio
trong khoa giao cho n mn hc vi ti: Thit k h thng iu khin thit b
s dng lp vt l RS485
Chung em xin chn thnh cm n!
Nhm sinh vin thc hin:
Nguyn Thanh Hi
Nguyn Tuyn Hong

GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

CHNG 1
GII THIU CHUNG V C S L LUN TI
1.1 Lp vt l (Physlcal layer)
Lp vt l l lp di cng trong m hnh phn lp chc nng truyn thng ca mt
trm thit b. Lp ny m nhim ton b cng vic truyn dn d liu bng phng
tin vt l. Cc qui nh y m t giao din vt l gia mt trm thit b v ml
trng truyn thng:
Cc chl tit v cu truc mng (bus, cy, hnh sao,...)
K thut truyn dn (RS-485, MBP, truyn cp quang,...)
Phng php m ha bit {NRZ, Manchester, FSK,...)
Ch truyn tl (di rng/di c s/di mang, ng b/khng ng b)
Cc tc truyn cho php
Giao din c hc (phch cm, gic cm,...).
Lu rng lp vt l hon ton khng cp ti ml trng truyn thng, m chi ni
ti giao din vi n.
Lp vt l cn c chun ha sao cho mt h thng truyn thng c s la chn gia
mt vl kh nng khc nhau. Trong cc h thng bus trng, s la chn ny khng
ln qu, hu ht da trn mt vi chun v k thut c bn.
1.2 Truyn thng v m ha d liu
1.2.1 Truyn thng
Truyn thng l mt qu trnh trao i thng tin gia hai ch th vi nhau, c gi l
cc i tc giao tip, theo mt phng php c qui nh trc. i tc ny c th
iu khin i tc kia, hoc quan st trng thi ca i tc. Cc i tc giao tip c th
l ngi hoc h thng k thut - tc l cc thit b phn cng (i tc vt l) hoc cc
chng trnh phn mm (i tc logic).
thc hin vic giao tip hay truyn thng ta cn cc tn hiu thch hp, c th l tn
hiu tng t hay tn hiu s. S phn bit gia tn hiu v thng tin dn ti s phn
bit gia x l tn hiu v x l thng tin, gia truyn tn hiu vi truyn thng. C th
s dng cc dng tn hiu rt khc nhau truyn ti mt ngun thng tin, cng nh
mt tn hiu c th mang nhiu ngun thng tin khc nhau.
1.2.2 M ha
Thng tin cn trao l gia cc l tc c m ha trc khi c mt h thng
truyn dn tn hiu chuyn ti pha bn kia. Trong thut ng truyn thng, m ha chi
GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

qu trnh bin i ngun thng tin (d liu) cn trao i sang mt chui tn hiu thch
hp truyn dn. Qu trnh ny t nht thng bao gm hal bc: m ha ngun v
m ha ng truyn.
Trong qu trnh m ha ngun, d liu mang thng tin thc dng hay d liu ngun
c b sung cc thng tin ph tr cn thit cho vic truyn dn, v d a chi bn gi
v bn nhn, kiu d liu, thng tn kim li, v.v... D liu trc khi gi i cng c th
c phn chia thnh nhiu gi d liu bc in ph hp vi phng php truyn,
nn li
tng hiu sut ng truyn, hoc m ha bo mt. Nh vy, lng thng tin cha
ng trong mt tn hiu s nhiu hn lng thng tin thc dng cn truyn ti.

i tc truyn thng

i tc truyn thng

M ha/Gii m

M ha/Gii m
H thng truyn
dn tn hiu
Hnh 1.1: Nguyn tc c bn ca truyn thng
Sau khi c m ha ngun, m ha ng truyn l qu trnh to tn hiu tng
ng Vi cc bt trong gi d liu hay bc in theo mt phng php nht nh ph
hp vi ng truyn v k thut truyn. Hnh 2.4 minh ha mt v d m ha ng
truyn n gin, cc bit 0 c th hin bng mc in p cao v cc bit 1 bng mc
in p thp.
M ha ng truyn ng ngha vi m ha bt, bi tn hiu do khu m ha tng bit
to ra cng chnh l tn hiu c truyn dn. i vi cc h thng truyn thng khc,
qu trnh m ha ng truyn c th bao hm vic iu bin tn hiu v dn knh, cho
php truyn cng mt luc nhiu ngun thng tin v truyn tc cao. Vic dn knh c
th thc hin theo phng php phn chia tn s, phn chia thi gian hoc phn chia
m.

Hnh 1.2: V d m ha bt
Trong mt tn hiu c truyn ti i, cn c mt phng php bn nhn phn bit
gll hn gia cc bit d liu nl tip nhau, gi l phng php ng b ha. to

GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

iu kin thc hin c vic ny mt cch n gin, tn hiu thng c pht theo
nhp u n, mi nhp ng vi mt bit, nh c minh ha trn Hnh 1.2.
Qu trnh ngc li vi m ha l gii m, tc l chuyn i cc tn hiu nhn c
thnh dy bit tng ng v sau x l, loi b cc thng tin b sung ti to thng
tin ngun.
1.3 Chun RS485
RS- 485 s dng tn hiu in p chnh lch i xng gia hai dy dn A v B.

Thng s

iu kin

in p u ra h mch
u p u ra khi c ti

RLOAD = 54

Ti
thiu

Ti a

1,5V

6V

,5V

5V

Dong ra ngn mch


Thi gian qu u ra

250mA
RLOAD = 54
CLOAD= 54

in p ch chung RLOAD = 54
u ra Voc
nhy cm u vo

-1V

-7V VCM12V

3V
200mV

in p ch chung
VCM

-7V

Tr khng u vo

12K

12V

Bng 1: Tm tt cc thng s quan trng ca RS-485


c tnh khc nhau c bn ca RS-485 c kh nng ghp ni nhiu im, v th c
dng ph bin trong cc h thng bus trng. C th, 32 trm c th tham gia ghp ni,
c nh a chi v giao tip ng thi trong mt on RS-485 m khng cn b lp.
t c iu ny, trong mt thi im chi mt trm c php kim sot ng
dn v pht tn hiu, v th mt b kch thch u phi a v ch tr khng cao mi
khi ri, to iu kin cho cc b kch thch cc trm khc tham gia. Ch ny c
gi l tri-State. Mt s vi mch RS-485 t ng x l tnh hung ny, trong nhiu
GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

trng hp khc vic thuc v trch nhim ca phn mm iu khin truyn thng.
Trong mch ca b kch thch RS-485 c mt tn hiu vo Enable c dng cho
mc ch chuyn b kch thch v trng thi pht tn hiu hoc trl-state.

Hnh 1.3: S b kch thch (driver) v b thu (receiver) RS-485


1.3.1 S trm tham gia
RS-485 cho php ni mng 32 ti n v (unit load, UL), ng vl 32 b thu pht hoc
nhiu hn, ty theo cch chn ti cho ml thit b thnh vin. nh ngha mt ti n
v c minh ha trn Hnh 2.41. Thng thng, mi b thu pht c thit k tng
ng vi mt tl n v. Gn y cng c nhng c gng gim ti xung con 1/2UL
hoc 1/4UL, tc l tng tr khng u vo ln hai hoc bn ln, Vi mc ch tng s
trm ln 64 hoc 128. Tuy nhin, tng s trm theo cch ny s gn vi vic phi gim
tc truyn thng, v cc trm c tr khng ln s hot ng chm hn.

Hnh 1.4: Qui nh trng thi logic ca tn hiu RS-485


GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Gii hn 32 ti n v xut pht t c tnh k thut ca h thng truyn thng nhiu


im. Cc ti c mc song song v v th vic tng ti s lm suy gim tn hiu vt
qu mc cho php. Theo qui nh chun, mt b kch thch tn hiu phi m bo dong
tng cng 60mA va cung cp cho:

Hai tr u cui mc song song tng ng ti 60 (120 ti mi u) vi in


p ti thiu 1,5V, to dong tng ng vi 25mA

32 ti n v mc song song vi dong lmA qua mi ti (trng hp xu nht),


to dong tng ng vi 32mA.
1.3.2 Tc truyn ti v chiu di dy dn
RS-485 cho php khong cch ti a gia trm u v trm cui trong mt on mng
l 1200m, khng ph thuc vo s trm tham gia. Tc truyn dn ti a c th ln
ti 10Mbit/s, mt s h thng gn y c kh nng lm vic vi tc 12Mbit/s. Tuy
nhin c s rng buc gia tc truyn dn ti a v di dy dn cho php, tc l
mt mng di 1200m khng th lm vic vi tc 10MBd. Quan h gia chung ph
thuc nhiu vo cht lng cp dn c dng cng nh ph thuc vo vic nh gi
cht lng tn hiu.
Tc truyn ti a cng ph thuc vo cht lng cp mng, c th l i dy xon
kiu STP c kh nng chng nhiu tt hn loi UTP v v th c th truyn vi tc
cao hn. C th s dng cc b lp tng s trm trong mt mng, cng nh chiu
di dy dn ln nhiu ln, ng thi m bo c cht lng tn hiu.

Hnh 1.5 :Quan h gia tc truyn v chiu di dy dn ti a trong RS-485 s dng


i dy xon AWG 24
Cu hnh mng
RS-485 l chun duy nht do EIA a ra m c kh nng truyn thng a im thc s
chi dng mt ng dn chung duy nht, c gi l bus. Chnh v vy m n c
dng lm chun cho lp vt l a s cc h thng bus hin thi.
Cu hnh ph bin nht l s dng hai dy dn cho vic truyn tn hiu, nh c minh
ha trn Hnh. Trong trng hp ny, h thng chi c th lm vic vi ch hai chiu
gin on (haft-duplex) v cc trm c th nhn quyn bnh ng trong vic truy nhp
ng dn. Chu rng ng dn c kt thuc bng hai tr ti hai u ch khng
GVHD:
Giang Hng Bc

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

c php gia ng dy. V mc ch n gin, dy t khng c v y, tuy


nhin trong thc t vic ni dy t l rt cn thit

Hnh 1.6: Cu hnh mng RS-485 hai dy


Mt mng RS-485 cng c th c ni theo kiu 4 dy, nh hnh 1.6 m t. Mt trm
ch (master) ng vai tro iu khin ton b giao tip gia cc trm k c vic truy
nhp ng dn. Cc trm t (slave) khng th lin h trc tip m u phi qua trm
ch. Trm ch pht tn hiu yu cu v cc trm t c trch nhim p ng. vn
kim sot thm nhp ng dn y chnh l vic khng ch cc trm t khng tr
li cng mt luc. Vi cu hnh ny, vic truyn thng c th thc hin ch hai chiu
ton phn ph hp vi cc ng dng oi hi tc truyn ti thng tin cao, tuy nhin
y phi tr gi cho hai ng dy b sung.
1.3.3. Cp ni
RS-485 khng phi l mt chun trn vn m chi l mt chun v c tnh in hc, v
vy khng a ra cc qul nh cho cp ni cng nh cc b ni. C th dng i dy
xon, cp trn hoc cc loi cp khc, tuy nhin i dy xon l vn l loi cp c
s dng ph bin nht nh c tnh chng tp nhiu v xuyn m.
1.3.4.Tr u cui
Do tc truyn thng v chiu di dy dn c th khc nhau rt nhiu trong cc ng
dng, hu nh tt c cc bus RS-485 u yu cu s dng tr u cui ti hai u dy.
s dng tr u cui c tc dng chng cc hiu ng ph trong truyn dn tn hiu, v
d s phn x tn hiu. Tr u cui dng cho RS-485 c th t 100Q n 120Q. Mt
sai lm thng gy tc hi nghim trng trong thc t l dng tr u cui ti mi
trm. i vi mt mng bus c 10 trm th tr khng to ra do cc tr u cui mc
song song s l 10Q thay ch khng phi 502 nh thng thng. Chu rng ti ca
cc tr u cui chim phn ln trong ton mch, nn trong trng hp ny hu qu
gy ra l dong qua cc tr u cui s ln t, cc tn hiu mang thng tin ti cc b thu
GVHD:
Giang Hng Bc

10

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

s suy yu mnh dn ti sai lch hon ton. Mt s b ni c tch hp sn tr u cui,


c th dng jumper chn ch thch hp ty theo v tr ca trm trong mng.
Phng php c dng ph bin nht l chi dng mt in tr thun ni gia hai dy
A v B ti mi u. Phng php ny con c gi l chn song song. in tr c
chn c gi tr tng ng vi tr khng c trng (tr khng sng) ca cp ni. Nh
vy s khng c tn hiu phn x v cht lng tn hiu mang thng tin s c m
bo. Nhc im ca phng php ny l s hao tn ngun ti hai in tr.

Hnh 1.7: Cc phng php chn u cui RS-485


Phng php th hai c gi l chn RC, s dng kt hp mt t c mc ni tip vi
in tr R. Mch RC ny cho php khc phc nhc im ca cch s dng mt in
tr thun nu trn. Trong luc tn hiu giai on qu , t c c tc dng ngn mch v
tr R c tc dng chn u cui. Khi t c o chiu s cn tr dong mt chiu v v th
c tc dng gim ti. Tuy nhin, hiu ng thng thp {lowpass) ca mch RC khng
cho php h thng lm vic vi tc cao.
Mt bin th ca phng php chn song song cng c s dng rng ric tn l
chn tin cy, bi n c tc dng khc na l to thin p tin cy m bo mt dong ti
thiu cho trng hp bus rl hoc c s c.
1.3.5.Ni t
Mc d mc tn hiu c xc nh bng in p chnh lch gia hai dy dn A v B
khng c lin quan ti t, h thng RS-485 vn cn mt ng dy nl t to mt
ng thot cho nhiu ch chung v cc dong khc, v d dong u vo b thu. Mt
sai lm thng gp trong thc t l chi dng hal dy ni hai trm. Trong trng hp
nh vy, dong ch chung s tm cch quay ngc tr ll ngun pht, bc x nhiu ra
mi trng xung quanh, nh hng ti tnh tng thch in t ca h thng. Ni t
s c tc dng to mt ng thot tr khng nh ti mt v tr xc nh, nh vy gim
thiu tc hi gy nhiu. Hn th na, vi cu hnh tr u cui tin cy, vic ni t to
thin p s gi mt mc in p ti thiu gia hai dy A v B trong trng hp k c
khi bus ri hoc c s c.

GVHD:
Giang Hng Bc

11

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

1.4. Truy nhp bus Master-Slave


1.4.1.t vn
Trong mt mng c cu truc bus, cc thnh vin phi chia nhau thi gian s dng
ng dn. trnh s xung t v tn hiu gy ra sai lnh v thng tin, mi thi
im trn mt ng dn chi duy nht mt in tn c php truyn i. Chnh v vy
mng phi c iu khin sao cho ti mt thi im nht nh th chi mt thnh vin
trong mng c gi thng tin i. Con s lng thnh vin trong mng mun nhn
thng tin th khng hn ch. Mt trong nhng vn quan trng hng u nh hng
ti cht lng ca mi h thng bus l phng php phn chia thi gian gi thng tin
trn ng dn hay phng php truy nhp bus.
Phng php truy nhp bus l mt trong nhng vn c bn i vi cc h thng bus,
bi mi phng php c nhng nh hng khc nhau ti cc tnh nng k thut ca h
thng. C th, ta phi quan tm ti t nht ba kha cnh: tin cy, tnh nng thi gian
thc v hiu sut s dng ng truyn. Tnh nng thi gian thc y l kh nng
p ng nhu cu trao i thng tin mt cch kp thi v tin cy. Con hiu sut s dng
ng truyn l mc khai thc, s dng ng truyn.
1.4.2.Ch/t (Master/Slave)
Trong phng php ch/t, mt trm ch (master) c trch nhim ch ng phn chia
quyn truy nhp bus cho cc trm t (slave). Cc trm t ng vai tro b ng, chi c
quyn truy nhp bus v gi tn hiu i khi c yu cu. Trm ch c th dng phng
php hi tun t (polling) theo chu k kim sot ton b hot ng giao tip ca c
h thng. Nh vy, cc trm t c th gi cc d liu thu thp t qu trnh k thut ti
trm ch (c th l mt PLC, mt PC, v.v...) cng nh nhn cc thng tin iu khin t
trm ch.

Hnh 1.8: Phng php ch t

GVHD:
Giang Hng Bc

12

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Trong mt s h thng, thm ch cc trm t khng c quyn giao tip trc tip vi
nhau, m bt c d liu cn trao i no cng phi qua trm ch. Nu hot ng giao
tip din ra theo chu k, trm ch s c trch nhim ch ng yu cu d liu t trm
t cn gi v sau s chuyn ti trm t cn nhn. Trong trng hp mt trm t cn
trao i d liu bt thng vi mt trm khc phi thng bo yu cu ca mnh khi
c trm ch hi n v sau ch c phc v.
Trnh t c tham gia giao tip, hay trnh t c hi ca cc trm t c th do ngi
s dng qui nh trc (tin nh) bng cc cng c to lp cu hnh. Trong trng hp
chi c mt trm ch duy nht, thi gian cn cho trm ch hon thnh vic hi tun t
mt vong cng chnh l thi gian ti thiu ca chu k bus. Do vy, chu k bus c th
tnh ton trc c mt cch tng i chc chn. y chnh l mt trong nhng yu
t th hin tnh nng thi gian thc ca h thng.

u im:
Tin nh
n gin, tn km
Tr tu tp trung ti mt trm ch

Nhc im
tin cy ph thuc vo mt trm duy nht
Hiu sut trao i d liu gia hai trm t thp

ng dng ch yu
Ph bin trong cc h thng bus cp thp (bus trng hay bus thit b)
Trao i thng tin hu nh chi din ra gia trm ch l thit b iu khin v cc
trm t l thit b trng hoc cc module vo/ra
Chnh v hai l do nu trn, phng php ch/t chi c dng ph bin trong cc h
thng bus cp thp, tc bus trng hay bus thit b, khi vic trao l thng tin hu nh
chi din ra gia trm ch l thit b iu khin v cc trm t l thit b trng hoc cc
module vo/ra phn tn. Trong trng hp gia cc thit b t c nhu cu trao i d
liu trc tip, trm ch chi c vai tro phn chia quyn truy nhp bus ch khng kim
sot hon ton hot ng giao tip trong h thng.

GVHD:
Giang Hng Bc

13

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

1.5. Vi iu khin PIC 16F877A


1.5.1. S chn

Hnh 1.9: S chn PIC 16F877A

GVHD:
Giang Hng Bc

14

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

1.5.2.Chc nng cc chn

Hnh 1.10: Chc nng ca PIC 16F877A

Chn OSCl/CLKl(13): ng vo kt ni vi dao ng thch anh hoc ng vo


nhn xung clock t bn ngoi.

Chn OSC2/CLK2(14): ng ra dao ng thch anh hoc ng ra cp xung


clock.

Chn MCLR/VPP(1) c 2 chc nng


MCLR : ng vo reset tch cc mc thp.
Vpp: ng vo nhn in p lp trnh khi lp trnh cho PIC.

Chn RA0/AN0(2), RAI/AN 1(3), RA2/AN2(3): c 2 chc nng


RAO, 1,2: xut/ nhp s.
AN 0,1,2: ng vo tng t ca knh th 0,1,2.

Chn RA2/AN2/VREF-/CVREF+(4): xut nhp s/ ng vo tng t ca knh


th 2/ nh vo in p chun thp ca b AD/ ng vo in p chn cao ca b AD.
GVHD:
Giang Hng Bc

15

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Chn RA3/AN3/VREF+(5): xut nhp s/ ng vo tng t knh 3/ ng vo


in p chun (cao) ca b AD.

Chn RA4/T0CK1/C10UT(6); xut nhp s/ ng vo xung clock bn ngoi cho


Timer 0/ ng ra b so snh 1.

Chn RA5/AN4/-SS/ C20UT(7): xut nhp s/ ng vo tng t knh 4/ ng


vo chn la SPI ph/ ng ra b so snh 2.

Chn RBO/INT (33): xut nhp s/ ng vo tn hiu ngt ngoi.

Chn RB1(34), RB2(35): xut nhp s.

Chn RB3/PGM(36): xut nhp s/ cho php lp trnh in p thp ICSP.

Chn RB4(37), RB5(38): xut nhp s.

Chn RB6/PGC(39): xut nhp s/ mch g ri v xung clock lp trnh ICSP.

Chn RB7/PGD(40): xut nhp s/ mch g ri v d liu lp trnh ICSP.

Chn RC0/T1OCO/TlCKI(15); xut nhp s/ ng vo b giao ng Timerl/ ng


vo xung clock bn ngoi Timer 1.

Chn RC1/T1OSI/CCP2(16) : xut nhp s/ ng vo b dao ng Timer 1/ ng


vo Capture2, ng ra compare2, ng ra PWM2.

Chn RC2/CCP1(17): xut nhp s/ ng vo Capturel ,ng ra comparel, ng ra


PWM1.

Chn RC3/SCK/SCL8): xut nhp s/ ng vo xung clock ni tip ng b,


ng ra ch SPI./ ng vo xung clock ni tip ng b, ng ra ca ch I2C.

Chn RC4/SDI/SDA(23): xut nhp s/ d liu vo SPI/ xut nhp d liu I2C.

Chn RC5/SDO(24): xut nhp s/ d liu ra SPI.

Chn RC6/TX/CK(25): xut nhp s/ truyn bt ng b USART/ xung ng b


USART.

Chn RC7/RX/DT(26): xut nhp s/ nhn bt ng b USART.

Chn RD0-7/PSP0-7( 19-30): xut nhp s/ d liu port song song.

Chn REO/ RD /AN5(8): xut nhp s/ iu khin port song song/ ng vo


tng t 5.

Chn RE1/ WR/AN6(9): xut nhp s/ iu khin ghi port song song/ ng vo
tung t knh th 6.

Chn RE2/ CS/AN7(10): xut nhp s/ Chn chn la iu khin port song
song/ ng vo tng t knh th 7.

Chn VDD(11, 32) v VSS(12, 31): l cc chn ngun ca PIC.


1.5.3. Mt vi thng s ca PIC 16F877A
y l vi iu khin thuc h PIC16Fxxx vi tp lnh gm 35 lnh c di 14 bit.
Mi lnh u c thc thi trong mt chu k xung clock. Tc hot ng ti a cho
php l 20 MHz vi mt chu k lnh l 200ns. B nh chng trnh 8Kx14 bit, b nh
d liu 368x8 byte RAM v b nh d liu EEPROM vi dung lng 256x8 byte.S
PORT I/O l 5 vi 33 pin I/O.
GVHD:
Giang Hng Bc

16

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Cc c tnh ngoi vi b gm cc khi chc nng sau:


-Timer0: b m 8 bit vi b chia tn s 8 bit.
-Timerl: b m 16 bit vi b chia tn s, c th thc hin chc nng m da vo
xung clock ngoi vi ngay khi vi iu khin hot ng ch sleep.
-Timer2: b m 8 bit vi b chia tn s, b postcaler.
- Hai b Capture/so snh/iu ch rng xung.
- Cc chun giao tip ni tip SSP (Synchronous Serial Port), SPI v I2C.
- Chun giao tip ni tip USART vi 9 bit a chi.
- Cng giao tip song song PSP (Parallel Slave Port) vi cc chn iu khin RD, WR.
>Bn cnh l mt vi c tnh khc ca vi iu khin nh:
- B nh flash vi kh nng ghi xa c 100.000 ln.
- B nh EEPROM vi kh nng ghi xa c 1.000.000 ln.
- D liu b nh EEPROM c th lu tr trn 40 nm.
- Kh nng t np chng trnh vi s iu khin ca phn mm.
- Np c chng trnh ngay trn mch in ICSP (In Circuit Serial Programming)
thng qua 2 chn.
- Watchdog Timer vi b dao ng trong.
- Chc nng bo mt m chng trnh.
- Ch Sleep.
- C th hot ng vi nhiu dng Oscillator khc nhau

1.5.4. Khi qut v chc nng ca cc port trong vi iu khin PIC16F877A

Hnh 1.11: Cc Port ca PIC16F877A


GVHD:
Giang Hng Bc

17

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

PORTA
PORTA gm c 6 chn. Cc chn ca PortA, ta lp trnh c th thc hin c chc
nng hai chiu : xut d liu t vi iu khin ra ngoi vi v nhp d liu t ngoi vi
vo vi iu khin.
Vic xut nhp d liu PIC16F877A khc vi h 8051. tt c cc PORT ca
PIC16F877A, mi thi im chi thc hin c mt chc nng :xut hoc nhp.
chuyn t chc nng ny nhp qua chc nng xut hay ngc li, ta phi x l bng
phn mm, khng nh 8051 t hiu luc no l chc nng nhp, luc no l chc nng
xut.
Trong kin truc phn cng ca PIC16F877A, ngi ta s dng thanh ghi TRISA a
chi 85H iu khin chc nng I/O trn. Mun xc lp cc chn no ca PORTA l
nhp (input) th ta set bit tng ng chn trong thanh ghi TRISA. Ngc li, mun
chn no l output th ta clear bit tng ng chn trong thanh ghi TRISA. iu ny
hon ton tng t i vi cc PORT con li
Ngoi ra, PORTA con c cc chc nng quan trng sau :
- Ng vo Analog ca b ADC : thc hin chc nng chuyn t Analog sang
Digital
- Ng vo in th so snh
- Ng vo xung Clock ca Timer0 trong kin truc phn cng : thc hin cc
nhim v m xung thng qua Timer0
- Ng vo ca b giao tip MSSP (Master Synchronous Serial Port)

PORTB
PORTB c 8 chn. Cng nh PORTA, cc chn PORTB cng thc hin c 2 chc
nng : input v output. Hai chc nng trn c iu khin bi thanh ghi TRISB. Khi
mun chn no ca PORTB l input th ta set bit tng ng trong thanh ghi TRISB,
ngc li mun chn no l output th ta clear bit tng ng trong TRISB.
Thanh ghi TRISB con c tch hp b in tr ko ln c th iu khin c bng
chng trnh.

PORTC
PORTC c 8 chn v cng thc hin c 2 chc nng input v output di s
iu khin ca thanh ghi TRISC tng t nh hai thanh ghi trn.
Ngoi ra PORTC con c cc chc nng quan trng sau :
- Ng vo xung clock cho Timer1 trong kin truc phn cng
- B PWM thc hin chc nng iu xung lp trnh c tn s, duty cycle: s dng
trong iu khin tc v v tr ca ng c v.v.
- Tch hp cc b giao tip ni tip I2C, SPI, SSP, USART

PORTD
GVHD:
Giang Hng Bc

18

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

PORTD c 8 chn. Thanh ghi TRISD iu khin 2 chc nng input v output ca
PORTD tng t nh trn. PORTD cng l cng xut d liu ca chun giao tip song
song PSP (Parallel SlavePort)

PORTE
PORTE c 3 chn. Thanh ghi iu khin xut nhp tng ng l TRISE. Cc chn ca
PORTE c ng vo analog. Bn cnh PORTE con l cc chn iu khin ca chun
giao tip PSP.
1.5.5.Mt vi thanh ghi chc nng c bit SFR
Thanh ghi STATUS: thanh ghi ny c mt c 4 bank thanh ghi cc a chi 03h, 83h,
103h v 183h : cha kt qu thc hin php ton ca khi ALU, trng thi reset v cc
bit chn bank cn truy xut trong b nh d liu.

Thanh ghi OPTION_REG : c mt bank2 v bank3 c a chi 81h v 181h. Thanh


ghi ny cho php c v ghi, cho php iu khin chc nng pull_up ca cc chn
trong PORTB, xc lp cc tham s v xung tc ng, cnh tc ng ca ngt ngoi vi
v b m Timer0

Thanh ghi INTCON : c mt c 4 bank a chi 0Bh,8Bh,10Bh,18Bh. Thanh ghi


cho php c v ghi, cha cc bit iu khin v cc bit bo trn timer0, ngt ngoi vi
RB0/INT v ngt khi thay i trng thi ti cc chn ca PORTB.

Thanh ghi PIE1 :a chi 8Ch, cha cc bit iu khin chi tit cc ngt ca cc khi
chc nng ngoi vi.

Thanh ghi PIR1 : a chi 0Ch, cha c ngt ca cc khi chc nng ngoi vi, cc ngt
ny c cho php bi cc bit iu khin cha trong thanh ghi PIE1.

GVHD:
Giang Hng Bc

19

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Thanh ghi PIE2 : a chi 8Dh, cha cc bit iu khin cc ngt ca cc khi chc nng
CCP, SSP bu, ngt ca b so snh v ngt ghi vo b nh EEPROM.

Thanh ghi PIR2: a chi 0Dh, cha c ngt ca cc khi chc nng ngoi vi, cc ngt
ny c cho php bi cc bit iu khin cha trong thanh ghi PIE2

Thanh ghi PCON : a chi 8Eh, cha cc c hiu cho bit trng thi cc ch reset
ca vi iu khin.

Thanh ghi W(work)


y l thanh ghi rt c bit trong PIC16F877A. N c vai tro tng t nh thanh ghi
Accummulator ca 8051, tuy nhin tm nh hng ca n rng hn rt nhiu.
Tp lnh ca PIC16F877A c tt c 35 lnh th s lnh c s gp mt ca thanh ghi
W l 23 lnh. Hu ht cc lnh ca PIC16F877A u lin quan n thanh ghi W. V d
nh, trong PIC chung ta khng c php chuyn trc tip gi tr ca mt thanh ghi
ny qua thanh ghi khc m phi chuyn thng qua thanh ghi W.
Thanh ghi W c 8 bit v khng xut hin trong bt k bank thanh ghi no ca b nh
d liu ca 16F877A. Mi dong lnh trong PIC16F877a c m t trong 14 bit. Khi
ta thc hin mt lnh no , n phi lu a chi ca thanh ghi b tc ng (chim 8
bit) v gi tr mt hng s k no (thm 8 bit na) l 16 bit, vt qu gii hn 14 bit.
Do vy ta khng th no tin hnh mt php tnh ton trc tip no gia 2 thanh ghi
vi nhau hoc gia mt thanh ghi vi mt hng s k. Hu ht cc lnh ca
PIC16F877A u phi lin quan n thanh ghi W cng v l do . Khi thc hin mt
dong lnh no , th PIC s khng phi tn 8 bit lu a chi ca thanh ghi W trong
m lnh ( v c hiu ngm). C th xem thanh ghi W l thanh ghi trung gian trong
qu trnh vit chng trnh cho PIC16F877A.
1.5.6.Cc vn v Timer
PIC16F877A c tt c 3 timer :
timer0 (8 bit), timer1 (16 bit) v timer2 (8 bit).
GVHD:
Giang Hng Bc

20

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Timer0:

Hnh 1.12.S khi ca Timer0


Cng ging nh 8051, Timer0 ca 16F877A cng c 2 chc nng : nh thi v m
xung. 2 chc nng trn c th c la chn thng qua bit s 5 TOCS ca thanh ghi
OPTION.
Ngoi ra, ta cng c th la chn cnh tch cc ca xung clock, cnh tc ng ngt
thng qua thanh ghi trn.
Timer0 c tch hp thm b tin nh 8 bit (prescaler), c tc dng m rng dung
lng ca Timer0. B prescaler ny c th c iu chinh bi cc 3 bit PS2:PS0
trong thanh ghi OPTION. N c th c gi tr 1:2, 1:4, 1:8, 1:16, 1:32, 1:64, 1:128,
1:256 ty thuc vo vic thit lp cc gi tr 0 ,1 cho 3 bit trn.
B tin nh c gi tr 1:2 chng hn ,c ngha l : bnh thng khng s dng b tin
nh ca Timer0 (ng ngha vi tin nh ti l 1:1) th c khi c tc ng ca 1 xung
clock th timer0 s tng thm mt n v. Nu s dng b tin nh 1:4 th phi mt 4
xung clock th timer0 mi tng thm mt n v. V hnh chung, gi tr ca timer0 (8
bit) luc ny khng con l 255 na m l 255*4=1020.
Cc thanh ghi lin quan n Timer0 bao gm :
TMR0 : cha gi tr m ca Timer0
INTCON : cho php ngt hot ng
OPTION_REG : iu khin prescaler
Timer1

GVHD:
Giang Hng Bc

21

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

Hnh 1.13: S khi ca Timer1


Timer1 l b nh thi 16 bit, gi tr ca Timer1 s c lu trong hai thanh ghi 8 bit
TMR1H:TMR1L. C ngt ca Timer1 l bit TMR1IF, bit iu khin ca Timer1 l
TRM1IE.
Cp thanh ghi ca TMR1 s tng t 0000h ln n FFFFh ri sau trn v 0000h.
Nu ngt c cho php, n s xy ra khi khi gi tr ca TMR1 trn t FFFFh ri v
0000h, luc ny TMR1IF s bt ln.
Timer1 c 3 ch hot ng :
- Ch hot ng nh thi ng b : Ch c la chn bi bit TMR1CS. Trong
ch ny xung cp cho Timer1 l Fosc/4, bit T1SYNC khng c tc dng.
- Ch m ng b : trong ch ny, gi tr ca timer1 s tng khi c xung cnh
lnh vo chn T1OSI/RC1. Xung clock ngoi s c ng b vi xung clock ni, hot
ng ng b c thc hin ngay sau b tin nh ti l xung (prescaler).
- Ch m bt ng b: ch ny xy ra khi bit T1SYNC c set. B nh thi s
tip tc m trong sut qu trnh ng ca vi iu khin v c kh nng to mt ngt khi
b nh thi trng v lm cho Vi iu khin thot khi trng thi ng.
Timer2 : l b nh thi 8 bit bao gm mt b tin nh (prescaler), mt b hu nh
Postscaler v mt thanh ghi chu k vit tt l PR2. Vic kt hp timer2 vi 2 b nh ti
l cho php n hot ng nh mt b inh thi 16 bit. Module timer2 cung cp thi
gian hot ng cho ch iu bin xung PWM nu module CCP c chn.

Hnh:
1.14: S
khi ca
Timer 2

GVHD:
Giang Hng Bc

22

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

1.6. IC Max 485


1.6.1. S chn

Hnh : S chn IC Max 485

Bng 2: Chc nng cc chn ca IC Max 485


1.6.2. Chc nng ca IC Max485
chuyn tn hiu t chun TTL sang chun RS485 v ngc li ta s dng IC
MAX485.
MAX485 c thit k cho vic truyn nhn d liu, hot ng tng thch vi
chun RS-232 v chun RS-485. MAX485 bao gm ng truyn v nhn vi sai, c
hai c th hot ng c lp vi nhau, khi khng cho php th ng ra trng thi tng
tr cao. MAX485 gm b pht v b thu, tn hiu vo b pht D logic TTL i thnh
hai tn hiu A v B, khi tn hiu iu khin DE mc thp th hai chn AB cch ly vi
vi mch. Tn hiu vo b thu A v B, tn hiu ra R logic TTL ty thuc hiu in p
gia A v B, khi /RE logic 1 th R cch ly vi vi mch.
1.6.3. c im
-Tc bit Max= 2,5Mbps
-C th kt ni ti a 32 thit b trn bus 485 .
GVHD:
Giang Hng Bc

23

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

-in p hot ng : -7V ~ 12V.


-Thng dng 5V.
-Bus Max485 truyn d liu Vi sai bng 2 dy A,B nn khong cch truyn ln, kh
nng chng nhiu tt.
-Vi A-B > 200mV s to mc logic 1.
-Vi B-A>200mV s to mc logic 0.
- Thi gian tr truyn l 10ns v khi nhn l 20n
- Nhit hot ng t -40C n 85C.
1.6.4. Mch ng dng

H
nh 1.15:Mch ng dng ca Max485
Bus RS485 vi 2 thit b. c th ni ti a 32 max485 trn 1 bus.
Cc chn cng loi cn c ni vi nhau. B ni vi B, A ni A m bo d liu
truyn nhn ung.
1.6.5.Truyn d liu vi Max485

Hnh
truyn d

1.16: S test
liu Max485

Truyn d liu vi Max485 cn thc hin cc bc sau.


-Kt ni chn A vi A, B vi B gia 2 IC.
GVHD:
Giang Hng Bc

24

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

-Cu hnh truyn trn IC1, cho chn DE mc 1.


-Cu hnh nhn trn IC2, cho chn RE mc 0.
-Gi d liu vo ti chn DI ca IC1.
-c D liu Ra ti chn DO ca IC2.

GVHD:
Giang Hng Bc

25

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

CHNG 2
THIT K,THI CNG H THNG IU KHIN THIT B S DNG LP
VT L RS485
2.1. S khi ton mch
KHI
MASTER

TRUYN D
LIU

KHI
SLAVE

KHI NGUN
Hnh 2.1: S khi ton mch
2.2. S nguyn l

Hnh 2.2: S nguyn l ton mch

GVHD:
Giang Hng Bc

26

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

2.3. CODE chng trnh:


Master:
char dat[10];

// b m cho truyn nhn d liu

sbit rs485_rxtx_pin at RC2_bit;


sbit rs485_rxtx_pin_direction at TRISC2_bit;
// hm ngt nhn d liu
void interrupt() {
RS485Master_Receive(dat);
}
void main(){
ADCON1|= 0x07;
TRISA = 0xff ;
PORTB = 0;
TRISB = 0;

// thit lp I/O cho PORTA

UART1_Init(9600);
Delay_ms(100);
RS485Master_Init();
dat[4] = 0;
dat[5] = 0;
dat[6] = 0;
RCIE_bit = 1;
TXIE_bit = 0;
PEIE_bit = 1;
GIE_bit = 1;

// khi to UART
// khi to cho Master
// xa c nhn d liu
// xa c bo li
// cho php ngt nhn d liu trn UART1
// dng ngt truyn d liu trn UART1
// cho php ngt ngoi vi
// ngt ton cc

while (1){
if (dat[5]) {
// nu tm thy li
PORTD = 0xAA;
}
if(Button(&PORTA, 0, 20, 0)) // nu bm nut bm chn RA1
{
while(Button(&PORTA, 0, 20, 0));
RS485Master_Send(dat,1,160); // truyn d liu ti slave c a chi 160
}
GVHD:
Giang Hng Bc

27

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

}
}
Slave:
char dat[9];

// b m cho truyn nhn d liu

sbit rs485_rxtx_pin at RC2_bit;


sbit rs485_rxtx_pin_direction at TRISC2_bit;
// hm ngt nhn d liu
void interrupt() {
RS485Slave_Receive(dat);
}
void main() {
ADCON1 |=0x07; // Thiep lap I/0
TRISA=0xFF; // la ngo vao
PORTB = 0;
TRISB = 0;
UART1_Init(9600);
// khi to UART
Delay_ms(100);
RS485Slave_Init(160);
// khi to slave c a chi 160
dat[4] = 0;
dat[5] = 0;
dat[6] = 0;
RCIE_bit = 1;
// cho php ngt nhn d liu trn UART1
TXIE_bit = 0;
// dng ngt truyn d liu trn UART1
PEIE_bit = 1;
// cho php ngt ngoi vi
GIE_bit = 1;
// ngt ton cc
while (1) {
if (dat[4]) {
// nu nhn c d liu t master
dat[4] = 0;
PORTB.B0 =~ PORTB.B0;
}
if(Button(&PORTA,0,10,0))
{
while(Button(&PORTA,0,10,0));
PORTB.B0 =~ PORTB.B0;
RS485Slave_Send(dat,1); // bo v cho master
}
GVHD:
Giang Hng Bc

28

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

}
}

GVHD:
Giang Hng Bc

29

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

CHNG 3
KT LUN, NH GI
3.1. Hng pht trin ti
Cuc sng cng ngy cng hin i v vic iu khin thit b cng cng n gin ha
v thng minh hn. i vi ti Thit k h thng iu khin thit b s dng lp
vt l RS485ta c th pht trin thnh m hnh nh thng minh vi vic iu khin
cc thit b trong nh qua b iu khin trung tm cng nh thu thp c cc thng s
nh nhit , m trong nh...V hin nay trn th trng c nhiu hng sn xut
ra nhng SmartHome(SmartHome ca BKAV) Vit Nam khi nim nh thng minh
cng khng xa l g , n mang n s tin li cho con ngi do ti c tnh thc t
cao.

GVHD:
Giang Hng Bc

30

H SPKT Hng Yn
Khoa- in_in T

n chuyn ngnh I

3.2. Ti liu tham kho


[1] Hong Minh Sn, Mng Truyn Thng Cng Ngip, Nh xut bn Khoa hc v k
thut, 2006.
[2] Nguyn nh Phu: Gio trnh vi x l 2.
[3] H Ni Aptech Computer Education Center, Gio trnh C c bn.

GVHD:
Giang Hng Bc

31

You might also like