Quang Bao Qua Internet
-
Upload
longcaothang2012 -
Category
Documents
-
view
219 -
download
0
Transcript of Quang Bao Qua Internet
-
8/2/2019 Quang Bao Qua Internet
1/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 2
PHN NI DUNG
-
8/2/2019 Quang Bao Qua Internet
2/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 3
CHNG DN NHP
1.1 T VN :Thng tin lin lc l vn c quan tm trong x hi. Ngay t ngy xa, con
ngi bit vn dng nhng g c sn truyn tin nh la, m thanh, cc du
hiu
Ngy nay, vi s pht trin ca x hi th ngy cng c nhiu cch tip cn vi
nhng thng tin mi. Ta c th bit c thng tin qua bo ch, truyn hnh, mng
internet, qua cc pano, p phch Thng tin cn phi c truyn i nhanh chng,
kp thi v ph bin rng ri trong ton x hi. V vic thu thp thng tin kp thi,
chnh xc l yu t ht sc quan trng trong s thnh cng ca mi lnh vc. Ccthit b t ng c iu khin t xa qua mt thit b ch hoc c iu khin
trc tip qua h thng my tnh.
Vic s dng vi iu khin iu khin hin th c rt nhiu u im m cc
phng php truyn thng nh pan, p phch khng c c nh vic iu chnh
thng tin mt cch nhanh chng bng cch thay i chng trnh. Vi nhng l do
trn, nhm thc hin ti a ra mt cch thc na phc v thng tin l dng
quang bo. Ni dung nghin cu ca ti chnh l to ra mt bng quang bo
ng dng trong vic hin th thong tin cc ni cng cng nh cng ty, nh xng,
nh ga
Th gii ngy cng pht trin th lnh vc iu khin cn phi c m rng
hn. Vic ng dng mng truyn thng cng nghip vo sn xut mang li nhiu
thun li cho x hi loi ngi, thng tin c cp nht nhanh chng v c iu
khin mt cch chnh xc.
-
8/2/2019 Quang Bao Qua Internet
3/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 4
1.2 TM QUAN TRNG CA TI
Quang bo ngy nay c a vo s dng rt nhiu lnh vc khc nhau
nh: truyn thng, qung co, gii thiu sn phm, thng bo tin tc (thay cho ccbn tin bng giy). ti c mt v tr quan trng trong nhng ng dng i hi
cn hin th thng tin cp nht t internet. lng thng tin thay i lin tc m cc
phng php khc khng th thc hin c hoc qu tn km.
Xut pht t nhng li ch trn, nhm thc hin ti s thit k v thi cng m
hnh mt bng quang bo c kh nng giao tip internet, thn thin vi ngi s
dng, v s c hin th trn bng quang bo iu khin t xa qua internet.
1.3 NI DUNG TI:
Vi khong thi gian thc hin ti 4 tun, nhm tho lun v chn ni
dung ca ti nh sau:
- Tm hiu cu trc mn Internet.
- Thi cng bng quang bo hin th n sc kch thc 832 im nh.
- Thay i thng tin trn quang bo bng cch truyn d liu vo vi x l
thng qua giao din web.
1.4 MC CH TI:
Trong qu trnh nghin cu v thc hin ti ny nhm gip ngi hc:
- Tng kh nng t nghin cu cng nh t hc.
- Bc u tip xc vi thc t.
- Vn dng nhng kin thc c ng thi tm ti nhng kin thc mi
hiu su sc hn trong lnh vc ny.
thit k c mt h thng nh nu trn th ngi nghin cu phi nm
vng kin thc chuyn ngnh in t, tm hiu, nghin cu qua sch v, ti liu
nc ngoi v dng mch thc t thi cng phn cng.
-
8/2/2019 Quang Bao Qua Internet
4/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 5
1.5 I TNG NGHIN CU:
- Cc phng n iu khin v x l d liu cho bng led ma trn.
- Tm hiu vi iu khin PIC16F877A.
- Tm hiu vi iu khin PIC 18LF4680.
- Tm hiu phng php lp trnh CCS cho PIC.
- Tm hiu phng php lp trnh nhng trang web vo vi x l
18LF4680.
- Tm hiu IC giao tip Ethetnet ENC28J60.
- Bng quang bo led ma trn kch thc 8 x 32 im nh.
1.6 LP K HOCH NGHIN CU:
thc hin ti ny nhm sinh vin kt hp s dng nhiu phng php
v phng tin h tr gm c:
- Tham kho ti liu: k thut xung, k thut s, in t cn bn, vi iu
khin.
- Quan st.
- Thc nghim.
- Tng kt kinh nghim.
- Phng tin: my vi tnh, Internet, th vin.
K hoch nghin cu:
- Tun 1: Nhn ti v lp cng tng qut.
Thu thp ti liu v lp cng chi tit.
- Tun 2, 3, 4: Thit k thi cng v vit bo co.
-
8/2/2019 Quang Bao Qua Internet
5/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 6
CHNG II:
TNG QUAN V MNG INTERNET
2.1. Gii thiu:Internet l mt h thng thng tin ton cu c th c truy nhp cng cng
gm cc mng my tnh c lin kt vi nhau. H thng ny truyn thng tin theo
kiu ni chuyn gi d liu (packet switching) da trn mt giao thc lin mng
c chun ha (giao thc IP). H thng ny bao gm hng ngn mng my tnh
nh hn ca cc doanh nghip, ca cc vin nghin cu v cc trng i hc, ca
ngi dng c nhn, v cc chnh ph trn ton cu. Chng cung cp mt khi
lng thng tin v dch v khng l trn internet.Mng Internet mang li rt nhiu tin ch hu dng cho ngi s dng, mt
trong cc tin ch ph thng ca Internet l h thng th in t (email), tr chuyn
trc tuyn (chat), my truy tm d liu (search engine), cc dch v thng mi v
chuyn ngn, v cc dch v v y t gio dc nh l cha bnh t xa hoc t chc
cc lp hc o.
Ngun thng tin khng l km theo cc dch v tng ng chnh l h thng cc
trang Web lin kt vi nhau v cc ti liu khc trong WWW (World Wide Web).Tri vi mt s cch s dng thng ngy, Internet v WWW khng ng ngha.
Internet l mt tp hp cc mng my tnh kt ni vi nhau bng dy ng, cp
quang, v.v..; cn WWW, hay Web, l mt tp hp cc ti liu lin kt vi nhau
bng cc siu lin kt (hyperlink) v cc a ch URL, v n c th c truy nhp
bng cch s dng Internet.
2.2. Hot ng ca mng internet2.2.1. Cc Giao Thc ( Protocols).
Cc giao thc l tp cc lut m cc my tnh phi tun theo khi giao
tip trn Internet.
Tranmission Control Protocol (TCP): thit lp kt ni gia hai mytnh truyn ti d liu, chia d liu thnh nhng gi nh v m
-
8/2/2019 Quang Bao Qua Internet
6/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 7
bo vic truyn nhn d liu. TCP l giao thc hng kt ni
(connection-oriented protocol).
User Datagram Protocol (UDP): thit lp kt ni nhanh nhng khngchc chn gia cc my tnh truyn ti d liu, cung cp t dch v
khc phc li.
Internet Protocol (IP): iu chnh ng i ca nhng gi d liung truyn nhn trn Internet. TCP l giao thc phi kt ni
(connectionless protocol).
HTTP: cho php trao i thng tin trn Internet. FTP: cho php truyn nhn file trn Internet. SMTP: cho php gi th in t trn Internet. POP3: cho php nhn th in t trn Internet.
TCP/IP c dng lm giao thc chun khi giao tip trn Internet v
n c lp vi nn ca h thng (platform independent) v khng c
t chc no c quyn s hu giao thc ny.
2.2.2. a Ch IP ( IP Adress).Internet l mt mng kt ni rng ln gia cc my tnh. xc nh
mt my tnh trn mng ny, ngi ta dng mt con s gi l a chIP. a ch IP gm mt tp 4 s nh hn 255 v c ngn cch bi
cc du .. V d: 41.212.196.197.
2.2.3. M Hnh Khch Ch ( Client Server Model).Internet da trn m hnh khch ch (client server), trong d
liu c trao i thng qua cc trang web. Trong m hnh client
server, mi my tnh c xc nh bi mt a ch Internet protocol
(IP) v c my tnh client, server cng chp nhn mt giao thcchung giao tip vi nhau.
Trong m hnh khch - ch, my khch (client computer) yu cu
thng tin t mt my ch (server). My ch chp nhn yu cu v gi
-
8/2/2019 Quang Bao Qua Internet
7/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 8
thng tin v cho my khch. Vic trao i thng tin ny c din ra
thng qua nhng trang web.
2.2.4. H Thng Tn Min ( DNS- Domain Name System).Mi my tnh trn mng Internet c xc nh bng a ch IP,
nhng con s ny rt kh nh. khc phc nhc im ny, ngi
ta dng h thng tn min t tn cho my tnh. V d: tn min
www.yahoo.com ng vi a ch IP 216.109.127.28. request web
page Min (domain) ng vi mt tp cc my tnh trn Internet. Phn
m rng ca tn min (domain name extension) c dng xc
nh quc gia hay t chc.
2.3. Kt Ni Internet. kt ni vi Internet cn c mt s yu cu v phn cng v phn mm sau:
Phn cng: my tnh, kt ni thng qua ng dy in thoi hoc ktni cp, modem.
Phn mm: kt ni internet, h iu hnh, giao thc TCP/IP, trnhduyt web.
Cc yu cu thit yu khi kt ni vi Internet: kt ni vi Internet thng qua
mt nh cung cp Internet (Internet Service Provider), modem, trnh duyt v
a ch URL.
2.4. Giao Thc TCP/IP:TCP/IP l b giao thc cho php kt ni cc h thng mng khng ng nht
vi
nhau. TCP/IP l vit tt ca Transmission Control Protocol (Giao thc
iu Khin Truyn thng)/Internet Protocol (Giao thc Internet), ngy nay
TCP/IP
c s dng rng ri trong c c mng cc b cng nh trn mng Internet
ton cu. TCP/IP khng ch gm 2 giao thc m thc t n l tp hp ca
nhiu giao thc. Chng ta gi l 1 h giao thc hay b giao thc (Suite Of
Protocols).
-
8/2/2019 Quang Bao Qua Internet
8/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 9
TCP/IP c xem l gin lc ca m hnh tham chiu OSI vi bn tng, trong
m hnh ny l (theo th t t trn xung):
+ Tng ng dng (Application Layer)
+ Tng giao vn (Transport Layer)
+Tng mng (Internet Layer)
+ Tng lin mng (Network Interface Layer)
Hnh 2.1 Kin trc TCP/IP
Tng lin mng (Network Interface Layer): Tng Lin Mng c trch nhim a
d liu ti v nhn d liu t phng tin truyn dn. Tng ny bao gm cc thit
b
giao tip mng(Card Mng v Cp Mng) v chng trnh cung cp cc thng tin
cn
thit c th hot ng, truy nhp ng truyn vt l qua thit b giao tip mng.
Tng mng (Internet Layer): Nm trn tng lin mng. Tng ny c chc nng
gn
-
8/2/2019 Quang Bao Qua Internet
9/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 10
a ch, ng gi v nh tuyn (Route) d liu. Bn giao thc quan trng nht
trongtng ny gm:
IP (Internet Protocol): C chc nng gn a ch cho d liu trc khi
truyn v nh tuyn chng ti ch.
ARP (Address Resolution Protocol): C chc nng bin dch a ch IP ca
my ch thnh a ch MAC (Media Access Control).
ICMP (Internet Control Message Protocol): C chc nng thng bo li
trong trng hp truyn d liu b hng.
IGMP (Internet Group Management Protocol): C chc nng iu khin
truyn a hng (Multicast).
Tng giao vn (Transport Layer): C trch nhim thit lp phin truyn thng
gia
cc my tnh v quy nh cch truyn d liu 2 giao thc chnh trong tng ny gm
c
hai giao thc chnh: TCP (Transmission Control Protocol) v UDP (User
Datagram Protocol). TCP cung cp cc knh truyn thng hng kt ni v m
bo truyn d liu mt cch tin cy, n cung cp mt lung d liu tin cy gia hai
trm, n s dng cc c ch nh chia nh cc gi tin ca tng trn thnh cc gi tinc kch thc thch hp cho tng mng bn di, bo nhn gi tin, t hn ch thi
gian time-out m bo bn nhn bit c cc gi tin gi i. TCP thng
truyn cc gi tin c kch thc ln v yu cu pha nhn xc nhn v cc gi tin
nhn. Do tng ny m bo tnh tin cy, tng trn s khng cn quan tm n na.
UDP cung cp mt dch v n gin hn cho tng ng dng. UDP cung cp
knh truyn thng phi kt ni, n ch gi cc gi d liu t trm ny ti trm kia m
khng m bo cc gi tin n c ti ch. Cc ng dng dng UDPthng ch
truyn nhng gi c kch thc nh, tin cy d liu ph thuc vo tng ng
dng.
Cc c ch m bo tin cy cn c thc hin bi tng trn.
-
8/2/2019 Quang Bao Qua Internet
10/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 11
Tng ng dng (Application Layer): Tng ng dng l tng trn cng ca m hnh
TCP/IP bao gm cc tin trnh v cc ng dng cung cp cho ngi s dng
truy
cp mng. Mt s giao thc thng dng trong tng ny l:
DHCP (Dynamic Host Configuration Protocol): Giao thc cu hnh trm
ng.
DNS (Domain Name System): H thng tn min
SNMP (Simpe Network Management Protocol): Giao thc qun l
mng n gin.
FTP (File Transfer Protocol): Giao thc truyn tp tin
TFTP (Trivial File Transfer Protocol): Giao thc truyn tp tin bnh
thng
SMTP (Simple Mail Transfer Protocol): Giao thc truyn th n gin.
TELNET
2.5. Cng Ngh Ethernet:Hn 20 nm trc, Ethernet ra i mang li mt mng truyn d liu ni tip
tc cao; ti nay, n tr thnh mt chun c chp nhn khp th gii,
v l giao thc thng tr cc mng LAN. Hn 85% kt ni mng c ci ttrn th gii l Ethernet. Tc truyn d liu ph bin nht ca Ethernet l
10 triu bit/s (10 Mbps), mc d vy, hu ht cc mng hin nay ang c
nhanh chng nng cp ln Fast Ethernet vi tc 100 Mbps. Ethernet
thng gn vi h iu khin cng nghip qua mt iu khin c lp kt
ni vi PC hay mng bng cp Ethernet.
Ngy 22 thng 5 nm 1973, Robert Metcalfe thuc Trung tm Nghin cu
Palto Alto ca hng Xerox PARC, bang California, a ra tngh thng kt ni mng my tnh cho php cc my tnh c th truyn d
liu vi nhau v vi my in lazer. Lc ny, cc h thng tnh ton ln u
c thit k da trn cc my tnh trung tm t tin (mainframe). im khc
bit ln m Ethernet mang li l cc my tnh c th trao i thng tin trc
-
8/2/2019 Quang Bao Qua Internet
11/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 12
tip vi nhau m khng cn qua my tnh trung tm. M hnh mi ny lm
thay i th gii cng ngh truyn thng.
Chun Ethernet 10Mbps u tin c xut bn nm 1980 bi s phi
hp pht trin ca 3 hng : DEC, Intel v Xerox. Chun ny c tn DIX
Ethernet (ly tn theo 3 ch ci u ca tn cc hng). U ban 802.3 ca
IEEE ly DIX Ethernet lm nn tng pht trin. Nm 1985, chun
802.3 u tin ra i vi tn IEEE 802.3 Carrier Sense Multiple
Access with Collition Detection (CSMA/CD) Access Method vesus
Physical Layer Specification. Mc d khng s dng tn Ethernet nhng
hu ht mi ngi u hiu l chun ca cng ngh Ethernet. Ngy
nay chun IEEE 802.3 l chun chnh thc ca Ethernet. IEEE pht trin
chun Ethernet trn nhiu cng ngh truyn dn khc nhau v th c nhiu loi
mng Ethernet. Cc chun Ethernet u hot ng tng Data Link trong m
hnh 7 lp OSI v th n v d liu m cc trm trao i vi nhau l cc
khung (frame). Cu trc khung Ethernet nh sau:
Hnh 2.2. Cu trc khung tin Ethernet
Cc trng quan trng trong phn mo u s c m t di y:
preamble: trng ny nh du s xut hin ca khung bit, n lun mang
gi tr 10101010. T nhm bit ny, pha nhn c th to ra xung ng h 10
Mhz.
SFD (start frame delimiter): trng ny mi thc s xc nh s bt u
ca mt khung. N lun mang gi tr 10101011.
Cc trng Destination v Source: mang a ch vt l ca cc trm nhn
v gi khung, xc nh khung c gi t u v s c gi ti u.
LEN: gi tr ca trng ni ln ln ca phn d liu m khung mang
theo.
-
8/2/2019 Quang Bao Qua Internet
12/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 13
FCS mang CRC (cyclic redundancy checksum): pha gi s tnh ton
trng ny trc khi truyn khung. Pha nhn tnh ton li CRC ny theo cch
tng t. Nu hai kt qu trng nhau, khung c xem l nhn ng, ngc
li khung coi nh l li v b loi b.
-
8/2/2019 Quang Bao Qua Internet
13/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 14
CHNG III:
GII THIU MODEL ETHERNET S DNG
ENC28J603.1 Gii thiu
Hnh 3.1. Modeml ethernet s dng ENC28J60
y m model c Microchip cung cp min ph cng vi b th vinTCP/IP Stack ca d n m ngun m .
Model s dng Jack RJ45 tch hp sn bin p v Led.Ng giao tip a ra header sn giao tip vi cc microcontroller khc
nhau nh PIC, dsPIC, 8051/AVR, ARM... bao gm cc chn +5V, +3.3V,
CLK0, INT, SO, SI, SCK, CS, RST, INT s tit kim rt nhiu thi gian
v chi ph cho pht trin ng dng ca mnh.
Mng hnh LCD dng hin th a ch IP khi kt ni vo mng.
-
8/2/2019 Quang Bao Qua Internet
14/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 15
3.2 Vi mch truyn thng Enthernet ENC28J60.Trn th gii c rt nhiu hng cung cp vi mch h tr sn sng cho cc
giao tip theo giao thc TCP/IP, nh cc hng ln: Realtek, Conexant,
MicroChip,... Tuy nhin, xt trn quan im ca ngi thit k th cc chp c
nh gi cao l chp p ng c nhu cu thc t (khng thiu v cng khng
qu d tha tnh nng), c s h tr ti a t hng v cc th vin lp
trnh, d dng giao tip vi cc vi x l, mch thit k n gin, t i hi cc
linh kin ngoi. T nhng tiu ch , cng vi s ra i dng chp h tr
hon ton giao thc ethernet, vic la chn ENC28J60 ca MicroChip l
la chn rt ph hp, c v tnh nng k thut v gi c (ti thi im nm
2008,2009 gi ~3USD/1chp). Ngoi ra, hng h tr y ti liu v cc
th vin lp trnh, rt thn thin khi ghp ni vi cc h vi x l c trn th
trng.
3.2.1 Cc thng s k thut.
Hnh 3.2. S vi mch giao tip ethernet ENC28J60
Gii thiu chung: Tng thch chun IEEE 802.3 Ethernet Controller. Tch hp a ch MAC v 10BASE-T PHY
-
8/2/2019 Quang Bao Qua Internet
15/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 16
B m SRAM 8 Kbyte Transmit/Receive Packet Dual PortBuffer.
Ch t ng gi li khi c xung t. Ch t ng hy b cc gi tin sai.
B m: Kch thc b m transmit/receive c th lp trnh c. Gim st qu trnh nhn FIFO.
PHY: B lc tn hiu ra. C ch Loopback
Mac(Media access Control): H tr Unicast, Multicast v Broadcast H tr nhiu dng ng gi tin Magic Packet, Unicast,
Multicast ,Broadcast
3.2.2 Cc khi c bn bn trong ENC28J60:Bao gm 7 khi c bn sau:
1. Mt giao din SPI dng giao tip vi vi iu khin.2. Khi gim st v iu khin ENC28J60.3. B nh m Sram cho vic truy v nhn gi tin.4. Khi gim st vic truy cp vo b nh m.5. Khi Bus d liu gi m lnh thng qua SPI.6. Module Mac theo chun IEEE802.3.7. Module PHY m ha v gii m tn hiu in.
-
8/2/2019 Quang Bao Qua Internet
16/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 17
Hnh 3.3. S khi vi mch giao tip ethernet ENC28J60
3.2.3 S kt ni vi cc thit b ngoi vi.Vi mch ENC28J60 giao tip vi cc vi x l khc thng qua chun truyn
d liu ni tip SPI (Serial Peripheral Interface), y l chun giao tip rt
ph bin, c dng ni cc vi mch trong cng mt h thng vi u im
l chy nhanh v tn rt t dy ni tn hiu, ch cn 3 dy cho c ng ghi v
c, l:
Hnh 3.4. S ghp ni ENC28J60 vi vi x l
-
8/2/2019 Quang Bao Qua Internet
17/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 18
SCK Serial Clock Xung ng b cho ng ni tip.
SI Serial Input Tn hiu ni tip vo (ghi).
SO Serial Output Tn hiu ni tip ra (c).Sau y l b lnh SPI dng cho vi mch ENC28J60 v cc gin xung th hin
cc qu trnh ghi, c d liu, lnh gia vi x l v ENC28J60.
Hnh 3.5. Qu trnh c thanh ghi iu khin Ethernet
Hnh 3.6. Qu trnh c thanh ghi iu khin MAC
Hnh 3.7 Qu trnh ghi vo thanh ghi lnh
-
8/2/2019 Quang Bao Qua Internet
18/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 19
Hnh 3.8. Qu trnh ghi vo b m lnh
Hnh 3.9 Qu trnh ghi vo lnh ca h thng
Mc d c thit k theo cu trc stand alone (mt chip lm ht cc vic)nhng vic iu khin vi mch ny hot ng c l rt phc tp v i hi c
hiu bit kh ton din v vi iu khin, mch in t v mng Internet. Tuy nhin,
rt may mn cho ngi thit k v lp trnh v hng MicroChip (hng sn xut vi
mch ENC28J60) h tr ti a, bng cch a ra y cc th vin phc v cho
vic lp trnh, lm cho vic lp trnh giao tip vi vi mch ny tr nn kh d dng.
-
8/2/2019 Quang Bao Qua Internet
19/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 20
CHNG IV:
GII THIU B TH VIN TCP/IP STACK
CA MICROCHIP
4.1. S lc v TCP/IP Stack ca MicrochipB th vin TCP / IP Stack ca Microchip cung cp mt nn tng cho cc
ng dng Ethernet do x l hu ht cc yu cu tng tc gia cc tng vt l v
tng ng dng . N bao gm cc ng dng ph bin ca tng ng dng, bao
gm HTTP2 phc v cc trang web, SMTP gi e-mail, SNMP cung cp tnh
trng, kim sot, Telnet, TFTP,-to Serial Ethernet, v nhiu hn na. Ngoi ra,
b th vin TCP/IP stack ny c dung lng tng i nh v hiu sut trin
khai cao ca TCP v UDP tng giao vn, cng nh cc module h tr khc nh
IP, ICMP, DHCP,ARP,vDNS.
B th vin TCP / IP Stack ca Microchip. Ti u ho cho tt c cc PIC18,
PIC24, dsPIC v gia nh vi iu khin PIC32.Cc ngn xp c chia thnh
nhiu lp, mi lp truy cp dch v t mt hoc nhiu lp trc tip di n. . B
th vin TCP / IP Stackbao gm cc tnh nng chnh:
Ti u ho cho tt c cc PIC18, PIC24, dsPIC v PIC32 gia nh H tr giao thc: ARP, IP, ICMP, UDP, TCP, DHCP, SNMP, HTTP,
FTP, TFTP
Socket h tr cho TCP v UDP Secure Sockets Layer (SSL)NetBIOS v dch v tn DNS - Domain Name System Ethernet Device Discovery H tr cho MPLAB C18, C30, C32 v trnh bin dch
-
8/2/2019 Quang Bao Qua Internet
20/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 21
B th vin TCP/IP stack c vit bng ca ngn ng lp trnh 'C.Ton b
code c dung lng khong 28-34 KB, ty thuc vo mc ch c s
dng, B th vin li nhiu khng gian trn ngi dng c th iu
chnh cho ph hp vi ng dng ca mnh
4.2. M hnh tham chiu TCP/IP stackGing nh m hnh tham chiu TCP / IP, TCP / IP Stack cng c chia thnh
nhiu lp (Hnh 2.1). Mi lp c 1 chc nng ring, trong khi cc dch v v cc
API (Giao din lp trnh ng dng) c nh ngha thng qua cc tiu , bao gm
cc tp tin. Khng ging m hnh TCP / IP, cc lp trong TCP / IP Stack trc tip
truy cp vo mt hoc nhiu lp m khng ph thc vo lp di n. Mt b sungln ca TCP / IP Stack l thc hin vic b sung hai modules mi: "StackTask" v
"ARPTask". StackTask qun l hot ng ca Stack v tt c cc module ca n,
trong khi ARPTask qun l cc dch v ca cc a ch Ngh quyt Protocol (ARP)
lp. Nh cp trc , TCP / IP Stack l mt b chng trnh; mt s lp ca
n phi c kh nng thc hin mt s hot ng khng ng b. c th p ng
c iu ny i hi phi c tnh tng i c lp khi s dng dch v.
Hnh 4.1 So snh m hnh TCP/IP v mo hnh TCP/IP Stac
-
8/2/2019 Quang Bao Qua Internet
21/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 22
4.3. Cu hnhTCP/IP Stack l b chng trnh c vit bng ngn ng C. bt, tt hoc
thit lp mt tham s no ngi s dng ch cn thay i mt hoc nhiu tham
s trong cc nh ngha . Hu ht cc tham s ny c nh ngha trong tp tin
header, "StackTsk.h". Mt s nh ngha c quy nh ti cc tp tin khc c
hin th vi tn tp tin tng ng. Mt khi tp tin ny c sa i, ngi s dng
phi xy dng li cc ng dng cho ph hp vi d n ca mnh. Cc nh ngha
c lit k trong bng1.
nh ngha Gi tr S dng Chc nng
CLOCK_FREQ(compiler.h)
Oscillator
Frequency
(Hz)
Tick.c Xc nh h thngdao ng tn s
TICKS_PER_SECONDS 10-255 Tick.c tnh ton mt
ln th hai
TICK_PRESCALE_VALUE2, 4, 8, 16, 32,
64, 128, 256Tick.c
xc nh gi tr
nh du vo truy
cp
MPFS_USE_PGRM N/AMP FileSystem
(MPFS.c)
S dng b nhchng trinh d
lu tr MPFS
MPFS_USE_EEPROM N/A MPFS.cS dng eeprom d
lu tr MPFS
MPFS_RESERVE_BLOCK 0-255 MPFS.cS byte MPFS
duo9c5 lu tr
EEPROM_CONTROLExternal DataEEPROM
Control Code
MPFS.ca ch lu vo
eeprom
STACK_USE_ICMP N/A StackTsk.cYu cu s dng
ICMP
-
8/2/2019 Quang Bao Qua Internet
22/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 23
STACK_USE_SLIP N/A SLIP.cYu cu s dng
SLIP
STACK_USE_IP_GLEANING N/A StackTsk.c Yu cu s dng IP
STACK_USE_DHCP N/ADHCP.c,
StackTsk.c
Yu cu s dng
dhcp
STACK_USE_FTP_SERVER N/A FTP.cYu cu s dng
FTP
STACK_USE_TCP N/ATCP.c,
StackTsk.c
Yu cu s dng
TCP
STACK_USE_UDP N/A
UDP.c,
StackTsk.c
Yu cu s dng
TCP
STACK_CLIENT_MODE N/AARP.c,
TCP.cKch hot client
TCP_NO_WAIT_FOR_ACK N/A TCP.cTCP s i ACK
trc khi truyn
MY_DEFAULT_IP_ADDR_BY
TE
MY_DEFAULT_MASK_BYTE
?
MY_DEFAULT_GATE_BYTE?
MY_DEFAULT_MAC_BYTE?
0-255User
Application
Xc nh mc nh
IP, MAC, gatewayv subnet mask gi
tr.
MY_IP_BYTE?
MY_MASK_BYTE?MY_GATE_BYTE?
MY_MAC_BYTE?
0-255
MAC.c,
ARP.c,
DHCP.c,
User
Application
IP, MAC, gateway
v subnet mt n
gi tr nh lu /
nh ngha bi ngdng. Nu DHCP
c kch hot,
nhng hn nh cc
gi tr hin ti my
-
8/2/2019 Quang Bao Qua Internet
23/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 24
ch DHCP
giao cu hnh.
MAX_SOCKETS 1-253 TCP.c
xc nh tngs sockets h tr
(gii hn bi b
nh RAM c sn).
kim tra thi gian
thc hin m
bo rng sockets
l chn TCP
ng dng.
MAX_UDP_SOCKETS 201-1500TCP.c,
MAC.c
Xc nh kch
thc b m.
MAX_TX_BUFFER_COUNT 1-255 MAC.c
Xc nh tng s
truyn qua b m.
con s ny c
hn ch bi kch
thc b m ca
Mac
MAX_HTTP_CONNECTIONS 1-255 HTTP.c
Xc nh s lng
ti da HTTM c
kt ni
MPFS_WRITE_PAGE_SIZE
(MPFS.h)1-255 MPFS.c
Xc nh kchthc c th ghi
trn MPFS
FTP_USER_NAME_LEN 1-31 FTP.c Xc nh di
-
8/2/2019 Quang Bao Qua Internet
24/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 25
(FTP.h) ti a ca FTP
MAX_HTTP_ARGS (HTTP.c) 1-31 HTTP.cXc nh s ti da
ca HTML
MAX_HTML_CMD_LEN
(HTTP.c)1-128 HTTP.c
Xc nh di ti
a ca HTML
4.4. S dng TCP/IP StackB th vin TCP/IP Stack cha y cc Module h tr nh :HTTP, IP, FTP,
DHCP. Ty vo mc ch s dng m ngi lp trnh c th thay i cho ph
hp vi d n ma mnh, nhung mt s tp tin nht inh phi c trong d n.
Cc module v tp tin c trnh by trong bng sau:
Module Tp tin bt buc Mc ch
MAC MAC.c
Delay.c
Media Access Layer
SLIP SLIP.c Media Access Layer for SLIP
ARP ARP.c
ARPTsk.c
MAC.c or SLIP.c
Helpers.c
Address Resolution Protocol
IP IP.c
MAC.c or SLIP.c
Helpers.c
Internet Protocol
ICMP ICMP.c
StackTsk.c
IP.cMAC.c or SLIP.c
Helpers.c
Internet Control Message Protocol
TCP StackTsk.c
UDP.c
Transmission Control Protocol
-
8/2/2019 Quang Bao Qua Internet
25/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 26
IP.c
MAC.c or SLIP.c
Helpers.c
UDP StackTsk.c
UDP.c
IP.c
MAC.c or SLIP.c
Helpers.c
User Datagram Protocol
Stack Manager StackTsk.c
TCP.c
IP.c
ICMP.c
ARPTsk.c
ARP.c
MAC.c or SLIP.c
Tick.c
Helpers.c
Stack Manager (StackTask), which
coordinates the other
Microchip TCP/IP Stack modules
HTTP Server HTTP.cTCP.c
IP.c
MAC.c or SLIP
Helpers.c
Tick.c
MPFS.c
XEEPROM.c(1)
HyperText Transfer Protocol Server
DHCP Client DHCP.c
UDP.c
IP.c
Dynamic Host Configuration Protocol
-
8/2/2019 Quang Bao Qua Internet
26/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 27
MAC.c
Helpers.c
Tick.c
IP Gleaning StackTsk.c
ARP.c
ARPTsk.c
ICMP.c
MAC.c or SLIP.c
To configure node IP address only.
FTP Server FTP.c
TCP.c
IP.c
MAC.c or SLIP.c
File Transfer Protocol Server.
4.5. Cc lp chc nng trong TCP/IP StackTCP/IP Stack c nhiu lp s dng 1 lp th ta cn phi tm hiu ngha v
chc nng ca chng.
4.5.1. Media Access Control Layer (MAC)TCP/IP Stack bo gm nhiu ng dng c c th bng vn bng s
dng giao din mng lu ng dng ny c c th bng vn bn s dng
giao din mng Realtek RTL8019AS Controller (NIC). RTL8019AS l mt
NE2000 tng thch NIC, m c thc hin c trn vt l Ethernet (PHY) v lp
MAC. Nu mt NIC khc c s dng, ngi s dng s cn phi sa i hoc
to mt file MAC.c mi cha truy cp. Min l dch v c cung cp bi
MAC.c khng thay i th tt c cc module khc s vn khng thay i.
Ngoi vic qun l b m FIFO cho NIC. Mac cn qun l b m truynnhn, n c th yu cu mt tp tin no c truyn li. ngi s dng c th
xc nh c kch thc ca b m nh vo file Mac.c.
-
8/2/2019 Quang Bao Qua Internet
27/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 28
4.5.2. Serial Line Internet Protocol (SLIP)Lp SLIP s dng cp ni tip nh cc giao tip phng tin truyn thng, thay
v cp ethernet. SLIP khng i hi phi c NIC, do cung cp rt n gin v
kt ni khng tn km IP. SLIP thng l mt kt ni mt-mt, ni mt my ch
kt ni vi mt my khch. Cc SLIP module c thit k hot ng vi mt
Windows da trn my tnh, mc d n c th c sa i lm vic vi h
iu hnh khc vi rt t thay i. Cc APIs c cung cp bi cc module SLIP
cng c s dng ging nh MAC
4.5.3. Address Resolution ProtocolLp ARP ca TCP / IP Stack c thc hin bi hai m lp :ARP v ARPTask
.ARP thc hin bi cc tp tin "ARP.c", ARPTask thc hin bi cc tp
tin"ARPTsk.c" cung cp hon thnh dch v ARP. ARPTask c thc hin nh
mt b my tp hp, p ng yu cu ARP t xa. N cng duy tr mt b nh cache
mt cp lu tr ARP tr li v a mt mc cao hn cho ph hp vi cc
cuc gi. ARPTask l mt c ch khng thc hin th li. Do , cc lp trn hoc
cc ng dng ny phi pht hin ra iu kin thi gian v tr li ph hp.
ARPTask hot ng hai ch : ch Server v Server / Client. Trong ch
Server Client , mt phn ca m c kch hot v bin son to ARP yu cu tcc my ch a phng ring ca mnh. Trong ch Server, ccARP m yu cu
khng c bin dch. Thng thng, nu TCP/IP Stack c s dng vi cc ng
dng my ch (nh HTTP Serverhoc phc v FTP) r, ARPTask nn c bin
son trong Server hnh thc gim kch thc m.Trnh bin dch xc nh bao
gm STACK_CLIENT_MODE phn m khch hng. Trong ch Server/ Client,
ARPTask duy tr mt b nh cache mt cp lu tr cc ARP tr li ca my ch
t xa. Khi Server / Client khng c kch hot, b nh cache l khng c nhngha v tng ng vi b nh RAM v b nh chng trnh khng c s dng.
-
8/2/2019 Quang Bao Qua Internet
28/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 29
4.5.4. Internet Protocol (IP)Lp IP ca TCP / IP Stack c thc hin bi cc tp tin "IP.c". Cc phn
u tp tin "IP.h"xc nh cc dch v c cung cp bi lp ny .Trong kin trc
ny, lp IP l th ng, n khng p ng vi cc gi d liu IP. Thay vo , lp
cao cp s dng IP nguyn thy v ly cc gi tin IP, gii m n v x l mt cch
thch hp. c im k thut IP ny l yu cu cc my ch a phng to ra mt
gi tin nhn dng duy nht cho mi gi tin truyn qua n, nhn din cho php my
ch t xa xc nh cc gi tin trng lp v loi b chng. Lp IP ca TCP / IP
Stack duy tr mt t nhn16-bit bin theo di cc gi tin nh danh.
4.5.5. Internet Control Message Protocol (ICMP)Lp ICMP c thc hin bi cc tp tin "ICMP.c".Cc tp tin tiu
"ICMP.h" nh ngha cc dch v c cung cp bi lp ny. Trong kin trc ny,
lp ICMP l mt lp th ng, n khng p ng vi cc gi d liu ICMP. Thay
vo , lp cao cp s dng ICMP nguyn thy v tm np ICMP gi tin, gii thch
n v x l cho thch hp.
Thng thng, ICMP c s dng gi v nhn li hoc thm d tin
nhn. Trong TCP / IP Stack,ICMP thc hin nguyn thy c th c s dng
to ra bt k thng ip ICMP. Trong nhnng ng dng, ICMP l hu ch cho mcch thm d .Khi c kch hot, ICMP c th p ng vi "ping" cc gi tin, do
cho php mt my ch t xa c th xc nh my ch a phng.
Cc vi mch lp ICMP ch p ng d liu ping cc d liu ln n 32 byte; gi tin
ln hn s c b qua. Nu ta mun x l cc gi tin ln hn th ch cn sa i
cc trnh bin dch xc nh MAX_ICMP_DATA_LEN (trong cc tp tin tiu
"StackTsk.h")
4.5.6.
Transmission Control Protocol (TCP)Lp TCP ca TCP / IP Stack c thc hin bi cc tp tin "TCP.c". Cc
phn u tp tin "TCP.h"xc nh cc dch v c cung cp bi lp ny . Trong
kin trc ca TCP/IP Stack , TCP l mt lp a hot ng. N c th tm TCP cc
gi d liu v p ng n cc my ch t xa theoTCP ca my ch qun l.
-
8/2/2019 Quang Bao Qua Internet
29/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 30
"TCP.h" cung cp dch v socket TCP v giu tt c TCP gi x l t ngi
gi. Lp ny cho php 2-253 TCP socket, s lng gii hn bi b nh v trnh
bin dch c s dng. Vi hn mt socket, cc ng dng cp cao hn c th duy
tr ng thi nhiu kt ni TCP v c th c nhiu hn mt ng dng c s dng
lp ny. C s ny rt hu ch khi HTTP Server c s dng. Mi socket tiu th
khong 36 bytes (kim tra tp tin ngun cho thc ttiu th) v lm tng thi gian.
tng th ch bin TCP
Khng ging nh cc giao thc TCP / IP , tt c socket trong TCP / IP Stack
chia s mt hoc nhiu hn mt b m truyn. Cch tip cn ny lm gim tng
th c yu cu RAM, nhng n c th to ra mt vn khc, nh ti mt vi
socket khng nhn b m truyn v khng bo thi gia s dng cc
socket. Trong hon cnh ny cc my ch v my a phng khng th lin lac vi
nhau . trnh iu ny, ngi dng phi m bo rng c b m truyn cho
tt c cc socket.
V vic nhn d liu , ch c mt b m c nhn . Nu socket nhn c
d liu ca n, ch s hu ca socket phi tm np v loi b b m nhn trong
mt khong thi gian ngn cc socket khc c th nhn d liu ca h. Khi n
pht hin gi tin n l quan tm, n phi x l cc gi hon chnh trong mt thigian ngn. Nu trong khong thi gian m vn khng ly c gi tin th n s
i v ly gi tin sau .
Theo yu cu ca TCP, mi phn on TCP cha mt b kim tra bao gm
ton b cc giao thc TCP v c khu vc d liu. gim b nh RAM, lp TCP
s dng trong b m MACNIC l lu tr v thc hin cc tnh ton checksum
MAC trong b m ring ca mnh. Nu NIC c s dng nh l mt MAC th
cc SRAM NIC c s dng nh mt b m khng gian. Nhng nu l SLIPc s dng nh l mt MAC th d liu c lu vo Ram ni.
Cc lp TCP ca TCP/IP Stack thc hin hu ht cc phn TCP my nc
ch xut bi RFC793. N cng thc hin t ng v th li hn gi hot ng,
trong ngi dng c th kch hot hoc v hiu ha bi cc bin dch
-
8/2/2019 Quang Bao Qua Internet
30/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 31
TCP_NO_WAIT_FOR_ACK nh ngha thi gian. Khi vic gi li t ng c
kch hot, mi socket truyn m c dnh ring cho n khi nhn c mt s tr
li t my ch l nhn c. Thit k ny to ra hiu qu mt truyn ca s ca
mt trong nhng phn on TCP. V vy, d liu thng qua s thp hn ng k
hn trong ch "Khng gi li". Nu ch c cc HTTP Server c s dng,
ngi s dng c th v hiu ho vic t ng gi li v tng hiu qu thng
qua.Nu vic p dng chnh ca logic yu cu mi gi s c tha nhn trc khi
mt ci mi c th c truyn, ngi s dng nn cho php ch "t ng gi
li". Vi t ng gi li c kch hot, mt s cc kt ni m c th khng nhn
phc v trn thi gian, v cc my ch t xa c th c hng thi gian-outThit
lp li hoc sai st.
4.5.7. User Datagram Protocol (UDP)Lp UDP ca TCP / IP Stack c thc hin bi cc tp tin "UDP.c". Cc
phn u tp tin "UDP.h"xc nh cc dch v c cung cp bi lp ny . Trong
kin trc ca TCP / IP Stack, UDP l mt lp a hot ng. N c th tm UDP cc
gi d liu v thng bo cho UDP socket tng ng ca d liu n hoc truyn ti
in.
"UDP.h" cung cp dch v socket UDP v giu tt c X l gi tin UDP tngi gi. Lp ny cho php ln n 254 UDP socket (s lng gii hn bisn b
nh v trnh bin dch c s dng). Vi hn mt socket, cc ng dng cp cao
hn c th duy tr Mul-tiple ng thi kt ni UDP; c nhiu ng dng c th c
s dng lp ny. Mi socket tiu th khong19 byte (kim tra "UDP.h" tp tin
tiu th thc t)v tng thi gian x l tng th UDP.
Khng ging nh cc giao thc TCP / IP , tt c socket trong TCP / IP Stack
chia s mt hoc nhiu hn mt b m truyn. Cch tip cn ny lm gim tngth c yu cu RAM, nhng n c th to ra mt vn khc, nh ti mt vi
socket khng nhn b m truyn v khng bo thi gia s dng cc
socket. Trong hon cnh ny cc my ch v my a phng khng th lin lac vi
-
8/2/2019 Quang Bao Qua Internet
31/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 32
nhau . trnh iu ny, ngi dng phi m bo rng c b m truyn cho
tt c cc socket
4.5.8. Dynamic Host Configuration Protocol (DHCP)Lp DHCP ca TCP / IP Stack c thc hin bi cc tp tin "dhcp.c". Cc
phn u tp tin"dhcp.h" nh ngha cc dch v c cung cp bi lp ny .DHCP
l mt lp ang hot ng m chng trnh pht sng DHCP yu cu, t ng nhn
c v gii m DHCP phn ng. Cc tnh nng chnh ca n bao gm:
Cu hnh a ch IP, a ch gateway v subnet mask. DHCP t ng cho thu thi gian, i mi v qun l vic cho thu. Hot ng hon ton t ng m ngi s dng khng cn cang thip.Cc module DHCP c thc hin nh mt khi thng nht c nhim v thc
hin cc hot ng t ng m khng c kin thc v cc ng dng chnh. Cc
DHCP thc t hi nhp v kim sot c thc hin bi cc qun l Stack; n
x l tt c cc hot ng cn thit ca n nh mt phn ca tiu chun nhim
v, bng cch s dng API DHCP kim sot cc module ca hnh vi. Ngi
dng khng cn bit v DHCP s dng n.
Mt ng dng ngi dng cng c th chn gi mt s cc API trc tip kim
sot DHCP hot ng, chng hn nh liu DHCP c cu hnh hay khng, v liuDHCP c vnh vin ngng hot ng. Thng thng, ng dng ca ngi dng
khng cn trc tip tng tc vi DHCP . s dng module DHCP, ngi s dng
phi s dng cc tap tin sau:
1. B ghi ch STACK_USE_DHCP trong tiu tp tin "StackTsk.h".
2. Ph c hai tp tindhcp.c " v "udp.c" trong d n.
3. Tng MAX_UDP_SOCKETS ln mt (t nht mt UDP socket phi c
sn cho DHCP iu chnh s lng socket da trn UDP v DHCP).Khi DHCP c thc hin, ng dng ngi dng phi c gng truyn thng
mng cho n khi DHCP c cu hnh ng. Thng thng, nu mt ng dng
ngi dng c cha cc ng dng mt hoc nhiu khch hng c yu cu thng tin
lin lc trn in-up hoc thit lp li, vic p dng phi kim tra xem DHCP c
-
8/2/2019 Quang Bao Qua Internet
32/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 33
cu hnh trc khi truyn ti d liu bng cch s dng cc m-un lp thp hn
.iuu ny c th c thc hin vi chc nng DHCPIsBound.
c im k thut chnh thc DHCP (RFC1541) l i hi cc khch hng
DHCP phi lm mi cu hnh IP trc khi cho thu thi gian. theo di thi gian
thu, ngi s dng phi chc chn rng TickUpdate () c gi theo yu cu, v
chnh xc l thi gian hp l duy tr (xem m ngun tp tin "websrvr.c"cho mt
v d lm vic). phn gii thi gian cn thit l15 pht, cng hoc tr, c ngha
l TickUpdate () c th c gi l mt u tin rt thp.i vi cc module DHCP
iu t ng cp nht cu hnh a ch v subnet mask, phi c t nht mt DHCP
server trn mng. l trch nhim ca ngi s dng thc hin mt s phng
php cho "xut bn" cc cu hnh li cho ngi s dng tim nng. Gm c nhiu
ty chn t vic c thng tin n vic hin th ttrn mi nt, lu tr thng tin
trong mt my ch trung tm DHCP ta ch cn cp nht kt qu cc gi tr ca
MY_IP_BYTE?,MY_GATE_BYTE? v MY_MASK_BYTE?
4.5.9 IP Gleaning for IP Address ConfigurationNh l mt thay th DCHP, TCP / IP Stack cng thc hin mt phng php
n gin, c gi l IP Gleaning, t xa thit lp a ch IP ca TCP / IP Stack
. Phng php ny khng phi l mt giao thc Internet chun, v khng c tngng vi RFC. Gleaning IP ch cho php a ch IP c thit lp .i vi cu hnh
IP hon tt, DCHP phi c s dng.
Gleaning IP khng cn bt k phn mm trn module. Thay vo , n s
dng module ICMP ARP. s dng n, tp tin "icmp.c" phi c khai bo , v
trnh bin dch xc nhS TACK_USE_IP_GLEANING ghi chu ben trong tp tinh
StackTsh.h
4.6
HTTP SERVERHTTP Server km theo ng dng c thc hin nh mt khi thng nht tn
ti vi cc vi mch TCP / IP Stack v ng dng chnh ca ngi dng. Cc HTTP
Server chnh n c thc hin ti tp tin "HTTP.c", vi mt ng dng ngi dng
-
8/2/2019 Quang Bao Qua Internet
33/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 34
thc hin hai chc nng. Cc ng dng m ngun ny nm trong tp tin "Websrvr.c
" nn c s dng nh l mt mu ng dng to ra cc giao din cn thit.
HTTP Server c cung cp y khng thc hin tt c chc nng HTTP, n
l mt my ch ti thiu cho cc mc tiu ca h thng nhng. Ngi s dng c
th d dng thm mi chc nng theo yu cu v mc ch s dng.
HTTP server thch hp nhng chc nng sau:
H tr nhiu kt ni HTTP. H tr cc trang web t ti mt trong hai ni bchng trnh hoc b nh
EEPROM ni tip bn ngoi.
Bao gm mt chng trnh da trn PC to ra MPFS hnh nh t mt thmc nht nh.
H tr cc phng thc HTTP "GET" (cc phng php khc c th ddng thm vo).
H tr mt i ln Common Gateway Interface (CGI) gi chc nng xcnh trc t bn trong trnh duyt t xa.
H tr ni dung trang web nng ng th hCc my ch bao gm cc phn chnh sau:
MPFS Builder Image. Th vin MPFS truy cp. MPFS Download thng (thc hin bichnh ca ng dng) HTTP Server Task.
s dng module DHCP, ngi s dng phi s dng cc tap tin sau:
1. B ghi ch STACK_USE_HTTP_SERVER trong tiu tp tin"StackTsk.h".
2.
t ghi ch ny MAX_HTTP_CONNECTIONS trong tp tin"StackTsk.h".
3. Phi c hai tp tin http.c v "mpfs.c" trong d n.
-
8/2/2019 Quang Bao Qua Internet
34/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 35
4. Ty theo ni lu tr trang wed m c th b ghi chMPFS_USE_PGRM hoc MPFS_USE_EEPROM. Nu d liu vo
EEPROM ngoi th s dng thm tp tin"Xeeprom.c".
Cc HTTP Server s dng file "index.htm" nh Trang web mc nh. Nu trnh
duyt (mt khch hng t xa) truy cp cc HTTP Server bng a ch IP hoc tn
min th "index.htm" l trang mc nh phc v.iu ny i hi rng tt c cc
ng dng bao gm mt tp tin c tn"Index.htm" phi c lu trong MPFS. Nu
cn thit, tn ca tp tin ny c th thay i mc nh bng cch sa i nh ngha
ca trnh bin dch HTTP_DEFAULT_FILE_STRING trong tp tin " http.c ". Ch
trong cc trang wed c th c cha cc k t sau:
Mt hoc hai du ngoc kp ("v") Tri hoc du ngoc vung gc () Du thng (#)Nhng du phn trm (%) Tri hoc bn phi khung ([,{,] v)) Biu tng (|) Cc du gch cho ngc (\) Du (^) Cc du ng (~)HTTP cng duy tr mt danh sch cc loi tp tin m n h tr. N s dng
thng tin ny t vn cho mt t xa trnh duyt trn lm th no gii thch mt
tp tin c th, da trn ca tp tin m rng ba k t. Theo mc nh,Vi mch HTTP
Server h tr ". Txt", ". Htm","Gif". "Cgi"., ". Jpg", "CLA". V ". Wav" files. Nu
mt ng dng s dng cc loi tp tin m khng c trong ny danh sch, ngi s
dng c th sa i cc bng "httpFiles", cng vi tng ng"httpContents" trongtp tin "http.c".
4.7 FTP SERVER.FTP Server c nhim v hp tc vi TCP / IP Stack to ra cc ng dng
chnh ca ngi dng. FTP Server c thc hin ti tp tin "FTP.c".
-
8/2/2019 Quang Bao Qua Internet
35/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 36
FTP server c nhng tn nng sau:
Mt kt ni FTP cho chng ta bit c mt ngi dng dang s dng ngdng .
T ng tng tc vi tp tin h thng (MPFS). Upload tap tin c nhn hoc h tr.
s dng module DHCP, ngi s dng phi s dng cc tap tin sau:
1. B ghi ch STACK_USE_FTP_SERVER trong tiu tp tin"StackTsk.h".
2. Phi c hai tp tinFTP.c " v "mpfs.c" trong d n.Ty theo ni lu tr trang wed m c th b ghi ch MPFS_USE_PGRM hoc
MPFS_USE_EEPROM. Nu d liu vo EEPROM ngoi th s dng thm tp
tin"Xeeprom.c".
-
8/2/2019 Quang Bao Qua Internet
36/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 37
CHNG V:
GII THIU LED MA TRN V BNG QUANG BO
Ngy nay khi nhu cu v thng tin qung co rt ln, vic p dng cc phng tink thut mi vo cc lnh vc trn l rt cn thit. Khi bn n cc ni cng cng,
bn d dng bt gp nhng p phch qung co in t chy theo cc hng khc
nhau vi nhiu hiu ng hnh nh v mu sc rt n tng.
5.1. Gii thiu v Led Matrix.Ma trn LED bao gm nhiu LED cng nm trong mt v chia thnh nhiu
ct v hng, mi giao im gia hng v ct c th c 1 LED (ma trn LED
mt mu) hay nhiu LED (2 LED ti mt v tr to thnh ma trn LED 3
mu). LED ti mt v tr no sng th phi cp hiu in th dng
gia Anode v Cathode. Trn c s cu trc nh vy, ta c th m rng hng
v ct ca ma trn LED to thnh cc bng quang bo.
5.1.1. Phn loi Led Matrix.
5.1.2. Led Matrix 8x8.Led ma trn mn l Led ma trn c m ct v n hng. Led ma trn 88 l
led ma trn gm c 8 ct v 8 hng. Led ma trn ny c hai loi: loi th
nht l cathode chung (common cathode hng cathode, ct anode), loith hai l anode chung (common anode hng anode, ct cathode).
ti s dng loi Led ma trn anode chung (cathode ct) v d dng
tm mua c Led ma trn loi ny trn th trng linh kin in t
nc ta, a dng v kch c v mu sc, c loi indoor, outdoor.
Theo kch c Theo mu sc Theo hnh dng im chm
5x7 1 mu Trn
5x8 2 mu Vung8x8 3 mu Bu dc
11x9
16x16
-
8/2/2019 Quang Bao Qua Internet
37/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 38
13
3 4
10
6
11
15
16
5 2 71
12
8
14
9
H1
H2
H3
H4
H5
H6
H7
H8
C1
C2
C3
C4
C5
C6
C7
C8
5.1.3. Hnh dng thc t v s chn.
Hnh 2.2 :hnh dng thc t v s chn ca Led matrix 8x8
5.1.4. S nguyn l.
5.2. Mt s hnh nh v quang bo thc t.5.2.1. Mu mt dng ch (16 x 240 im nh).
Cc thng s k thut:
-
8/2/2019 Quang Bao Qua Internet
38/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 39
- Kch thc hin th: chiu cao 122mm, chiu di tu (thng l bi
ca 305mm).
- phn gii (s im nh): 16 x 40 x (chiu di hin th/305).- Kt ni chun (My tnh, cng COM) tu chn (RJ45, Bn phm).
- Bng ny c th hin th mt dng ch cao 122mm (16 im nh - nh
hnh trn) hoc hai dng ch cao 61mm (8 im nh) nhng khng
du Ting Vit.
- Kt ni chun (My tnh, cng COM) tu chn (RJ45).
5.2.2. Mu Hai Dng Ch (32 X 240 im nh).
Cc thng s k thut:
- Kch thc hin th: chiu cao 244mm, chiu di tu (thng l bi
ca 305mm).
- phn gii (s im nh): 32 x 40 x (chiu di hin th/305).
- Kt ni chun (My tnh, cng COM) tu chn ( RJ45).
- Bng ny c th hin th hai dng ch cao 122mm (16 im nh
nh hnh trn) hoc mt dng ch cao 244mm (32 im nh - nh
hnh di).
- Kt ni chun (My tnh, cng COM) tu chn ( RJ45).
5.3. Gii thiu v bng quang bo trong n.5.3.1. Phn cng :
-Kch thc hin th: chiu cao 6cm,chiu di 24 cm- phn gii (s im nh):8 x 32.-Bng ny c kh nng hin th mt dng ch cao 6 cm.
-
8/2/2019 Quang Bao Qua Internet
39/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 40
-Hin th:+ Mt mu .
+ Ni dung hin th c cho chy theo hng dch tri.5.3.2. Phn mm :
-Dng ngn ng lp trnh CCS lp trnh cho vi x l PIC16F877.-Dng ngn ng lp trnh HTML nhng vo PIC 18LF4680 v xy
dng giao din iu khin qua giao din web.
-
8/2/2019 Quang Bao Qua Internet
40/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 41
CHNG VI:
CC PHNG PHP HIN TH
CHO BNG QUANG BO
6.1 PHNG PHP CHT
Hin th led ma trn bng phng php cht gip cho ngi lp trnh thay i
cch thc qut v hin th mt cch linh hot v nhanh chng.
matrix_3mau
12
9 6 3 13
16
19
22
11
85214
17
20
23
10
74115
18
21
24
c1
c2
c3
c4
c5
c6
c7
c8
hx1
hx2
hx3
hx4
hx5
hx6
hx7
hx8
hd1
hd2
hd3
hd4
hd5
hd6
hd7
hd8
DM74LS573
2 3 4 5 6 7 8 9 11
1
19
18
17
16
15
14
13
12
D0
D1
D2
D3
D4
D5
D6
D7
LE
OE
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
DM74LS573
23456789
111
1918171615141312
D0D1D2D3D4D5D6D7
LEOE
Q0Q1Q2Q3Q4Q5Q6Q7
U7
DM74LS573
2345678911
1
19
18
17
16
15
14
13
12
D0
D1
D2
D3
D4
D5
D6
D7
LE
OE
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Hnh 6.1: Giao tip led ma trn dng phng php cht.
-
8/2/2019 Quang Bao Qua Internet
41/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 42
6.1.1 CHT HNGCht hng l phng php trong mt khong thi gian xc nh ch c mt ct
c tch cc, d liu c a ra 8 hng ri cht li, d liu c hin th trnmn hnh led ma trn.
Sau d liu k tip c a ra 8 hng v c cht li bi mt IC cht khc,
trong khi d liu trc vn hin din ti ng ra ca IC cht. Nh vy d liu
ca hng no c a ra ng a ch ca hng trong khi cc d liu ca cc
hng khc vn hin din trn hng m khng b mt i. Vic thc hin cht hng
c th hin lu nh sau:
Hnh 6.2: Qui trnh hin th cht hng.
-
8/2/2019 Quang Bao Qua Internet
42/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 43
6.1.2 CHT CT
Cht ct l phng php trong mt khong thi gian xc nh ch c mt hng
c tch cc, d liu c a ra 8 ct ri cht li, d liu c hin th trn mnhnh led ma trn. Sau d liu c a ra 8 ct k tip v c cht li bi mt
IC cht khc, trong khi d liu trc vn hin din ti ng ra ca IC cht (d
liu vn hin din ti cc ct). Nh vy d liu ca ct no c a ra ng a ch
ca ct trong khi cc d liu ca cc ct khc vn hin din trn ct m khng b
mt i. Vic thc hin cht ct c th hin lu nh sau:
Hnh 6.3: Qui trnh hin th cht ct.
6.1.2 U, NHC IM CA PHNG PHP DNG IC CHT* u im:
- M rng s hng, s ct ca bng quang bo.
- D liu c truyn i nhanh.
- Chuyn i cch qut hng, ct mt cch linh hot.
-
8/2/2019 Quang Bao Qua Internet
43/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 44
* Nhc im:
- To bng m kh khn.
- Kh khn trong vic lp trnh xut d liu ra.
6.2 PHNG PHP HIN TH S DNG THANH GHI DCH6.2.1 QUT CT
6.2.1.1Gii thiu chung v phng php qut ct.Phng php qut ct l phng php m trong mt khong thi gian xc
nh ch cho mt ct c tch cc hin th trong khi cc ct khc u tt, cc ct
c qut (tch cc) tun t cc khong thi gian k tip nhau c lp li nhiuln vi tc > 24 hnh/1s s cho ta mt hnh nh lin tc cn hin th ln trn mn
hnh led ma trn.
6.2.1.2 Qu trnh thc hin qut ct.
D liu ca ct th nht c a ra hng sau tch cc ct th nht nh
vy d liu ca ct th nht c hin th trn mn hnh led ma trn, tip tc d liu
ca ct th hai c a ra hng sau tch cc ct th hai lc ny d liu ca
hng th hai c hin th trn man hnh led ma trn, c nh vy cho n d liu
ca ct cui cng c a ra hng sau tch cc ct cui cng. C nh th qu
trnh trn c lp i lp li > 24ln/1s, n y chng ta quan st c mt hnh
nh lin tc hin th trn mn hnh led ma trn.
V d
Hin th ch A ln mn hnh Led ma trn (hng c tch cc mc 1, ct c
tch cc mc 0).
-
8/2/2019 Quang Bao Qua Internet
44/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 45
Hnh 6.4: Hin th ch A trn led ma trn dng phng php qut ct
Qu trnh a d liu ra hng v ct c tin hnh ng thi vi cc gi tr theobng di y:
D liu a vo cc hng
H8H7H6H5H4H3H2H1
Ct c chn
tch cc
(mc 0)
D liu th
nht
11111000 C1
D liu th 2 00100100 C2
D liu th 3 00100010 C3
D liu th 4 00100100 C4
D liu th 5 11111000 C5
D liu th 6 00000000 C6
D liu th 7 00000000 C7
D liu th 8 00000000 C8
Nh vy ton b d liu ca ch A c a ra hin th trn mn hnh Led ma
trn. Qu trnh trn c din ra rt nhanh > 24ln/s nn chng ta c cm gic n
din ra mt cch ng thi, nh chng ta quan st c trn mn hnh Led ma
trnl mt ch A lin tc.
Phng php qut ct thch hp cho cc bng quang bo s dng Led ma trnc
s lng ct t hn s lng hng, v thi gian sng ca LED khi qut ct ln hn
thi gian sng ca LED khi qut hng. Nh vy in p ngun cung cp c s
dng trong qut ct nh hn in p ngun cung cp s dng trong qut hng.
Trong phng php qut ct vic a d liu ra hng v to bng m l kh d dng
cho ngi lp trnh.
6.2.2 QUT HNG
-
8/2/2019 Quang Bao Qua Internet
45/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 46
6.2.2.1Gii thiu chung v phng php qut hng.Qut hng l phng php m trong mt khong thi gian xc nh ch cho
mt hng c tch cc hin th trong khi cc hng khc u tt, cc hng c qut(tch cc) tun t cc khong thi gian k tip nhau c lp li nhiu ln vi tc
> 24hnh /1s s cho ta mt hnh nh lin tc cn hin th ln trn mn hnh led
ma trn.
6.2.2.1 Qu trnh thc hin qut hng:
Hnh 6.5: Qui trnh a d liu ra 8 ct cho led ma trn.
Qut hng s dng thanh ghi dch l tng i phc tp cho ngi lp trnh
trong vic a d liu ra ct. D liu ln lt c a vo chn Data in ca thanh
ghi dch sau tc ng xung clock d liu c dch i. Vic thc hin qut hng
c thc hin theo lu gii thut hnh 4.5.
D liu ca hng th nht c a ra ct sau tch cc hng th nht, nh
vy d liu ca hng th nht c hin th trn mn hnh led ma trn, tip tc d
liu ca hng th hai c a ra ct sau tch cc hng th hai lc ny d liu
-
8/2/2019 Quang Bao Qua Internet
46/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 47
ca hng th hai c hin th trn mn hnh led ma trn, c nh vy cho n d
liu ca hng cui cng c a ra ct sau tch cc hng cui cng. C nh
th qu trnh trn c lp i lp li > 24ln/1s, n y chng ta quan st c mt
hnh nh lin tc hin th trn mn hnh led ma trn.
V d
Hin th ch A ln mn hnh Led ma trn (hng c tch cc mc 1, ct c
tch cc mc 0).
Hnh 6.6: Hin th ch A trn led ma trn dng phng php qut hng
Qu trnh a d liu ra hng v ct c tin hnh ng thi vi cc gi tr theo
bng di y:
D liu a vo cc ct
C8C7C6C5C4C3C2C1
Hng c chn tch
cc
(mc 1)
D liu th nht 11111111 H1
D liu th 2 11111011 H2
D liu th 3 11110101 H3
D liu th 4 11101110 H4
D liu th 5 11101110 H5
D liu th 6 11100000 H6
D liu th 7 11101110 H7
D liu th 8 11101110 H8
-
8/2/2019 Quang Bao Qua Internet
47/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 48
Nh vy ton b d liu ca ch A c a ra hin th trn mn hnh
Led ma trn. Qu trnh trn c din ra rt nhanh > 24ln/s nn chng ta c cm
gic n din ra mt cch ng thi, nh m chng ta quan st c trn mn
hnh Led ma trn l mt ch A lin tc.
Phng php qut hng thch hp cho cc bng quang bo s dng Led ma
trn c s lng hng nh hn s lng ct, v thi gian sng ca Led khi qut hng
lu hn thi gian sng ca Led khi qut ct. Nh vy in p ngun cung cp c
s dng trong qut hng nh hn in p ngun cung cp s dng trong qut ct.
Tuy nhin trong phng php qut hng th vic a d liu ra ct v to bng m
l kh khn hn trong phng php qut ct.
6.2.3 U, NHC IM CA PHNG PHP HIN TH SDNG THANH GHI DCH
* u im:
- Tit kim ng truyn, hiu qu kinh t.
- Tit kim chn PORT.
- Truyn d liu i xa hn.
- M rng bng ma trn ln mt cch d dng.
- Lp trnh d dng trong phng php qut ct.
* Nhc im:
- Tn thi gian thc hin vic truyn d liu n cc ct.
- Chuyn i khng linh hot bng s dng phng php cht.
- Lp trnh kh khn hn khi s dng phng php qut hng.
6.3 MCH QUANG BO S DNG TRONG NDo mch quang bo trong n c thit k vi phn gii 8x32 (8 hng, 32
ct) nn chn phng php qut ct m bo cho hnh nh hin th c lin tc
v n gin cho vic lp trnh.
-
8/2/2019 Quang Bao Qua Internet
48/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 49
-
8/2/2019 Quang Bao Qua Internet
49/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 50
CHNG VII
KHO ST LINH KIN
7.1 Vi iu khin PIC16F877A7.1.1 Hnh dng v s chn.
Hnh 7.1: Vi iu khin PIC16F877A/PIC16F874A v cc dng s chn.
7.1.2 Mt vi thng s v 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 368 byte RAM
v b nh d liu EEPROM vi dung lng 256 byte. S PORT I/O l 5
vi 33 pin I/O.
Cc c tnh ngoi vi bao gm cc khi chc nng sau:
- Timer0: b m 8 bit vi b chia tn s 8 bit.
- Timer1: 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.
-
8/2/2019 Quang Bao Qua Internet
50/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 51
- Cc chun giao tip ni tip SSP (Synchronous Serial Port), SPI v
I2C.
- Chun giao tip ni tip USART vi 9 bit a ch.
- Cng giao tip song song PSP (Parallel Slave Port) vi cc chn
iu khin RD, WR, CS bn ngoi.
Cc c tnh Analog:
- 8 knh chuyn i ADC 10 bit.
- Hai b so snh.
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.
7.1.3. T CHC B NH
Cu trc b nh ca vi iu khin PIC16F877A bao gm b nh chng trnh
(Program
memory) v b nh d liu (Data Memory).
* B nh chng trnhB nh chng trnh ca vi iu khin PIC16F877A l b nh flash, dung
lng b nh 8K word (1 word = 14 bit) v c phn thnh nhiu trang (t page0
n page 3) . Nh vy b nh chng trnh c kh nng cha c 8*1024 = 8192
lnh (v mt lnh sau khi m ha s c dung lng 1 word (14 bit).
-
8/2/2019 Quang Bao Qua Internet
51/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 52
Khi vi iu khin c reset, b m chng trnh s ch n a ch 0000h (Reset
vector). Khi c ngt xy ra, b m chng trnh s ch n a ch 0004h (Interrupt
vector). B nh chng trnh khng bao gm b nh stack v khng c a ch
ha bi b m chng trnh.
* B nh d liu
B nh d liu ca PIC l b nh EEPROM c chia ra lm nhiu bank. i
vi PIC16F877A b nh d liu c chia ra lm 4 bank. Mi bank c dung lng
128 byte, bao gm cc thanh ghi c chc nng c bit SFG (Special Function
Register) nm cc vng a ch thp v cc thanh ghi mc ch chung GPR
(General Purpose Register) nm vng a ch cn li trong bank. Cc thanh ghi
SFR thng xuyn c s dng (v d nh thanh ghi STATUS) s c t tt c
cc bank ca b nh d liu gip thun tin trong qu trnh truy xut v lm gim
bt lnh ca chng trnh. S c th ca b nh d liu PIC16F877A nh sau:
-
8/2/2019 Quang Bao Qua Internet
52/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 53
Hnh 7.2: S b nh d liu ca PIC16F877A
-
8/2/2019 Quang Bao Qua Internet
53/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 54
Thanh ghi chc nng c bit SFR:
y l cc thanh ghi c s dng bi CPU hoc c dng thit lp v iu
khin cc khi chc nng c tch hp bn trong vi iu khin. C th phn thanh
ghi SFR lm hai lai: thanh ghi SFR lin quan n cc chc nng bn trong (CPU)
v thanh ghi SRF dng thit lp v iu khin cc khi chc nng bn ngoi (v
d nh ADC, PWM ).
Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi 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 (81h, 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 (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho php c v ghi, cha
cc bit iu khin v cc bit c hiu khi timer0 b trn, ngt ngoi vi RB0/INT v
ngt interrputon- change ti cc chn ca PORTB.
Thanh ghi PIE1 (8Ch): cha cc bit iu khin chi tit cc ngt ca cc khi chc
nng ngoi vi.
-
8/2/2019 Quang Bao Qua Internet
54/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 55
Thanh ghi PIR1 (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.
Thanh ghi PIE2 (8Dh): cha cc bit iu khin cc ngt ca cc khi chc nng
CCP2, SSP bus, ngt ca b so snh v ngt ghi vo b nh EEPROM.
Thanh ghi PIR2 (0Dh): cha cc 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 (8Eh): cha cc c hiu cho bit trng thi cc ch reset ca
vi iu khin.
Thanh ghi mc ch chung GPR:Cc thanh ghi ny c th c truy xut trc tip hoc gin tip thng qua thanh
ghi FSG (File Select Register). y l cc thanh ghi d liu thng thng, ngi s
dng c th ty theo mc ch chng trnh m c th dng cc thanh ghi ny
cha cc bin s, hng s, kt qu hoc cc tham s phc v cho chng trnh.
* Stack
Stack khng nm trong b nh chng trnh hay b nh d liu m l mt vng
nh c bit khng cho php c hay ghi.
Khi lnh CALL c thc hin hay khi mt ngt xy ra lm chng trnh b r
nhnh, gi tr ca b m chng trnh PC t ng c vi iu khin ct vo trong
stack. Khi mt trong cc lnh RETURN, RETLW hat RETFIE c thc thi, gi tr
-
8/2/2019 Quang Bao Qua Internet
55/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 56
PC s t ng c ly ra t trong stack, vi iu khin s thc hin tip chng trnh
theo ng qui trnh nh trc.
B nh Stack trong vi iu khin PIC h 16F87xA c kh nng cha c 8 a
ch v hot ng theo c ch xoay vng. Ngha l gi tr ct vo b nh Stack ln
th 9 s ghi
ln gi tr ct vo Stack ln u tin v gi tr ct vo b nh Stack ln th 10 s ghi
ln gi tr ct vo Stack ln th 2.
Cn ch l khng c c hiu no cho bit trng thi stack, do ta khng bit
c khi no stack trn. Bn cnh tp lnh ca vi iu khin dng PIC cng
khng c lnh POP hay PUSH, cc thao tc vi b nh stack s hon ton c iu
khin bi CPU.
7.1.4. CC CNG XUT NHP CA PIC16F877A
Cng xut nhp (I/O port) chnh l phng tin m vi iu khin dng tng
tc vi th gii bn ngoi. Bn cnh , do vi iu khin c tch hp sn bn
trong cc c tnh giao tip ngoi vi nn bn cnh chc nng l cng xut nhp
thng thng, mt s chn xut nhp cn c thm cc chc nng khc th hin s
tc ng ca cc c tnh ngoi vi nu trn i vi th gii bn ngoi.
Vi iu khin PIC16F877A c 5 cng xut nhp, bao gm PORTA, PORTB,PORTC, PORTD v PORTE.
*PORT A:
PORTA (RPA) bao gm 6 I/O pin. y l cc chn hai chiu (bidirectional
pin), ngha l c th xut v nhp c. Chc nng I/O ny c iu khin bi
thanh ghi TRISA (a ch 85h). Mun xc lp chc nng ca mt chn trong
PORTA l input, ta set bit iu khin tng ng vi chn trong thanh ghi
TRISA v ngc li, mun xc lp chc nng ca mt chn trong PORTA l output,ta clear bit iu khin tng ng vi chn trong thanh ghi TRISA. Thao tc ny
hon ton tng t i vi cc PORT v cc thanh ghi iu khin tng ng TRIS
(i vi PORTA l TRISA, i vi PORTB l TRISB, i vi PORTC l TRISC,
i vi PORTD l TRISD vi vi PORTE l TRISE). Bn cnh PORTA cn l
-
8/2/2019 Quang Bao Qua Internet
56/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 57
ng ra ca b ADC, b so snh, ng vo analog ng vo xung clock ca Timer0 v
ng vo ca b giao tip MSSP (Master Synchronous Serial Port).
Cc thanh ghi SFR lin quan n PORTA bao gm:
- PORTA (a ch 05h) : cha gi tr cc pin trong PORTA.
- TRISA (a ch 85h) : iu khin xut nhp.
- CMCON (a ch 9Ch) : thanh ghi iu khin b so snh.
- CVRCON (a ch 9Dh) : thanh ghi iu khin b so snh in p.
- ADCON1 (a ch 9Fh) : thanh ghi iu khin b ADC.
* PORT B:
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 np khc nhau. PORTB cn lin quan
n ngt ngoi vi v b Timer0. PORTB cn c tch hp chc nng in tr ko
ln c iu khin bi chng trnh.
Cc thanh ghi SFR lin quan n PORTB bao gm:
- PORTB (a ch 06h,106h) : cha gi tr cc pin trong PORTB
- TRISB (a ch 86h,186h) : iu khin xut nhp
- OPTION_REG (a ch 81h,181h) : iu khin ngt ngoi vi v b Timer0.* PORT C:
PORTC (RPC) gm 8 pin I/O. Thanh ghi iu khin xut nhp tng ng l
TRISC. Bn cnh PORTC cn cha cc chn chc nng ca b so snh, b
Timer1, b PWM v cc chun giao tip ni tip I2C, SPI, SSP, USART.
Cc thanh ghi iu khin lin quan n PORTC:
- PORTC (a ch 07h) : cha gi tr cc pin trong PORTC
- TRISC (a ch 87h) : iu khin xut nhp.* PORT D:
PORTD (RPD) gm 8 chn I/O, thanh ghi iu khin xut nhp tng ng l
TRISD. PORTD cn l cng xut d liu ca chun giao tip PSP (Parallel Slave
Port).
-
8/2/2019 Quang Bao Qua Internet
57/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 58
Cc thanh ghi lin quan n PORTD bao gm:
- Thanh ghi PORTD : cha gi tr cc pin trong PORTD.
- Thanh ghi TRISD : iu khin xut nhp.
* PORT E:
PORTE (RPE) gm 3 chn I/O. Thanh ghi iu khin xut nhp tng ng l
TRISE. Cc chn ca PORTE c ng vo analog. Bn cnh PORTE cn l cc
chn iu khin ca chun giao tip PSP.
Cc thanh ghi lin quan n PORTE bao gm:
- PORTE : cha gi tr cc chn trong PORTE.
- TRISE : iu khin xut nhp v xc lp cc thng s cho chun giao tip PSP.
- ADCON1 : thanh ghi iu khin khi ADC.
7.1.5 NGT
PIC16F877A c n 15 ngun to ra hot ng ngt c iu khin bi thanh
ghi INTCON (bit GIE). Bn cnh mi ngt cn c mt bit iu khin v c ngt
ring. Cc c ngt vn c set bnh thng khi tha mn iu kin ngt xy ra bt
chp trng thi ca bit GIE, tuy nhin hot ng ngt vn ph thuc vo bit GIE v
cc bit iu khin khc. Bit iu khin ngt RB0/INT v TMR0 nm trong thanh ghi
INTCON, thanh ghi ny cn cha bit cho php cc ngt ngoi vi PEIE. Bit iukhin cc ngt nm trong thanh ghi PIE1 v PIE2. C ngt ca cc ngt nm trong
thanh ghi PIR1 v PIR2.
Trong mt thi im ch c mt chng trnh ngt c thc thi, chng trnh
ngt c kt thc bng lnh RETFIE. Khi chng trnh ngt c thc thi, bit GIE
t ng c xa, a ch lnh tip theo ca chng trnh chnh c ct vo trong
b nh Stack v b m chng trnh s ch n a ch 0004h. Lnh RETFIE c
dng thot khi chng trnh ngt v quay tr v chng trnh chnh, ng thi bit GIE cng s c set cho
-
8/2/2019 Quang Bao Qua Internet
58/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 59
php cc ngt hot ng tr li. Cc c hiu c dng kim tra ngt no ang
xy ra v phi c xa bng chng trnh trc khi cho php ngt tip tc hot
ng tr li ta c th pht hin c thi im tip theo m ngt xy ra.
i vi cc ngt ngoi vi nh ngt t chn INT hay ngt t s thay i trng thi
cc pin ca PORTB (PORTB Interrupt on change), vic xc nh ngt no xy ra cn
3 hoc 4 chu k lnh ty thuc vo thi im xy ra ngt.
Cn ch l trong qu trnh thc thi ngt, ch c gi tr ca b m chng trnh
c ct vo trong Stack, trong khi mt s thanh ghi quan trng s khng c ct
v c th b thay i gi tr trong qu trnh thc thi chng trnh ngt. iu ny nn
c x l bng chng trnh trnh hin tng trn xy ra.
7.2 Vi iu khin 18F4680.
7.2.1 S lc v Vi iu khin PIC 18F4680:
- 48 K Flash ROM.- 3328 Bytes RAM.- 1024 Bytes EEPROM.- 5 ports (A, B, C, D, E) vo ra vi tn hiu iu khin c lp.- 2 b nh thi 8 bits (Timer 0 v Timer 2).- 2 b nh thi 16 bits (Timer 1 v Timer 3) c th hot ng trong ch tit
kim nng lng (SLEEP MODE) vi ngun xung Clock ngoi.
- 2 b CCP( Capture / Compare/ PWM).- 1 b bin i AD 10 bits, 10 ng vo.- 2 b so snh tng t (Compartor).- 1 b nh thi gim st (WatchDog Timer).- Mt cng song song 16 bits vi cc tn hiu iu khin.- Mt cng ni tip.- 15 ngun ngt.
-
8/2/2019 Quang Bao Qua Internet
59/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 60
- C ch tit kim nng lng.- Np chng trnh bng cng ni tip ICSP.- 35 tp lnh c di 16 bits.- Tn s hot ng ti a 40MHz
7.2.2 Hnh Dng V S Chn.
Hnh 7.3 Pic 18F4680
7.2.3. S Khi Ca Pic18F4680.
-
8/2/2019 Quang Bao Qua Internet
60/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 61
Hnh 7.10: s khi PIC 18F4680
7.2.4. Mt s im c bit ca CPU:7.2.6.1. Dao ng:
Pic18F4680 c kh nng s dng mt trong 4 loi oscillator, l:
- LP: (low power crystal).
- XT: thch anh bnh thng
- HS: (high-speed crystal).
-
8/2/2019 Quang Bao Qua Internet
61/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 62
- RC: (resistor/capacitor)
Trong cc ch LP,XT v HS chng
ta s dng thch anh dao ng ni vo cc chn OSC1 v OSC2 to dao
ng. Vic la chn t trong dao ng thch anh da vo bng sau:
Lu : T c gi tr ln s tng
tnh n nh ca dao ng nhng cng
lm tng thi gian khi ng.
Ch dao ng RC c s
dng nh mt gii php tit kim trong
cc ng dng khng cn s chnh xc v
thi gian.
Cch tnh chu k my:V d ta s dng thch anh
10Mhz. Khi :
Tn s dao ng ca thch anh l Fosc = 10Mhz
=> Chu k dao ng ca thch anh l Tosc = 1/Fosc= 1/10*106 (s)
Chu k my:
T_instruction = 4*Tosc = 4/10*106(s) = 0.4 s = 400 ns
-
8/2/2019 Quang Bao Qua Internet
62/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 63
7.2.6.2. Interrupts:PIC18F4585 c nhiu ngun ngt khc nhau. y l mt s ngt tiu biu:
- Ngt ngoi xy ra trn chn INT.- Ngt do Timer0.- Ngt do Timer1.- Ngt do Timer2.- Ngt do Timer3.- Ngt do thay i trng thi trn cc chn PortB.- Ngt so snh in th.- Ngt do Port song song.- Ngt USART.- Ngt nhn d liu.- Ngt truyn d liu .- Ngt chuyn i ADC.- Ngt mn hnh LCD.- Ngt hon tt ghi EEPROM.- Ngt module CCP.- Ngt Module SSP.
Cc thanh ghi chc nng ngt: INTCON,PIE1,PIR1,PIE2,PIR2 (cc thanhghi ny s c nghin cu cc phn sau).
-
8/2/2019 Quang Bao Qua Internet
63/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 64
7.2.5. T Chc B NhCu trc b nh ca vi iu khin PIC18F4680 bao gm b nh chng trnh
(Program Memory) v b nh d liu (Data Memory).
* B nh chng trnh
B nh chng trnh ca vi iu khin PIC18F4585 l b nh flash, dung lng b
nh 48K byte v c phn thnh nhiu trang (t page0 n page 3) . Nh vy b
nh chng trnh c kh nng cha c 48*1024 = 49154 lnh (v mt lnh sau khim ha s c dung lng 1 word (14 bit). Khi vi iu khin c reset, b m
chng trnh s ch n a ch 0000h (Reset vector). Khic ngt xy ra, b m
chng trnh s ch n a ch 0004h (Interrupt vector). B nh chng trnh khng
bao gm b nh stack v khng c a ch ha bi b
m chng trnh.
-
8/2/2019 Quang Bao Qua Internet
64/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 65
* B nh d liu
B nh d liu ca PIC l b nh EEPROM c chia ra lm nhiu bank. i
vi PIC18F4680 b nh d liu c chia ra lm16 bank. Mi bank c dung lng
256 byte, bao gm cc thanh ghi c chc nng c bit SFR (Special FunctionRegister) nm cc vng a ch thp v cc thanh ghi mc ch chung GPR
(General Purpose Register) nm vng a ch cn li trong bank. Cc thanh ghi
SFR thng xuyn c s dng (v d nh thanh ghi STATUS) s c t tt c
cc bank ca b nh d liu gip thun tin trong qu trnh truy xut v lm gim
bt lnh ca chng trnh. S c th ca b nh d liu PIC18F4585 nh sau:
-
8/2/2019 Quang Bao Qua Internet
65/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 66
** THANH GHI CHC NNG C BIT SFR:
y l cc thanh ghi c s dng bi CPU hoc c dng thit lp v iu
khin cc khi chc nng c tch hp bn trong vi iu khin. C th phn thanh
ghi SFR lm hai lai: thanh ghi SFR lin quan n cc chc nng bn trong (CPU)
v thanh ghi SRF dng thit lp v iu khin cc khi chc nng bn ngoi (vd nh ADC, PWM ).
Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi 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.
-
8/2/2019 Quang Bao Qua Internet
66/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 67
Thanh ghi OPTION_REG (81h, 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 (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho php c v ghi, cha
cc bit iu khin v cc bit c hiu khi timer0 b trn, ngt ngoi vi RB0/INT vngt interrputon- change ti cc chn ca PORTB.
Thanh ghi PIE1 (8Ch): cha cc bit iu khin chi tit cc ngt ca cc khi chc
nng ngoi vi.
Thanh ghi PIR1 (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.
Thanh ghi PIE2 (8Dh): cha cc bit iu khin cc ngt ca cc khi chc nng
CCP2, SSP bus, ngt ca b so snh v ngt ghi vo b nh EEPROM.
Thanh ghi PIR2 (0Dh): cha cc 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.
-
8/2/2019 Quang Bao Qua Internet
67/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 68
Thanh ghi PCON (8Eh): cha cc c hiu cho bit trng thi cc ch reset ca
vi iu khin.
** THANH GHI MC CH CHUNG GPR:
Cc thanh ghi ny c th c truy xut trc tip hoc gin tip thng qua thanh
ghi FSG (File Select Register). y l cc thanh ghi d liu thng thng, ngi s
dng c th ty theo mc ch chng trnh m c th dng cc thanh ghi ny
cha cc bin s, hng s, kt qu hoc cc tham s phc v cho chng trnh.
* Stack
Stack khng nm trong b nh chng trnh hay b nh d liu m l mt vng
nh c bit khng cho php c hay ghi.
Khi lnh CALL c thc hin hay khi mt ngt xy ra lm chng trnh b r
nhnh, gi tr ca b m chng trnh PC t ng c vi iu khin ct vo trong
stack. Khi mt trong cc lnh RETURN, RETLW hat RETFIE c thc thi, gi tr
PC s t ng c ly ra t trong stack, vi iu khin s thc hin tip chng trnh
theo ng qui trnh nh trc.
B nh Stack trong vi iu khin PIC h 18F4680 c kh nng cha c 8 a
ch v hot ng theo c ch xoay vng. Ngha l gi tr ct vo b nh Stack ln
th 9 s ghi
ln gi tr ct vo Stack ln u tin v gi tr ct vo b nh Stack ln th 10 s ghi
ln gi tr ct vo Stack ln th 2.
Cn ch l khng c c hiu no cho bit trng thi stack, do ta khng bit
c khi no stack trn. Bn cnh tp lnh ca vi iu khin dng PIC cng
khng c lnh POP hay PUSH, cc thao tc vi b nh stack s hon ton c iu
khin bi CPU.
-
8/2/2019 Quang Bao Qua Internet
68/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 69
7.2.6. Cc Cng Xut Nhp Ca Pic18F4680Cng xut nhp (I/O port) chnh l phng tin m vi iu khin dng
tng tc vi th gii bn ngoi. Bn cnh , do vi iu khin c tch hp
sn bn trong cc c tnh giao tip ngoi vi nn bn cnh chc nng l cng
xut nhp thng thng, mt s chn xut nhp cn c thm cc chc nng
khc th hin s tc ng ca cc c tnh ngoi vi nu trn i vi th
gii bn ngoi.
Vi iu khin PIC18F4585 c 5 cng xut nhp, bao gm PORTA,
PORTB, PORTC, PORTD v PORTE.
7.2.6.1. PORT A:PORTA (RPA) bao gm 8 I/O pin. y l cc chn hai chiu
(bidirectional pin), ngha l c th xut v nhp c. Chc nng I/O ny
c iu khin bi thanh ghi TRISA (a ch 85h). Mun xc lp chc
nng ca mt chn trong PORTA l input, ta set bit iu khin tng
ng vi chn trong thanh ghi TRISA v ngc li, mun xc lp chc
nng ca mt chn trong PORTA l output, ta clear bit iu khin
tng ng vi chn trong thanh ghi TRISA. Thao tc ny hon ton
tng t i vi cc PORT v cc thanh ghi iu khin tng ng TRIS(i vi PORTA l TRISA, i vi PORTB l TRISB, i vi PORTC l
TRISC, i vi PORTD l TRISD vi vi PORTE l TRISE). Bn
cnh PORTA cn l ng ra ca b ADC, b so snh, ng vo analog
ng vo xung clock ca Timer0 v ng vo ca b giao tip MSSP
(Master Synchronous Serial Port).
Cc thanh ghi SFR lin quan n PORTA bao gm:
- PORTA (a ch 05h) : cha gi tr cc pin trong PORTA.- TRISA (a ch 85h) : iu khin xut nhp.
- CMCON (a ch 9Ch) : thanh ghi iu khin b so snh.
- CVRCON (a ch 9Dh) : thanh ghi iu khin b so snh in p.
- ADCON1 (a ch 9Fh) : thanh ghi iu khin b ADC.
-
8/2/2019 Quang Bao Qua Internet
69/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 70
7.2.6.2. PORT B: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 np khc
nhau. PORTB cn lin quan n ngt ngoi vi v b Timer0. PORTB cn
c tch hp chc nng in tr ko ln c iu khin bi chng
trnh.
Cc thanh ghi SFR lin quan n PORTB bao gm:
- PORTB (a ch 06h,106h) : cha gi tr cc pin trong PORTB
- TRISB (a ch 86h,186h) : iu khin xut nhp
- OPTION_REG (a ch 81h,181h) : iu khin ngt ngoi vi v b
Timer0.
7.2.6.3. PORT C:PORTC (RPC) gm 8 pin I/O. Thanh ghi iu khin xut nhp tng ng
l TRISC. Bn cnh PORTC cn cha cc chn chc nng ca b so
snh, b Timer1, b PWM v cc chun giao tip ni tip I2C, SPI, SSP,
USART.
Cc thanh ghi iu khin lin quan n PORTC:- PORTC (a ch 07h) : cha gi tr cc pin trong PORTC
- TRISC (a ch 87h) : iu khin xut nhp.
7.2.6.4. PORT D:PORTD (RPD) gm 8 chn I/O, thanh ghi iu khin xut nhp tng ng
l TRISD. PORTD cn l cng xut d liu ca chun giao tip PSP
(Parallel Slave Port).
Cc thanh ghi lin quan n PORTD bao gm:- Thanh ghi PORTD : cha gi tr cc pin trong PORTD.
- Thanh ghi TRISD : iu khin xut nhp.
7.2.6.5. PORT E:
-
8/2/2019 Quang Bao Qua Internet
70/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 71
PORTE (RPE) gm 4 chn I/O. Thanh ghi iu khin xut nhp tng ng
l TRISE. Cc chn ca PORTE c ng vo analog. Bn cnh PORTE
cn l cc chn iu khin ca chun giao tip PSP.
Cc thanh ghi lin quan n PORTE bao gm:
- PORTE : cha gi tr cc chn trong PORTE.
- TRISE : iu khin xut nhp v xc lp cc thng s cho chun giao tip
PSP.
- ADCON1 : thanh ghi iu khin khi ADC
7.2.7 Giao Tip Ni Tip
USART (Universal Synchronous Asynchronous Receiver Transmitter) l mt
trong hai chun giao tip ni tip.USART cn c gi l giao din giao tip ni
tip SCI
(Serial Communication Interface). C th s dng giao din ny cho cc giao tip
vi cc
thit b ngoi vi, vi cc vi iu khin khc hay vi my tnh. Cc dng ca giao
din USART ngoi vi bao gm:
- Bt ng b (Asynchronous).
- ng b_ Master mode.- ng b_ Slave mode.
PIC16F4680 c tch hp sn b to tc baud BRG (Baud Rate Genetator) 8
bit hoc 16bit dng cho giao din USART. BRG thc cht l mt b m c th
c s dng cho c hai dng ng b v bt ng b v c iu khin bi thanh
ghi PSBRG. dng bt ng b, BRG cn c iu khin bi bit BRGH (
TXSTA). dng ng b tc ng ca bit BRGH c b qua. Tc baud do
BRG to ra c tnh theo cng thc sau:
-
8/2/2019 Quang Bao Qua Internet
71/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 72
Trong X l gi tr ca thanh ghi RSBRG ( X l s nguyn v 0
-
8/2/2019 Quang Bao Qua Internet
72/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 73
tao xung baud BRG cn Slave mode ly xung clock ng b t bn ngoi qua chn
RC6/TX/CK. iu ny cho php Slave mode hot ng ngay c khi vi iu khin
ang ch sleep.
Cc thanh ghi lin quan n qu trnh truyn d liu bng giao din USART ng
b Master mode:
- Thanh ghi INTCON (a ch 0Bh, 8Bh, 10Bh, 18Bh): cho php tt c cc ngt.
- Thanh ghi PIR1 (a ch 0Ch): cha c hiu TXIF.
- Thanh ghi PIE1 (a ch 8Ch): cha bit cho php ngt truyn TXIE.
- Thanh ghi RCSTA (a ch 18h): cha bit cho php cng truyn d liu (hai pin
RC6/TX/CK v RC7/RX/DT).
- Thanh ghi TXREG (a ch 19h): thanh ghi cha d liu cn truyn.
- Thanh ghi TXSTA (a ch 98h): xc lp cc thng s cho giao din.
- Thanh ghi SPBRG (a ch 99h): quyt nh tc baud.
7.3 IC TPIC6B595
TPIC6B595 l thanh ghi dch. Dng gii m ct, hng led ma trn, c tch
hp bi IC 74HC595 vi IC m dng ULN2803.
-
8/2/2019 Quang Bao Qua Internet
73/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 74
Hnh2.10 S chn TPIC 6B595
Chc nng cc chn ca IC nh sau
VCC, GND: hai chn ny dng cp ngun nui cho IC, VCC ni vi+5V, GND c ni mass.
NC: No Connection, chn ny khng s dng n. RCK: Chn pht xung clock u ra SER_IN: Serial Data In, ng vo d liu ni tip. SER_OUT: Serial Data Out, ng ra d liu ni tip. /SRCLK: Xa thanh ghi SRCK: Chn pht xung clock u vo. /G: output enable, chn cho php xut d liu. Khi chn ny mc
logic thp th d liu ng ra ca Flip-Flop c a ra ngoi. Ngc
li, khi chn ny mc logic cao th d liu khng c php a ra
ngoi.
DRAIN0 DRAIN7: outputs, cc ng ra ca IC.c tnh ca 6B595
L IC ghi dch ch to theo cng ngh CMOS Tc truyn tn hiu 20ns Phm vi in p hot ng: 4-5.5V Phm vi dng in chu c: 500mA
S khi TPIC6B595
-
8/2/2019 Quang Bao Qua Internet
74/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
n Tt Nghip Kha 2007-2010 Trang 75
Hnh 2.11 S khi TPIC 6B595
Nguyn l hot ng
Hnh 2.12: Nguyn l hot ng ca 6B595
-
8/2/2019 Quang Bao Qua Internet
75/75
Quang Bo iu Khin Qua Internet GVHD:Trng Quang Trung
Chn SER_In l ng d liu vo (bit d liu ni tip). Mt xung SRCK s lm
bit ny i vo thanh ghi dch trong bng con TPIC6B595. Sau 8 bit lin tc th thanh
ghi dch ny li l bit u tin ca IC tip theo (chn SER_OUT ni vi chn SER_IN
ca IC sau). Ta a lin tc xut d liu cho hai mu xanh, .
Thanh ghi dch mi ch thay i trong bng IC thi ch cha a ra cc chn
.Mun a d liu t cc thanh ghi dch ny ra chn TPIC 6B595 th cn a mt
xung kch vo chn RCK (chn s 12). Chn G l chn cho php chn led hay
led xanh
IC ULN 2803
Hnh 4.7 S cu to ULN2803
Nhn vo s cu to ca ULN2803 ta thy c rng khi u vo mc 1 th