You are on page 1of 75

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

PH N N I DUNG

n T t Nghi p Kha 2007-2010

Trang 2

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG D N NH P
1.1 T V N : Thng tin lin l c l v n c quan tm trong x h i. Ngay t ngy xa, con ng i bi t v n d ng nh ng g c s n truy n tin nh l a, m thanh, cc d u hi u Ngy nay, v i s pht tri n c a x h i th ngy cng c nhi u cch ti p c n v i nh ng thng tin m i. Ta c th bi t c thng tin qua bo ch, truy n hnh, m ng internet, qua cc pano, p phch Thng tin c n ph i c truy n i nhanh chng, k p th i v ph bi n r ng ri trong ton x h i. V vi c thu th p thng tin k p th i, chnh xc l y u t h t s c quan tr ng trong s thnh cng c a m i lnh v c. Cc thi t b t ng c i u khi n t xa qua m t thi t b ch ho c c i u khi n tr c ti p qua h th ng my tnh. Vi c s d ng vi i u khi n i u khi n hi n th c r t nhi u u i m m cc phng php truy n th ng nh pan, p phch khng c c nh vi c i u ch nh thng tin m t cch nhanh chng b ng cch thay i chng trnh. V i nh ng l do trn, nhm th c hi n ti a ra m t cch th c n a ph c v thng tin l dng quang bo. N i dung nghin c u c a ti chnh l t o ra m t b ng quang bo ng d ng trong vi c hi n th thong tin nh ga Th gi i ngy cng pht tri n th lnh v c i u khi n c n ph i c m r ng hn. Vi c ng d ng m ng truy n thng cng nghi p vo s n xu t mang l i nhi u thu n l i cho x h i loi ng i, thng tin c c p nh t nhanh chng v c i u khi n m t cch chnh xc. cc ni cng c ng nh cng ty, nh x ng,

n T t Nghi p Kha 2007-2010

Trang 3

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

1.2 T M QUAN TR NG C A TI Quang bo ngy nay c a vo s d ng r t nhi u lnh v c khc nhau

nh: truy n thng, qu ng co, gi i thi u s n ph m, thng bo tin t c (thay cho cc b n tin b ng gi y). ti c m t v tr quan tr ng trong nh ng ng d ng i h i c n hi n th thng tin c p nh t t internet. l ng thng tin thay i lin t c m cc phng php khc khng th th c hi n c ho c qu t n km. Xu t pht t nh ng l i ch trn, nhm th c hi n ti s thi t k v thi cng m hnh m t b ng quang bo c kh nng giao ti p internet, thn thi n v i ng i s d ng, v s c hi n th trn b ng quang bo i u khi n t xa qua internet. 1.3 N I DUNG TI: V i kho ng th i gian th c hi n ti 4 tu n, nhm th o lu n v ch n n i dung c a ti nh sau: - Tm hi u c u trc m n Internet. - Thi cng b ng quang bo hi n th n s c kch th c 832 i m nh. - Thay i thng tin trn quang bo b ng cch truy n d li u vo vi x l thng qua giao di n web. 1.4 M C CH TI: Trong qu trnh nghin c u v th c hi n ti ny nh m gip ng i h c: - Tng kh nng t nghin c u cng nh t h c. - B c u ti p xc v i th c t . - V n d ng nh ng ki n th c c ng th i tm ti nh ng ki n th c m i hi u su s c hn trong lnh v c ny. thi t k c m t h th ng nh nu trn th ng i nghin c u ph i n m

v ng ki n th c chuyn ngnh i n t , tm hi u, nghin c u qua sch v , ti li u n c ngoi v d ng m ch th c t thi cng ph n c ng.

n T t Nghi p Kha 2007-2010

Trang 4

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

1.5 I T NG NGHIN C U: - Cc phng n i u khi n v x l d li u cho b ng led ma tr n. - Tm hi u vi i u khi n PIC16F877A. - Tm hi u vi i u khi n PIC 18LF4680. - Tm hi u phng php l p trnh CCS cho PIC. - Tm hi u phng php l p trnh nhng trang web vo vi x 18LF4680. - Tm hi u IC giao ti p Ethetnet ENC28J60. - B ng quang bo led ma tr n kch th c 8 x 32 i m nh. 1.6 L P K HO CH NGHIN C U: th c hi n ti ny nhm sinh vin k t h p s d ng nhi u phng php v phng ti n h tr g m c: - Tham kh o ti li u: k thu t xung, k thu t s , i n t cn b n, vi i u khi n. - Quan st. - Th c nghi m. - T ng k t kinh nghi m. - Phng ti n: my vi tnh, Internet, th vi n. K ho ch nghin c u: - Tu n 1: Nh n ti v l p cng t ng qut. Thu th p ti li u v l p cng chi ti t. Tu n 2, 3, 4: Thi t k thi cng v vi t bo co. l

n T t Nghi p Kha 2007-2010

Trang 5

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG II:

T NG QUAN V M NG INTERNET
2.1. Gi i thi u: Internet l m t h th ng thng tin ton c u c th c truy nh p cng c ng g m cc m ng my tnh c lin k t v i nhau. H th ng ny truy n thng tin theo ki u n i chuy n gi d li u (packet switching) d a trn m t giao th c lin m ng c chu n ha (giao th c IP). H th ng ny bao g m hng ngn m ng my tnh nh hn c a cc doanh nghi p, c a cc vi n nghin c u v cc tr ng i h c, c a ng i dng c nhn, v cc chnh ph trn ton c u. Chng cung c p m t kh i l ng thng tin v d ch v kh ng l trn internet. M ng Internet mang l i r t nhi u ti n ch h u d ng cho ng i s d ng, m t trong cc ti n ch ph thng c a Internet l h th ng th i n t (email), tr chuy n tr c tuy n (chat), my truy tm d li u (search engine), cc d ch v thng mi v chuy n ngn, v cc d ch v v y t gio d c nh l ch a b nh t xa ho c t ch c cc l p h c o. Ngu n thng tin kh ng l km theo cc d ch v tng ng chnh l h th ng cc trang Web lin k t v i nhau v cc ti li u khc trong WWW (World Wide Web). Tri v i m t s cch s d ng th ng ngy, Internet v WWW khng ng ngha. Internet l m t t p h p cc m ng my tnh k t n i v i nhau b ng dy ng, cp quang, v.v..; cn WWW, hay Web, l m t t p h p cc ti li u lin k t v i nhau b ng cc siu lin k t (hyperlink) v cc a ch URL, v n c th c truy nh p b ng cch s d ng Internet. 2.2. Ho t ng c a m ng internet 2.2.1. Cc Giao Th c ( Protocols). Cc giao th c l t p cc lu t m cc my tnh ph i tun theo khi giao ti p trn Internet. Tranmission Control Protocol (TCP): thi t l p k t n i gi a hai my tnh truy n t i d li u, chia d li u thnh nh ng gi nh v m

n T t Nghi p Kha 2007-2010

Trang 6

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

b o vi c truy n

nh n d

li u. TCP l giao th c h ng k t n i

(connection-oriented protocol). User Datagram Protocol (UDP): thi t l p k t n i nhanh nhng khng ch c ch n gi a cc my tnh truy n t i d li u, cung c p t d ch v kh c ph c l i. Internet Protocol (IP): i u ch nh ng i c a nh ng gi d li u ng truy n nh n trn Internet. TCP l giao th c phi k t n i

(connectionless protocol). HTTP: cho php trao i thng tin trn Internet. FTP: cho php truy n nh n file trn Internet. SMTP: cho php g i th i n t trn Internet. POP3: cho php nh n th i n t trn Internet. TCP/IP c dng lm giao th c chu n khi giao ti p trn Internet v n c l p v i n n c a h th ng (platform independent) v khng c

t ch c no c quy n s h u giao th c ny. 2.2.2. a Ch IP ( IP Adress). Internet l m t m ng k t n i r ng l n gi a cc my tnh. xc nh m t my tnh trn m ng ny, ng i ta dng m t con s g i l a ch IP. a ch IP g m m t t p 4 s nh hn 255 v c ngn cch b i cc d u .. V d : 41.212.196.197. 2.2.3. M Hnh Khch Ch ( Client Server Model). Internet d a trn m hnh khch ch (client server), trong d li u c trao i thng qua cc trang web. Trong m hnh client server, m i my tnh c xc nh b i m t a ch Internet protocol (IP) v c my tnh client, server cng ch p nh n m t giao th c chung giao ti p v i nhau. Trong m hnh khch - ch , my khch (client computer) yu c u thng tin t m t my ch (server). My ch ch p nh n yu c u v g i

n T t Nghi p Kha 2007-2010

Trang 7

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

thng tin v cho my khch. Vi c trao i thng tin ny c di n ra thng qua nh ng trang web. 2.2.4. H Th ng Tn Mi n ( DNS- Domain Name System). M i my tnh trn m ng Internet c xc nh b ng a ch IP, nhng con s ny r t kh nh . kh c ph c nh c i m ny, ng i ta dng h th ng tn mi n t tn cho my tnh. V d : tn mi n www.yahoo.com ng v i a ch IP 216.109.127.28. request web page Mi n (domain) ng v i m t t p cc my tnh trn Internet. Ph n

m r ng c a tn mi n (domain name extension) c dng xc nh qu c gia hay t ch c. 2.3. K t N i Internet.

k t n i v i Internet c n c m t s yu c u v ph n c ng v ph n m m sau: Ph n c ng: my tnh, k t n i thng qua ng dy i n tho i ho c k t n i cp, modem. Ph n m m: k t n i internet, h i u hnh, giao th c TCP/IP, trnh duy t web. Cc yu c u thi t y u khi k t n i v i Internet: k t n i v i Internet thng qua m t nh cung c p Internet (Internet Service Provider), modem, trnh duy t v a ch URL. 2.4. Giao Th c TCP/IP: TCP/IP l b giao th c cho php k t n i cc h v i nhau. TCP/IP l vi t t t c a Transmission Control Protocol (Giao th c i u Khi n Truy n thng)/Internet Protocol (Giao th c Internet), ngy nay TCP/IP c s d ng r ng ri trong c c m ng c c b cng nh trn m ng Internet ton c u. TCP/IP khng ch g m 2 giao th c m th c t n l t p h p c a nhi u giao th c. Chng ta g i l 1 h giao th c hay b giao th c (Suite Of Protocols). th ng m ng khng ng nh t

n T t Nghi p Kha 2007-2010

Trang 8

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

TCP/IP c xem l gi n l c c a m hnh tham chi u OSI v i b n t ng, trong m hnh ny l (theo th t t trn xu ng): + T ng ng d ng (Application Layer) + T ng giao v n (Transport Layer) +T ng m ng (Internet Layer) + T ng lin m ng (Network Interface Layer)

Hnh 2.1 Ki n trc TCP/IP T ng lin m ng (Network Interface Layer): T ng Lin M ng c trch nhi m a d li u t i v nh n d li u t phng ti n truy n d n. T ng ny bao g m cc thi t b giao ti p m ng(Card M ng v Cp M ng) v chng trnh cung c p cc thng tin c n thi t c th ho t ng, truy nh p ng truy n v t l qua thi t b giao ti p m ng . T ng m ng (Internet Layer): N m trn t ng lin m ng. T ng ny c ch c nng gn

n T t Nghi p Kha 2007-2010

Trang 9

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

a ch , ng gi v nh tuy n (Route) d trongt ng ny g m:

li u. B n giao th c quan tr ng nh t

IP (Internet Protocol): C ch c nng gn a ch cho d li u tr c khi truy n v nh tuy n chng t i ch. ARP (Address Resolution Protocol): C ch c nng bin d ch a ch IP c a my ch thnh a ch MAC (Media Access Control). ICMP (Internet Control Message Protocol): C ch c nng thng bo l i trong tr ng h p truy n d li u b h ng. IGMP (Internet Group Management Protocol): C ch c nng i u khi n truy n a h ng (Multicast). T ng giao v n (Transport Layer): C trch nhi m thi t l p phin truy n thng gi a cc my tnh v quy nh cch truy n d li u 2 giao th c chnh trong t ng ny g m c hai giao th c chnh: TCP (Transmission Control Protocol) v UDP (User Datagram Protocol). TCP cung c p cc knh truy n thng h ng k t n i v m b o truy n d li u m t cch tin c y, n cung c p m t lu ng d li u tin c y gi a hai tr m, n s d ng cc c ch nh chia nh cc gi tin c a t ng trn thnh cc gi tin c kch th c thch h p cho t ng m ng bn d i, bo nh n gi tin, t h n ch th i gian time-out m b o bn nh n bi t c cc gi tin g i i. TCP th ng truy n cc gi tin c kch th c l n v yu c u pha nh n xc nh n v cc gi tin nh n. Do t ng ny m b o tnh tin c y, t ng trn s khng c n quan tm n n a. UDP cung c p m t d ch v n gi n hn cho t ng ng d ng. UDP cung c p

knh truy n thng phi k t n i, n ch g i cc gi d li u t tr m ny t i tr m kia m khng m b o cc gi tin n c t i ch. Cc th ng ch truy n nh ng gi c kch th c nh , tin c y d li u ph thu c vo t ng ng d ng. Cc c ch m b o tin c y c n c th c hi n b i t ng trn. ng d ng dng UDP

n T t Nghi p Kha 2007-2010

Trang 10

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

T ng ng d ng (Application Layer): T ng ng d ng l t ng trn cng c a m hnh TCP/IP bao g m cc ti n trnh v cc ng d ng cung c p cho ng i s d ng truy c p m ng. M t s giao th c thng d ng trong t ng ny l: DHCP (Dynamic Host Configuration Protocol): Giao th c c u hnh tr m ng. DNS (Domain Name System): H th ng tn mi n SNMP (Simpe Network Management Protocol): Giao th c qu n l m ng n gi n. FTP (File Transfer Protocol): Giao th c truy n t p tin TFTP (Trivial File Transfer Protocol): Giao th c truy n t p tin bnh th ng SMTP (Simple Mail Transfer Protocol): Giao th c truy n th n gi n. TELNET 2.5. Cng Ngh Ethernet: Hn 20 nm tr c, Ethernet ra i mang l i m t m ng truy n d li u n i ti p t c cao; t i nay, n tr thnh m t chu n c ch p nh n kh p th gi i, v l giao th c th ng tr cc m ng LAN. Hn 85% k t n i m ng c ci t trn th gi i l Ethernet. T c truy n d li u ph bi n nh t c a Ethernet l

10 tri u bit/s (10 Mbps), m c d v y, h u h t cc m ng hi n nay ang c nhanh chng nng c p ln Fast Ethernet v i t c 100 Mbps. Ethernet

th ng g n v i h i u khi n cng nghi p qua m t i u khi n c l p k t n i v i PC hay m ng b ng cp Ethernet. Ngy 22 thng 5 nm 1973, Robert Metcalfe thu c Trung tm Nghin c u Palto Alto c a hng Xerox PARC, bang California, a ra t ng h th ng k t n i m ng my tnh cho php cc my tnh c th truy n d

li u v i nhau v v i my in lazer. Lc ny, cc h th ng tnh ton l n u c thi t k d a trn cc my tnh trung tm t ti n (mainframe). i m khc bi t l n m Ethernet mang l i l cc my tnh c th trao i thng tin tr c

n T t Nghi p Kha 2007-2010

Trang 11

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

ti p v i nhau m khng c n qua my tnh trung tm. M hnh m i ny lm thay i th gi i cng ngh truy n thng. Chu n Ethernet 10Mbps u tin c xu t b n nm 1980 b i s ph i

h p pht tri n c a 3 hng : DEC, Intel v Xerox. Chu n ny c tn DIX Ethernet (l y tn theo 3 ch ci u c a tn cc hng). U ban 802.3 c a IEEE l y DIX Ethernet lm n n t ng pht tri n. Nm 1985, chu n

802.3 u tin ra i v i tn IEEE 802.3 Carrier Sense Multiple Access with Collition Detection (CSMA/CD) Access Method vesus Physical Layer Specification. M c d khng s d ng tn Ethernet nhng Ethernet. Ngy

h u h t m i ng i u hi u l chu n c a cng ngh

nay chu n IEEE 802.3 l chu n chnh th c c a Ethernet. IEEE pht tri n chu n Ethernet trn nhi u cng ngh truy n d n khc nhau v th c nhi u lo i m ng Ethernet. Cc chu n Ethernet u ho t ng hnh 7 l p OSI v th n v d t ng Data Link trong m

li u m cc tr m trao i v i nhau l cc

khung (frame). C u trc khung Ethernet nh sau:

Hnh 2.2. C u trc khung tin Ethernet

Cc tr ng quan tr ng trong ph n mo u s c m t d i y: preamble: tr ng ny nh d u s xu t hi n c a khung bit, n lun mang gi tr 10101010. T nhm bit ny, pha nh n c th t o ra xung ng h 10 Mhz. SFD (start frame delimiter): tr ng ny m i th c s xc nh s b t u c a m t khung. N lun mang gi tr 10101011. Cc tr ng Destination v Source: mang a ch v t l c a cc tr m nh n v g i khung, xc nh khung c g i t u v s c g i t i u. LEN: gi tr c a tr ng ni ln l n c a ph n d li u m khung mang theo.

n T t Nghi p Kha 2007-2010

Trang 12

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

FCS mang CRC (cyclic redundancy checksum): pha g i s tnh ton tr ng ny tr c khi truy n khung. Pha nh n tnh ton l i CRC ny theo cch tng t . N u hai k t qu trng nhau, khung c xem l nh n ng, ng c l i khung coi nh l l i v b lo i b .

n T t Nghi p Kha 2007-2010

Trang 13

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG III:

GI I THI U MODEL ETHERNET S ENC28J60


3.1 Gi i thi u

D NG

Hnh 3.1. Modeml ethernet s d ng ENC28J60

y m model c Microchip cung c p mi n ph cng v i b th vi n TCP/IP Stack c a d n m ngu n m . Model s d ng Jack RJ45 tch h p s n bi n p v Led. Ng giao ti p a ra header s n giao ti p v i cc microcontroller khc nhau nh PIC, dsPIC, 8051/AVR, ARM... bao g m cc chn +5V, +3.3V, CLK0, INT, SO, SI, SCK, CS, RST, INT s ti t ki m r t nhi u th i gian v chi ph cho pht tri n ng d ng c a mnh. Mng hnh LCD dng hi n th a ch IP khi k t n i vo m ng.

n T t Nghi p Kha 2007-2010

Trang 14

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

3.2 Vi m ch truy n thng Enthernet ENC28J60. Trn th gi i c r t nhi u hng cung c p vi m ch h tr s n sng cho cc giao ti p theo giao th c TCP/IP, nh cc hng l n: Realtek, Conexant, MicroChip,... Tuy nhin, xt trn quan i m c a ng i thi t k th cc chp c nh gi cao l chp p ng c nhu c u th c t (khng thi u v cng khng qu d th a tnh nng), c s h tr trnh, d dng giao ti p v i cc vi x t i a t hng v cc th vi n l p l, m ch thi t k n gi n, t i h i cc tr

linh ki n ngoi. T nh ng tiu ch , cng v i s ra i dng chp h

hon ton giao th c ethernet, vi c l a ch n ENC28J60 c a MicroChip l l a ch n r t ph h p, c v tnh nng k thu t v gi c (t i th i i m nm ti li u v cc

2008,2009 gi ~3USD/1chp). Ngoi ra, hng h

tr y

th vi n l p trnh, r t thn thi n khi ghp n i v i cc h vi x l c trn th tr ng. 3.2.1 Cc thng s k thu t.

Hnh 3.2. S vi m ch giao ti p ethernet ENC28J60 Gi i thi u chung: Tng thch chu n IEEE 802.3 Ethernet Controller. Tch h p a ch MAC v 10BASE-T PHY

n T t Nghi p Kha 2007-2010

Trang 15

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

B m SRAM 8 Kbyte Transmit/Receive Packet Dual Port Buffer. Ch t ng g i l i khi c xung t. Ch t ng h y b cc gi tin sai. B m: Kch th c b m transmit/receive c th l p trnh c. Gim st qu trnh nh n FIFO. PHY: B l c tn hi u ra. C ch Loopback Mac(Media access Control): H tr Unicast, Multicast v Broadcast H 3.2.2 tr nhi u d ng ng gi tin Magic Packet, Unicast, Multicast ,Broadcast Cc kh i c b n bn trong ENC28J60: Bao g m 7 kh i c b n sau: 1. M t giao di n SPI dng giao ti p v i vi i u khi n. 2. Kh i gim st v i u khi n ENC28J60. 3. B nh m Sram cho vic truy v nh n gi tin. 4. Kh i gim st vi c truy c p vo b nh m. 5. Kh i Bus d li u gi m l nh thng qua SPI. 6. Module Mac theo chu n IEEE802.3. 7. Module PHY m ha v gi i m tn hi u i n.

n T t Nghi p Kha 2007-2010

Trang 16

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 3.3. S kh i vi m ch giao ti p ethernet ENC28J60 3.2.3 S k t n i v i cc thi t b ngo i vi. Vi m ch ENC28J60 giao ti p v i cc vi x l khc thng qua chu n truy n d li u n i ti p SPI (Serial Peripheral Interface), y l chu n giao ti p r t ph bi n, c dng n i cc vi m ch trong cng m t h th ng v i u i m

l ch y nhanh v t n r t t dy n i tn hi u, ch c n 3 dy cho c ng ghi v c, l:

Hnh 3.4. S ghp n i ENC28J60 v i vi x l

n T t Nghi p Kha 2007-2010

Trang 17

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

SCK Serial Clock Xung ng b cho ng n i ti p. SI Serial Input Tn hi u n i ti p vo (ghi). SO Serial Output Tn hi u n i ti p ra ( c). Sau y l b l nh SPI dng cho vi m ch ENC28J60 v cc gi n xung th hi n cc qu trnh ghi, c d li u, l nh gi a vi x l v ENC28J60.

Hnh 3.5. Qu trnh c thanh ghi i u khi n Ethernet

Hnh 3.6. Qu trnh c thanh ghi i u khi n MAC

Hnh 3.7 Qu trnh ghi vo thanh ghi l nh

n T t Nghi p Kha 2007-2010

Trang 18

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 3.8. Qu trnh ghi vo b m l nh

Hnh 3.9 Qu trnh ghi vo l nh c a h th ng M c d c thi t k theo c u trc stand alone (m t chip lm h t cc vi c) nhng vi c i u khi n vi m ch ny ho t ng c l r t ph c t p v i h i c hi u bi t kh ton di n v vi i u khi n, m ch i n t v m ng Internet. Tuy nhin, r t may m n cho ng i thi t k v l p trnh v hng MicroChip (hng s n xu t vi m ch ENC28J60) h tr t i a, b ng cch a ra y cc th vi n ph c v cho vi c l p trnh, lm cho vi c l p trnh giao ti p v i vi m ch ny tr nn kh d dng.

n T t Nghi p Kha 2007-2010

Trang 19

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG IV:

GI I THI U B

TH VI N TCP/IP STACK

C A MICROCHIP
4.1. S l c v TCP/IP Stack c a Microchip

B th vin TCP / IP Stack c a Microchip cung c p m t n n t ng cho cc ng d ng Ethernet do x l h u h t cc yu c u tng tc gi a cc t ng v t l v t ng ng d ng . N bao g m cc ng d ng ph bi n c a t ng ng d ng, bao

g m HTTP2 ph c v cc trang web, SMTP g i e-mail, SNMP cung c p tnh tr ng, ki m sot, Telnet, TFTP,-to Serial Ethernet, v nhi u hn n a. Ngoi ra, b th vi n TCP/IP stack ny c dung l ng tng i nh v hi u su t tri n khai cao c a TCP v UDP t ng giao v n, cng nh cc module h tr khc nh IP, ICMP, DHCP,ARP,vDNS. B th vin TCP / IP Stack c a Microchip. T i u ho cho t t c cc PIC18, PIC24, dsPIC v gia nh vi i u khi n PIC32.Cc ngn x p c chia thnh nhi u l p, m i l p truy c p d ch v t m t ho c nhi u l p tr c ti p d i n. . B th vin TCP / IP Stack bao g m cc tnh nng chnh: T i u ho cho t t c cc PIC18, PIC24, dsPIC v PIC32 gia nh H tr giao th c: ARP, IP, ICMP, UDP, TCP, DHCP, SNMP, HTTP, FTP, TFTP Socket h tr cho TCP v UDP Secure Sockets Layer (SSL) NetBIOS v d ch v tn DNS - Domain Name System Ethernet Device Discovery H tr cho MPLAB C18, C30, C32 v trnh bin d ch

n T t Nghi p Kha 2007-2010

Trang 20

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

B th vi n TCP/IP stack c vi t b ng c a ngn ng l p trnh 'C.Ton b code c dung l ng kho ng 28-34 KB, ty thu c vo m c ch c s d ng, B th vi n l i nhi u khng gian trn ng i dng c th i u ch nh cho ph h p v i ng d ng c a mnh 4.2. M hnh tham chi u TCP/IP stack

Gi ng nh m hnh tham chi u TCP / IP, TCP / IP Stack cng c chia thnh nhi u l p (Hnh 2.1). M i l p c 1 ch c nng ring, trong khi cc d ch v v cc API (Giao di n l p trnh ng d ng) c nh ngha thng qua cc tiu , bao g m cc t p tin. Khng gi ng m hnh TCP / IP, cc l p trong TCP / IP Stack tr c ti p truy c p vo m t ho c nhi u l p m khng ph th c vo l p d i n. M t b sung l n c a TCP / IP Stack l th c hi n vi c b sung hai modules m i: "StackTask" v "ARPTask". StackTask qu n l ho t ng c a Stack v t t c cc module c a n, trong khi ARPTask qu n l cc d ch v c a cc a ch Ngh quy t Protocol (ARP) l p. Nh c p tr c , TCP / IP Stack l m t b chng trnh; m t s l p c a n ph i c kh nng th c hi n m t s ho t ng khng ng b . c th p ng c i u ny i h i ph i c tnh tng i c l p khi s d ng d ch v .

Hnh 4.1 So snh m hnh TCP/IP v mo hnh TCP/IP Stac

n T t Nghi p Kha 2007-2010

Trang 21

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

4.3.

C u hnh

TCP/IP Stack l b chng trnh c vi t b ng ngn ng C. b t, t t ho c thi t l p m t tham s no ng i s d ng ch c n thay i m t ho c nhi u tham

s trong cc nh ngha . H u h t cc tham s ny c nh ngha trong t p tin header, "StackTsk.h". M t s nh ngha c quy nh t i cc t p tin khc c hi n th v i tn t p tin tng ng. M t khi t p tin ny c s a i, ng i s d ng ph i xy d ng l i cc ng d ng cho ph hp v i d n c a mnh. Cc nh ngha c li t k trong b ng1. nh ngha CLOCK_FREQ (compiler.h) Gi tr Oscillator Frequency (Hz) 10-255 Tick.c Tick.c S d ng Ch c nng Xc nh h th ng dao ng t n s tnh ton m t

TICKS_PER_SECONDS

l n th hai xc nh gi tr

TICK_PRESCALE_VALUE

2, 4, 8, 16, 32, 64, 128, 256

Tick.c

nh d u vo truy c p

MP MPFS_USE_PGRM N/A System

File S

d ng b trinh

nh d

chng

(MPFS.c) MPFS_USE_EEPROM N/A MPFS.c

lu tr MPFS S d ng eeprom d lu tr MPFS S byte MPFS

MPFS_RESERVE_BLOCK

0-255 External Data

MPFS.c

duo9c5 lu tr a ch eeprom Y u c u s ICMP d ng lu vo

EEPROM_CONTROL

EEPROM Control Code

MPFS.c

STACK_USE_ICMP

N/A

StackTsk.c

n T t Nghi p Kha 2007-2010

Trang 22

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

STACK_USE_SLIP STACK_USE_IP_GLEANING STACK_USE_DHCP

N/A N/A N/A

SLIP.c StackTsk.c DHCP.c, StackTsk.c FTP.c TCP.c, StackTsk.c UDP.c, StackTsk.c ARP.c, TCP.c TCP.c

Y u c u s SLIP

d ng

Y u c u s d ng IP Y u c u s dhcp Y u c u s FTP Y u c u s TCP Y u c u s TCP Kch ho t client TCP s i ACK d ng d ng d ng d ng

STACK_USE_FTP_SERVER

N/A

STACK_USE_TCP

N/A

STACK_USE_UDP

N/A

STACK_CLIENT_MODE

N/A

TCP_NO_WAIT_FOR_ACK MY_DEFAULT_IP_ADDR_BY TE MY_DEFAULT_MASK_BYTE ? MY_DEFAULT_GATE_BYTE? MY_DEFAULT_MAC_BYTE?

N/A

tr c khi truy n Xc nh m c nh

0-255

User Application

IP, MAC, gateway v subnet mask gi tr .

IP, MAC, gateway MAC.c, ARP.c, 0-255 DHCP.c, User Application v subnet m t n gi tr nh lu / nh ngha b i ng d ng. N u c kch DHCP ho t,

MY_IP_BYTE? MY_MASK_BYTE? MY_GATE_BYTE? MY_MAC_BYTE?

nh ng h n nh cc gi tr hi n t i my

n T t Nghi p Kha 2007-2010

Trang 23

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

ch

DHCP

giao c u hnh. s xc nh t ng sockets h tr

(gi i h n b i b nh RAM c s n). ki m tra th i gian MAX_SOCKETS 1-253 TCP.c thc hi n m

b o r ng sockets l ch n TCP

ng d ng.

MAX_UDP_SOCKETS

201-1500

TCP.c, MAC.c

Xc

nh

kch

th c b m. Xc nh t ng s truy n qua b m.

MAX_TX_BUFFER_COUNT

1-255

MAC.c

con s h n ch

ny c b i kch

th c b m c a Mac Xc nh s l ng MAX_HTTP_CONNECTIONS 1-255 HTTP.c t i da HTTM c k tn i MPFS_WRITE_PAGE_SIZE (MPFS.h) FTP_USER_NAME_LEN Xc 1-255 MPFS.c nh kch ghi

th c c th trn MPFS

1-31

FTP.c

Xc nh

di

n T t Nghi p Kha 2007-2010

Trang 24

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

(FTP.h) MAX_HTTP_ARGS (HTTP.c) MAX_HTML_CMD_LEN (HTTP.c) 1-31 HTTP.c

t i a c a FTP Xc nh s t i da c a HTML Xc nh di t i a c a HTML

1-128

HTTP.c

4.4.

S d ng TCP/IP Stack

B th vi n TCP/IP Stack ch a y cc Module h tr nh :HTTP, IP, FTP, DHCP. Ty vo m c ch s d ng m ng i l p trnh c th thay i cho ph h p v i d n ma mnh, nhung m t s t p tin nh t inh ph i c trong d n. Cc module v t p tin c trnh by trong b ng sau: Module MAC T p tin b t bu c MAC.c Delay.c SLIP ARP SLIP.c ARP.c ARPTsk.c MAC.c or SLIP.c Helpers.c IP IP.c MAC.c or SLIP.c Helpers.c ICMP ICMP.c StackTsk.c IP.c MAC.c or SLIP.c Helpers.c TCP StackTsk.c UDP.c Transmission Control Protocol Internet Control Message Protocol Internet Protocol Media Access Layer for SLIP Address Resolution Protocol M c ch Media Access Layer

n T t Nghi p Kha 2007-2010

Trang 25

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

IP.c MAC.c or SLIP.c Helpers.c UDP StackTsk.c UDP.c IP.c MAC.c or SLIP.c Helpers.c Stack Manager StackTsk.c TCP.c IP.c ICMP.c ARPTsk.c ARP.c MAC.c or SLIP.c Tick.c Helpers.c HTTP Server HTTP.c TCP.c IP.c MAC.c or SLIP Helpers.c Tick.c MPFS.c XEEPROM.c(1) HyperText Transfer Protocol Server Stack Manager (StackTask), which coordinates the other Microchip TCP/IP Stack modules User Datagram Protocol

DHCP Client

DHCP.c UDP.c IP.c

Dynamic Host Configuration Protocol

n T t Nghi p Kha 2007-2010

Trang 26

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

MAC.c Helpers.c Tick.c IP Gleaning StackTsk.c ARP.c ARPTsk.c ICMP.c MAC.c or SLIP.c FTP Server FTP.c TCP.c IP.c MAC.c or SLIP.c File Transfer Protocol Server. To configure node IP address only.

4.5.

Cc l p ch c nng trong TCP/IP Stack

TCP/IP Stack c nhi u l p s d ng 1 l p th ta c n ph i tm hi u ngha v ch c nng c a chng. 4.5.1. Media Access Control Layer (MAC) TCP/IP Stack bo g m nhi u ng d ng c c th b ng vn b ng s d ng giao di n m ng lu ng d ng ny c c th b ng vn b n s d ng giao di n m ng Realtek RTL8019AS Controller (NIC). RTL8019AS l m t NE2000 tng thch NIC, m c th c hi n c trn v t l Ethernet (PHY) v l p MAC. N u m t NIC khc c s d ng, ng i s d ng s c n ph i s a i ho c t o m t file MAC.c m i ch a truy c p. Mi n l d ch v c cung c p b i MAC.c khng thay i th t t c cc module khc s v n khng thay i. Ngoi vi c qu n l b m FIFO cho NIC. Mac cn qu n l b m truy n nh n, n c th yu c u m t t p tin no c truy n l i. ng i s d ng c th xc nh c kch th c c a b m nh vo file Mac.c.

n T t Nghi p Kha 2007-2010

Trang 27

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

4.5.2. Serial Line Internet Protocol (SLIP) L p SLIP s d ng cp n i ti p nh cc giao ti p phng ti n truy n thng, thay v cp ethernet. SLIP khng i h i ph i c NIC, do cung c p r t n gi n v k t n i khng t n km IP. SLIP th ng l m t k t n i m t-m t, ni m t my ch k t n i v i m t my khch. Cc SLIP module c thi t k ho t ng v i m t Windows d a trn my tnh, m c d n c th c s a i lm vi c v i h i u hnh khc v i r t t thay i. Cc APIs c cung c p b i cc module SLIP cng c s d ng gi ng nh MAC 4.5.3. Address Resolution Protocol L p ARP c a TCP / IP Stack c th c hi n b i hai m l p :ARP v ARPTask .ARP th c hi n b i cc t p tin "ARP.c", ARPTask th c hi n b i cc t p

tin"ARPTsk.c" cung c p hon thnh d ch v ARP. ARPTask c th c hi n nh m t b my t p h p, p ng yu c u ARP t xa. N cng duy tr m t b nh cache m t c p lu tr ARP tr l i v a m t m c cao hn cho ph h p v i cc cu c g i. ARPTask l m t c ch khng th c hi n th l i. Do , cc l p trn ho c cc ng d ng ny ph i pht hi n ra i u ki n th i gian v tr l i ph h p. ARPTask ho t ng hai ch : ch Server v Server / Client. Trong ch

Server Client , m t ph n c a m c kch ho t v bin so n t o ARP yu c u t cc my ch a phng ring c a mnh. Trong ch Server, ccARP m yu c u khng c bin d ch. Thng th ng, n u TCP/IP Stack c s d ng v i cc ng d ng my ch (nh HTTP Serverho c ph c v FTP) r, ARPTask nn c bin so n trong Server hnh th c gi m kch th c m.Trnh bin d ch xc nh bao g m STACK_CLIENT_MODE ph n m khch hng. Trong ch Server/ Client, ARPTask duy tr m t b nh cache m t c p lu tr cc ARP tr l i c a my ch t xa. Khi Server / Client khng c kch ho t, b nh cache l khng c nh ngha v tng ng v i b nh RAM v b nh chng trnh khng c s d ng.

n T t Nghi p Kha 2007-2010

Trang 28

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

4.5.4. Internet Protocol (IP) L p IP c a TCP / IP Stack c th c hi n b i cc t p tin "IP.c". Cc ph n u t p tin "IP.h"xc nh cc d ch v c cung c p b i l p ny .Trong ki n trc ny, l p IP l th ng, n khng p ng v i cc gi d li u IP. Thay vo , l p cao c p s d ng IP nguyn th y v l y cc gi tin IP, gi i m n v x l m t cch thch h p. c i m k thu t IP ny l yu c u cc my ch a phng t o ra m t gi tin nh n d ng duy nh t cho m i gi tin truy n qua n, nh n di n cho php my ch t xa xc nh cc gi tin trng l p v lo i b chng. L p IP c a TCP / IP Stack duy tr m t t nhn16-bit bi n theo di cc gi tin nh danh. 4.5.5. Internet Control Message Protocol (ICMP) L p ICMP c th c hi n b i cc t p tin "ICMP.c".Cc t p tin tiu "ICMP.h" nh ngha cc d ch v c cung c p b i l p ny. Trong ki n trc ny, l p ICMP l m t l p th ng, n khng p ng v i cc gi d li u ICMP. Thay vo , l p cao c p s d ng ICMP nguyn th y v tm n p ICMP gi tin, gi i thch n v x l cho thch h p. Thng th ng, ICMP c s d ng g i v nh n l i ho c thm d tin nh n. Trong TCP / IP Stack,ICMP th c hi n nguyn th y c th c s d ng t o ra b t k thng i p ICMP. Trong nh nng ng d ng, ICMP l h u ch cho m c ch thm d .Khi c kch ho t, ICMP c th p ng v i "ping" cc gi tin, do cho php m t my ch t xa c th xc nh my ch a phng.

Cc vi m ch l p ICMP ch p ng d li u ping cc d li u ln n 32 byte; gi tin l n hn s c b qua. N u ta mu n x l cc gi tin l n hn th ch c n s a i cc trnh bin d ch xc nh MAX_ICMP_DATA_LEN (trong cc t p tin tiu "StackTsk.h") 4.5.6. Transmission Control Protocol (TCP) L p TCP c a TCP / IP Stack c th c hi n b i cc t p tin "TCP.c". Cc ph n u t p tin "TCP.h"xc nh cc d ch v c cung c p b i l p ny . Trong ki n trc ca TCP/IP Stack , TCP l m t l p a ho t ng. N c th tm TCP cc gi d li u v p ng n cc my ch t xa theoTCP c a my ch qun l.

n T t Nghi p Kha 2007-2010

Trang 29

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

"TCP.h" cung c p d ch v socket TCP v gi u t t c TCP gi x l t ng i g i. L p ny cho php 2-253 TCP socket, s l ng gi i h n b i b nh v trnh bin d ch c s d ng. V i hn m t socket, cc ng d ng c p cao hn c th duy tr ng th i nhi u k t n i TCP v c th c nhi u hn m t ng d ng c s d ng l p ny. C s ny r t h u ch khi HTTP Server c s d ng. M i socket tiu th kho ng 36 bytes (ki m tra t p tin ngu n cho th c t tiu th ) v lm tng th i gian. t ng th ch bi n TCP Khng gi ng nh cc giao th c TCP / IP , t t c socket trong TCP / IP Stack chia s m t ho c nhi u hn m t b m truy n. Cch ti p c n ny lm gi m t ng th c yu c u RAM, nhng n c th t o ra m t v n khc, nh t i m t vi socket khng nh n b m truy n v khng bo th i gia s d ng cc

socket. Trong hon c nh ny cc my ch v my a phng khng th lin lac v i nhau . trnh i u ny, ng i dng ph i m b o r ng c b m truy n cho t t c cc socket. V vi c nh n d li u , ch c m t b m c nh n . N u socket nh n c d li u c a n, ch s h u c a socket ph i tm n p v lo i b b m nh n trong m t kho ng th i gian ng n cc socket khc c th nh n d li u c a h . Khi n pht hi n gi tin n l quan tm, n ph i x l cc gi hon ch nh trong m t th i gian ng n. N u trong kho ng th i gian m vn khng l y c gi tin th n s i v l y gi tin sau . Theo yu c u c a TCP, m i phn o n TCP ch a m t b ki m tra bao g m ton b cc giao th c TCP v c khu v c d li u. gi m b nh RAM, l p TCP s d ng trong b m MACNIC l lu tr v th c hi n cc tnh ton checksum MAC trong b m ring c a mnh. N u NIC c s d ng nh l m t MAC th cc SRAM NIC c s d ng nh m t b m khng gian. Nhng n u l SLIP c s d ng nh l m t MAC th d li u c lu vo Ram n i. Cc l p TCP c a TCP/IP Stack th c hi n h u h t cc ph n TCP my n c ch xu t b i RFC793. N cng th c hi n t ng v th l i h n gi ho t ng, trong ng i dng c th kch ho t ho c v hi u ha b i cc bin d ch

n T t Nghi p Kha 2007-2010

Trang 30

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

TCP_NO_WAIT_FOR_ACK nh ngha th i gian. Khi vi c g i l i t ng c kch ho t, m i socket truy n m c dnh ring cho n khi nh n c m t s tr l i t my ch l nh n c. Thi t k ny t o ra hi u qu m t truy n c a s c a m t trong nh ng phn o n TCP. V v y, d li u thng qua s th p hn ng k hn trong ch "Khng g i l i". N u ch c cc HTTP Server c s d ng, ng i s d ng c th v hi u ho vi c t ng g i l i v tng hi u qu thng qua.N u vi c p d ng chnh c a logic yu c u m i gi s c th a nh n tr c khi m t ci m i c th c truy n, ng i s d ng nn cho php ch "t ng g i l i". V i t ng g i l i c kch ho t, m t s cc k t n i m c th khng nh n ph c v trn th i gian, v cc my ch t xa c th c h ng th i gian-outThi t l p l i ho c sai st. 4.5.7. User Datagram Protocol (UDP) L p UDP c a TCP / IP Stack c th c hi n b i cc t p tin "UDP.c". Cc ph n u t p tin "UDP.h"xc nh cc d ch v c cung c p b i l p ny . Trong ki n trc c a TCP / IP Stack, UDP l m t l p a ho t ng. N c th tm UDP cc gi d li u v thng bo cho UDP socket tng ng c a d li u n ho c truy n t i i n. "UDP.h" cung c p d ch v socket UDP v gi u t t c X l gi tin UDP t ng i g i. L p ny cho php ln n 254 UDP socket (s l ng gi i h n b is n b nh v trnh bin d ch c s d ng). V i hn m t socket, cc ng d ng c p cao hn c th duy tr Mul-tiple ng th i k t n i UDP; c nhi u ng d ng c th c s d ng l p ny. M i socket tiu th kho ng19 byte (ki m tra "UDP.h" t p tin tiu th th c t )v tng th i gian x l t ng th UDP. Khng gi ng nh cc giao th c TCP / IP , t t c socket trong TCP / IP Stack chia s m t ho c nhi u hn m t b m truy n. Cch ti p c n ny lm gi m t ng th c yu c u RAM, nhng n c th t o ra m t v n khc, nh t i m t vi socket khng nh n b m truy n v khng bo th i gia s d ng cc

socket. Trong hon c nh ny cc my ch v my a phng khng th lin lac v i

n T t Nghi p Kha 2007-2010

Trang 31

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

nhau . trnh i u ny, ng i dng ph i m b o r ng c b m truy n cho t t c cc socket 4.5.8. Dynamic Host Configuration Protocol (DHCP) L p DHCP c a TCP / IP Stack c th c hi n b i cc t p tin "dhcp.c". Cc ph n u t p tin"dhcp.h" nh ngha cc d ch v c cung c p b i l p ny .DHCP l m t l p ang ho t ng m chng trnh pht sng DHCP yu c u, t ng nh n c v gi i m DHCP ph n ng. Cc tnh nng chnh c a n bao g m: C u hnh a ch IP, a ch gateway v subnet mask. DHCP t ng cho thu th i gian, i m i v qu n l vi c cho thu. Ho t ng hon ton t ng m ng i s d ng khng c n cang thi p. Cc module DHCP c th c hi n nh m t kh i th ng nh t c nhi m v th c

hi n cc ho t ng t ng m khng c ki n th c v cc ng d ng chnh. Cc DHCP th c t h i nh p v ki m sot c th c hi n b i cc qu n l Stack; n x l t t c cc ho t ng c n thi t c a n nh m t ph n c a tiu chu n nhi m v , b ng cch s d ng API DHCP ki m sot cc module c a hnh vi. Ng i dng khng c n bi t v DHCP s d ng n. M t ng d ng ng i dng cng c th ch n g i m t s cc API tr c ti p ki m sot DHCP ho t ng, ch ng h n nh li u DHCP c c u hnh hay khng, v li u DHCP c vnh vi n ng ng ho t ng. Thng th ng, ng d ng c a ng i dng khng c n tr c ti p tng tc v i DHCP . s d ng module DHCP, ng i s d ng ph i s d ng cc tap tin sau: 1. B ghi ch STACK_USE_DHCP trong tiu t p tin "StackTsk.h". 2. Ph c hai t p tindhcp.c " v "udp.c" trong d n. 3. Tng MAX_UDP_SOCKETS ln m t (t nh t m t UDP socket ph i c s n cho DHCP i u ch nh s l ng socket d a trn UDP v DHCP). Khi DHCP c th c hi n, ng d ng ng i dng ph i c g ng truy n thng m ng cho n khi DHCP c c u hnh ng. Thng th ng, n u m t ng d ng ng i dng c ch a cc ng d ng m t ho c nhi u khch hng c yu c u thng tin lin l c trn i n-up ho c thi t l p l i, vi c p d ng ph i ki m tra xem DHCP c

n T t Nghi p Kha 2007-2010

Trang 32

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

c u hnh tr c khi truy n t i d li u b ng cch s d ng cc m-un l p th p hn .i uu ny c th c th c hi n v i ch c nng DHCPIsBound. c i m k thu t chnh th c DHCP (RFC1541) l i h i cc khch hng DHCP ph i lm m i c u hnh IP tr c khi cho thu th i gian. theo di th i gian thu, ng i s d ng ph i ch c ch n r ng TickUpdate () c g i theo yu c u, v chnh xc l th i gian h p l duy tr (xem m ngu n t p tin "websrvr.c"cho m t v d lm vi c). phn gi i th i gian c n thi t l15 pht, c ng ho c tr , c ngha l TickUpdate () c th c g i l m t u tin r t th p. i v i cc module DHCP i u t ng c p nh t c u hnh a ch v subnet mask, ph i c t nh t m t DHCP server trn m ng. l trch nhi m c a ng i s d ng th c hi n m t s phng php cho "xu t b n" cc c u hnh l i cho ng i s d ng ti m nng. G m c nhi u ty ch n t vi c c thng tin n vi c hi n th ttrn m i nt, lu tr thng tin trong m t my ch trung tm DHCP ta ch c n c p nh t k t qu cc gi tr c a MY_IP_BYTE?,MY_GATE_BYTE? v MY_MASK_BYTE? 4.5.9 IP Gleaning for IP Address Configuration Nh l m t thay th DCHP, TCP / IP Stack cng th c hi n m t phng php n gi n, c g i l IP Gleaning, t xa thi t l p a ch IP c a TCP / IP Stack . Phng php ny khng ph i l m t giao th c Internet chu n, v khng c tng ng v i RFC. Gleaning IP ch cho php a ch IP c thi t l p . i v i c u hnh IP hon t t, DCHP ph i c s d ng. Gleaning IP khng c n b t k ph n m m trn module. Thay vo , n s d ng module ICMP ARP. s d ng n, t p tin "icmp.c" ph i c khai bo , v trnh bin d ch xc nhS TACK_USE_IP_GLEANING ghi chu ben trong t p tinh StackTsh.h 4.6 HTTP SERVER HTTP Server km theo ng d ng c th c hi n nh m t kh i th ng nh t t n

t i v i cc vi m ch TCP / IP Stack v ng d ng chnh c a ng i dng. Cc HTTP Server chnh n c th c hi n t i t p tin "HTTP.c", v i m t ng d ng ng i dng

n T t Nghi p Kha 2007-2010

Trang 33

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

th c hi n hai ch c nng. Cc ng d ng m ngu n ny n m trong t p tin "Websrvr.c " nn c s d ng nh l m t m u ng d ng t o ra cc giao di n c n thi t. HTTP Server c cung c p y khng th c hi n t t c ch c nng HTTP, n

l m t my ch t i thi u cho cc m c tiu c a h th ng nhng. Ng i s d ng c th d dng thm m i ch c nng theo yu c u v m c ch s d ng. HTTP server thch h p nhng ch c nng sau: H tr nhi u k t n i HTTP. H tr cc trang web t t i m t trong hai n i b chng trnh ho c b nh EEPROM n i ti p bn ngoi. Bao g m m t chng trnh d a trn PC t o ra MPFS hnh nh t m t th m c nh t nh. H tr cc phng th c HTTP "GET" (cc phng php khc c th d dng thm vo). H tr m t i l n Common Gateway Interface (CGI) g i ch c nng xc nh tr c t bn trong trnh duy t t xa. H tr n i dung trang web nng ng th h Cc my ch bao g m cc ph n chnh sau: MPFS Builder Image. Th vi n MPFS truy c p. MPFS Download th ng (th c hi n b ichnh c a ng d ng) HTTP Server Task. s d ng module DHCP, ng i s d ng ph i s d ng cc tap tin sau: 1. B ghi ch STACK_USE_HTTP_SERVER trong tiu t p tin

"StackTsk.h". 2. t ghi ch ny "StackTsk.h". 3. Ph i c hai t p tin http.c v "mpfs.c" trong d n. MAX_HTTP_CONNECTIONS trong t p tin

n T t Nghi p Kha 2007-2010

Trang 34

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

4. Ty theo ni lu tr

trang wed m c th

ghi ch li u vo

MPFS_USE_PGRM ho c MPFS_USE_EEPROM. N u d EEPROM ngoi th s d ng thm t p tin"Xeeprom.c".

Cc HTTP Server s d ng file "index.htm" nh Trang web m c nh. N u trnh duy t (m t khch hng t xa) truy c p cc HTTP Server b ng a ch IP ho c tn mi n th "index.htm" l trang m c nh ph c v .i u ny i h i r ng t t c cc ng d ng bao g m m t t p tin c tn"Index.htm" ph i c lu trong MPFS. N u c n thi t, tn c a t p tin ny c th thay i m c nh b ng cch s a i nh ngha c a trnh bin d ch HTTP_DEFAULT_FILE_STRING trong t p tin " http.c ". Ch trong cc trang wed c th c ch a cc k t sau: M t ho c hai d u ngo c kp ("v") Tri ho c d u ngo c vung gc (<v>) D u thng (#) Nh ng d u ph n trm (%) Tri ho c bn ph i khung ([,{,] v)) Bi u t ng (|) Cc d u g ch cho ng c (\) D u (^) Cc d u ng (~) HTTP cng duy tr m t danh sch cc lo i t p tin m n h tr . N s d ng thng tin ny t v n cho m t t xa trnh duy t trn lm th no gi i thch m t t p tin c th , d a trn c a t p tin m r ng ba k t . Theo m c nh,Vi m ch HTTP Server h tr ". Txt", ". Htm","Gif". "Cgi"., ". Jpg", "CLA". V ". Wav" files. N u m t ng d ng s d ng cc lo i t p tin m khng c trong ny danh sch, ng i s d ng c th s a i cc b ng "httpFiles", cng v i tng ng"httpContents" trong t p tin "http.c". 4.7 FTP SERVER. FTP Server c nhi m v h p tc v i TCP / IP Stack t o ra cc chnh c a ng i dng. FTP Server c th c hi n t i t p tin "FTP.c". ng d ng

n T t Nghi p Kha 2007-2010

Trang 35

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

FTP server c nh ng tn nng sau: M t k t n i FTP cho chng ta bi t c m t ng i dng dang s d ng ng d ng . T ng tng tc v i t p tin h th ng (MPFS). Upload tap tin c nhn ho c h tr . s d ng module DHCP, ng i s d ng ph i s d ng cc tap tin sau: 1. B ghi ch STACK_USE_FTP_SERVER trong tiu t p tin "StackTsk.h". 2. Ph i c hai t p tinFTP.c " v "mpfs.c" trong d n. Ty theo ni lu tr trang wed m c th b ghi ch MPFS_USE_PGRM ho c MPFS_USE_EEPROM. N u d li u vo EEPROM ngoi th s d ng thm t p tin"Xeeprom.c".

n T t Nghi p Kha 2007-2010

Trang 36

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG V:

GI I THI U LED MA TR N V B NG QUANG BO


Ngy nay khi nhu c u v thng tin qu ng co r t l n, vi c p d ng cc phng ti n k thu t m i vo cc lnh v c trn l r t c n thi t. Khi b n n cc ni cng c ng, b n d dng b t g p nh ng p phch qu ng co i n t ch y theo cc h ng khc nhau v i nhi u hi u ng hnh nh v mu s c r t n t ng. 5.1. Gi i thi u v Led Matrix.

Ma tr n LED bao g m nhi u LED cng n m trong m t v chia thnh nhi u c t v hng, m i giao i m gi a hng v c t c th c 1 LED (ma tr n LED m t mu) hay nhi u LED (2 LED t i m t v tr t o thnh ma tr n LED 3 mu). LED t i m t v tr no sng th ph i c p hi u i n th dng gi a Anode v Cathode. Trn c s c u trc nh v y, ta c th m r ng hng v c t c a ma tr n LED t o thnh cc b ng quang bo. 5.1.1. Phn lo i Led Matrix. Theo kch c 5x7 5x8 8x8 11x9 16x16 5.1.2. Led Matrix 8x8. Led ma tr n mn l Led ma tr n c m c t v n hng. Led ma tr n 88 l led ma tr n g m c 8 c t v 8 hng. Led ma tr n ny c hai lo i: lo i th nh t l cathode chung (common cathode hng cathode, c t anode), lo i th hai l anode chung (common anode hng anode, c t cathode). ti s d ng lo i Led ma tr n anode chung (cathode c t) v d dng tm mua c Led ma tr n lo i ny trn th tr ng linh ki n i n t n c ta, a d ng v kch c v mu s c, c lo i indoor, outdoor. Theo mu s c 1 mu 2 mu 3 mu Trn Vung B ud c Theo hnh d ng i m ch m

n T t Nghi p Kha 2007-2010

Trang 37

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

5.1.3. Hnh d ng th c t v s chn.


16 15 14 13 12 11 10 9

Hnh 2.2 :hnh d ng th c t v s chn c a Led matrix 8x8 5.1.4. S nguyn l.

5.2.

M t s hnh nh v quang bo th c t . 5.2.1. M u m t dng ch (16 x 240 i m nh).

Cc thng s k thu t:

n T t Nghi p Kha 2007-2010

1 2 3 4 5 6 7 8

C4 C2 H2 H3 C1 H5 C3 C6

H8 H7 C7 H1 C5 H6 H4 C8

Trang 38

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

- Kch th c hi n th : chi u cao 122mm, chi u di tu (th ng l b i c a 305mm). - phn gi i (s i m nh): 16 x 40 x (chi u di hi n th /305). - K t n i chu n (My tnh, c ng COM) tu ch n (RJ45, Bn phm). - B ng ny c th hi n th m t dng ch cao 122mm (16 i m nh - nh hnh trn) ho c hai dng ch cao 61mm (8 i m nh) nhng khng d u Ti ng Vi t. - K t n i chu n (My tnh, c ng COM) tu ch n (RJ45). 5.2.2. M u Hai Dng Ch (32 X 240 i m nh).

Cc thng s k thu t: - Kch th c hi n th : chi u cao 244mm, chi u di tu (th ng l b i c a 305mm). - phn gi i (s i m nh): 32 x 40 x (chi u di hi n th /305). - K t n i chu n (My tnh, c ng COM) tu ch n ( RJ45). - B ng ny c th hi n th hai dng ch cao 122mm (16 i m nh nh hnh trn) ho c m t dng ch cao 244mm (32 i m nh - nh hnh d i). - K t n i chu n (My tnh, c ng COM) tu ch n ( RJ45). 5.3. Gi i thi u v b ng quang bo trong n. 5.3.1. Ph n c ng : - Kch th c hi n th : chi u cao 6cm,chi u di 24 cm - phn gi i (s i m nh):8 x 32. - B ng ny c kh nng hi n th m t dng ch cao 6 cm.

n T t Nghi p Kha 2007-2010

Trang 39

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

- Hi n th : + M t mu . + N i dung hi n th c cho ch y theo h ng d ch tri. 5.3.2. Ph n m m : - Dng ngn ng l p trnh CCS l p trnh cho vi x l PIC16F877. - Dng ngn ng l p trnh HTML nhng vo PIC 18LF4680 v xy d ng giao di n i u khi n qua giao di n web.

n T t Nghi p Kha 2007-2010

Trang 40

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG VI:

CC PHNG PHP HI N TH CHO B NG QUANG BO

6.1 PHNG PHP CH T

Hi n th led ma tr n b ng phng php ch t gip cho ng i l p trnh thay i cch th c qut v hi n th m t cch linh ho t v nhanh chng.

2 3 4 5 6 7 8 9 11 1

D0 D1 D2 D3 D4 D5 D6 D7 LE OE

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

19 18 17 16 15 14 13 12 12 9 6 3 13 16 19 22 matrix_3mau 24 21 18 15 1 4 7 10 12 13 14 15 16 17 18 19 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 DM74LS573 OE LE D7 D6 D5 D4 D3 D2 D1 D0 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 DM74LS573 LE OE 11 1 D0 D1 D2 D3 D4 D5 D6 D7 2 3 4 5 6 7 8 9 1 11 9 8 7 6 5 4 3 2 19 18 17 16 15 14 13 12 U7 23 20 17 14 2 5 8 11 hx8 hx7 hx6 hx5 hx4 hx3 hx2 hx1 h d8 h d7 h d6 h d5 h d4 h d3 h d2 h d1 c1 c2 c3 c4 c5 c6 c7 c8

DM74LS573

Hnh 6.1: Giao ti p led ma tr n dng phng php ch t.

n T t Nghi p Kha 2007-2010

Trang 41

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

6.1.1

CH T HNG

Ch t hng l phng php trong m t kho ng th i gian xc nh ch c m t c t c tch c c, d li u c a ra 8 hng r i ch t l i, d li u c hi n th trn mn hnh led ma tr n. Sau d li u k ti p c a ra 8 hng v c ch t l i b i m t IC ch t khc, trong khi d li u tr c v n hi n di n t i ng ra c a IC ch t. Nh v y d li u c a hng no c a ra ng a ch c a hng trong khi cc d li u c a cc hng khc v n hi n di n trn hng m khng b m t i. Vi c th c hi n ch t hng c th hi n lu nh sau:

Hnh 6.2: Qui trnh hi n th ch t hng.

n T t Nghi p Kha 2007-2010

Trang 42

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

6.1.2 CH T C T Ch t c t l phng php trong m t kho ng th i gian xc nh ch c m t hng c tch c c, d li u c a ra 8 c t r i ch t l i, d li u c hi n th trn mn hnh led ma tr n. Sau d li u c a ra 8 c t k ti p v c ch t l i b i m t IC ch t khc, trong khi d li u tr c v n hi n di n t i ng ra c a IC ch t (d li u v n hi n di n t i cc c t). Nh v y d li u c a c t no c a ra ng a ch c a c t trong khi cc d li u c a cc c t khc v n hi n di n trn c t m khng b m t i. Vi c th c hi n ch t c t c th hi n lu nh sau:

Hnh 6.3: Qui trnh hi n th ch t c t. 6.1.2 U, NH C I M C A PHNG PHP DNG IC CH T * u i m: - M r ng s hng, s c t c a b ng quang bo. - D li u c truy n i nhanh. - Chuy n i cch qut hng, c t m t cch linh ho t.

n T t Nghi p Kha 2007-2010

Trang 43

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

* Nh c i m: - T o b ng m kh khn. - Kh khn trong vi c l p trnh xu t d li u ra. 6.2 PHNG PHP HI N TH S 6.2.1 QUT C T 6.2.1.1Gi i thi u chung v phng php qut c t. Phng php qut c t l phng php m trong m t kho ng th i gian xc nh ch cho m t c t c tch c c hi n th trong khi cc c t khc u t t, cc c t c qut (tch c c) tu n t cc kho ng th i gian k ti p nhau c l p l i nhi u D NG THANH GHI D CH

l n v i t c > 24 hnh/1s s cho ta m t hnh nh lin t c c n hi n th ln trn mn hnh led ma tr n. 6.2.1.2 Qu trnh th c hi n qut c t. D li u c a c t th nh t c a ra hng sau tch c c c t th nh t nh v y d li u c a c t th nh t c hi n th trn mn hnh led ma tr n, ti p t c d li u c a c t th hai c a ra hng sau tch c c c t th hai lc ny d li u c a hng th hai c hi n th trn man hnh led ma tr n, c nh v y cho n d li u c a c t cu i cng c a ra hng sau tch c c c t cu i cng. C nh th qu trnh trn c l p i l p l i > 24l n/1s, n y chng ta quan st c m t hnh nh lin t c hi n th trn mn hnh led ma tr n. V d Hi n th ch A ln mn hnh Led ma tr n (hng c tch c c tch c c m c 0). m c 1, c t c

n T t Nghi p Kha 2007-2010

Trang 44

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 6.4: Hi n th ch A trn led ma tr n dng phng php qut c t Qu trnh a d li u ra hng v c t c ti n hnh ng th i v i cc gi tr theo b ng d i y: D li u a vo cc hng H8H7H6H5H4H3H2H1 C t c ch n tch c c (m c 0) D nh t D li u th 2 D li u th 3 D li u th 4 D li u th 5 D li u th 6 D li u th 7 D li u th 8 00100100 00100010 00100100 11111000 00000000 00000000 00000000 C2 C3 C4 C5 C6 C7 C8 li u th 11111000 C1

Nh v y ton b d li u c a ch A c a ra hi n th trn mn hnh Led ma tr n. Qu trnh trn c di n ra r t nhanh > 24l n/s nn chng ta c c m gic n di n ra m t cch ng th i, nh chng ta quan st c trn mn hnh Led ma tr nl m t ch A lin t c. Phng php qut c t thch h p cho cc b ng quang bo s d ng Led ma tr nc s l ng c t t hn s l ng hng, v th i gian sng c a LED khi qut c t l n hn th i gian sng c a LED khi qut hng. Nh v y i n p ngu n cung c p c s d ng trong qut c t nh hn i n p ngu n cung c p s d ng trong qut hng. Trong phng php qut c t vi c a d li u ra hng v t o b ng m l kh d dng cho ng i l p trnh. 6.2.2 QUT HNG

n T t Nghi p Kha 2007-2010

Trang 45

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

6.2.2.1Gi i thi u chung v phng php qut hng. Qut hng l phng php m trong m t kho ng th i gian xc nh ch cho m t hng c tch c c hi n th trong khi cc hng khc u t t, cc hng c qut (tch c c) tu n t cc kho ng th i gian k ti p nhau c l p l i nhi u l n v i t c

> 24hnh /1s s cho ta m t hnh nh lin t c c n hi n th ln trn mn hnh led ma tr n. 6.2.2.1 Qu trnh th c hi n qut hng:

Hnh 6.5: Qui trnh a d li u ra 8 c t cho led ma tr n. Qut hng s d ng thanh ghi d ch l tng i ph c t p cho ng i l p trnh trong vi c a d li u ra c t. D li u l n l t c a vo chn Datain c a thanh ghi d ch sau tc ng xung clock d li u c d ch i. Vi c th c hi n qut hng c th c hi n theo lu gi i thu t hnh 4.5.

D li u c a hng th nh t c a ra c t sau tch c c hng th nh t, nh v y d li u c a hng th nh t c hi n th trn mn hnh led ma tr n, ti p t c d li u c a hng th hai c a ra c t sau tch c c hng th hai lc ny d li u

n T t Nghi p Kha 2007-2010

Trang 46

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

c a hng th hai c hi n th trn mn hnh led ma tr n, c nh v y cho n d li u c a hng cu i cng c a ra c t sau tch c c hng cu i cng. C nh th qu trnh trn c l p i l p l i > 24l n/1s, n y chng ta quan st c m t hnh nh lin t c hi n th trn mn hnh led ma tr n. V d Hi n th ch A ln mn hnh Led ma tr n (hng c tch c c tch c c m c 0). m c 1, c t c

Hnh 6.6: Hi n th ch A trn led ma tr n dng phng php qut hng Qu trnh a d li u ra hng v c t c ti n hnh ng th i v i cc gi tr theo b ng d i y:

D li u th 5 D li u th 6 D li u th 7 D li u th 8 D li u th nh t D li u th 2 D li u th 3 D li u th 4

11101110 D li u a vo cc c t 11100000 C8C7C6C5C4C3C2C1 11101110 11101110 11111111 11111011 11110101 11101110

H5 Hng c ch n tch H6 c c H7 (m c 1) H8 H1 H2 H3 H4

n T t Nghi p Kha 2007-2010

Trang 47

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Nh v y ton b d li u c a ch A c a ra hi n th trn mn hnh Led ma tr n. Qu trnh trn c di n ra r t nhanh > 24l n/s nn chng ta c c m gic n di n ra m t cch ng th i, nh m chng ta quan st c trn mn hnh Led ma tr n l m t ch A lin t c. Phng php qut hng thch h p cho cc b ng quang bo s d ng Led ma tr n c s l ng hng nh hn s l ng c t, v th i gian sng c a Led khi qut hng lu hn th i gian sng c a Led khi qut c t. Nh v y i n p ngu n cung c p c s d ng trong qut hng nh hn i n p ngu n cung c p s d ng trong qut c t. Tuy nhin trong phng php qut hng th vi c a d li u ra c t v t o b ng m l kh khn hn trong phng php qut c t. 6.2.3 U, NH C I M C A PHNG PHP HI N TH D NG THANH GHI D CH * u i m: - Ti t ki m ng truy n, hi u qu kinh t . - Ti t ki m chn PORT. - Truy n d li u i xa hn. - M r ng b ng ma tr n ln m t cch d dng. - L p trnh d dng trong phng php qut c t. * Nh c i m: - T n th i gian th c hi n vi c truy n d li u n cc c t. - Chuy n i khng linh ho t b ng s d ng phng php ch t. - L p trnh kh khn hn khi s d ng phng php qut hng. 6.3 M CH QUANG BO S D NG TRONG N S

Do m ch quang bo trong n c thi t k v i phn gi i 8x32 (8 hng, 32 c t) nn ch n phng php qut c t m b o cho hnh nh hi n th c lin t c v n gi n cho vi c l p trnh.

n T t Nghi p Kha 2007-2010

Trang 48

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

n T t Nghi p Kha 2007-2010

Trang 49

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

CHNG VII

KH O ST LINH KI N
7.1 Vi i u khi n PIC16F877A

7.1.1 Hnh d ng v s chn.

Hnh 7.1: Vi i u khi n PIC16F877A/PIC16F874A v cc d ng s chn. 7.1.2 M t vi thng s v Pic 16f877a. y l vi i u khi n thu c h PIC16Fxxx v i t p l nh g m 35 l nh c di 14 bit. M i l nh u c th c thi trong m t chu k xung clock. T c ho t ng t i a cho php l 20 MHz v i m t chu k l nh l 200ns. B nh chng trnh 8Kx14 bit, b nh d li u 368 byte RAM v b nh d li u EEPROM v i dung l ng 256 byte. S PORT I/O l 5 v i 33 pin I/O. Cc c tnh ngo i vi bao g m cc kh i ch c nng sau: - Timer0: b m 8 bit v i b chia t n s 8 bit. - Timer1: b m 16 bit v i b chia t n s , c th th c hi n ch c nng m d a vo xung clock ngo i vi ngay khi vi i u khi n ho t ng ch sleep. - Timer2: b m 8 bit v i b chia t n s , b postcaler. - Hai b Capture/so snh/i u ch rng xung.

n T t Nghi p Kha 2007-2010

Trang 50

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

- Cc chu n giao ti p n i ti p SSP (Synchronous Serial Port), SPI v I2C. - Chu n giao ti p n i ti p USART v i 9 bit a ch . - C ng giao ti p song song PSP (Parallel Slave Port) v i cc chn i u khi n RD, WR, CS Cc c tnh Analog: - 8 knh chuy n i ADC 10 bit. - Hai b so snh. Bn c nh l m t vi c tnh khc c a vi i u khi n nh: - B nh flash v i kh nng ghi xa c 100.000 l n. - B nh EEPROM v i kh nng ghi xa c 1.000.000 l n. - D li u b nh EEPROM c th lu tr trn 40 nm. - Kh nng t n p chng trnh v i s i u khi n c a ph n m m. - N p c chng trnh ngay trn m ch i n ICSP (In Circuit Serial Programming) thng qua 2 chn. - Watchdog Timer v i b dao ng trong. - Ch c nng b o m t m chng trnh. - Ch Sleep. - C th ho t ng v i nhi u d ng Oscillator khc nhau. 7.1.3. T CH C B NH bn ngoi.

C u trc b nh c a vi i u khi n PIC16F877A bao g m b nh chng trnh (Program memory) v b nh d li u (Data Memory). * B nh chng trnh B nh chng trnh c a vi i u khi n PIC16F877A l b nh flash, dung l ng b nh 8K word (1 word = 14 bit) v c phn thnh nhi u trang (t page0 n page 3) . Nh v y b nh chng trnh c kh nng ch a c 8*1024 = 8192 l nh (v m t l nh sau khi m ha s c dung l ng 1 word (14 bit).

n T t Nghi p Kha 2007-2010

Trang 51

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Khi vi i u khi n c reset, b m chng trnh s ch n a ch 0000h (Reset vector). Khi c ng t x y ra, b m chng trnh s ch n a ch 0004h (Interrupt vector). B nh chng trnh khng bao g m b nh stack v khng c a ch ha b i b m chng trnh. * B nh d li u B nh d li u c a PIC l b nh EEPROM c chia ra lm nhi u bank. i v i PIC16F877A b nh d li u c chia ra lm 4 bank. M i bank c dung l ng 128 byte, bao g m cc thanh ghi c ch c nng c bi t SFG (Special Function Register) n m cc vng a ch th p v cc thanh ghi m c ch chung GPR vng a ch cn l i trong bank. Cc thanh ghi t t c

(General Purpose Register) n m

SFR th ng xuyn c s d ng (v d nh thanh ghi STATUS) s c t

cc bank c a b nh d li u gip thu n ti n trong qu trnh truy xu t v lm gi m b t l nh c a chng trnh. S c th c a b nh d li u PIC16F877A nh sau:

n T t Nghi p Kha 2007-2010

Trang 52

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 7.2: S b nh d li u c a PIC16F877A

n T t Nghi p Kha 2007-2010

Trang 53

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Thanh ghi ch c nng c bi t SFR: y l cc thanh ghi c s d ng b i CPU ho c c dng thi t l p v i u khi n cc kh i ch c nng c tch h p bn trong vi i u khi n. C th phn thanh ghi SFR lm hai l ai: thanh ghi SFR lin quan n cc ch c nng bn trong (CPU) v thanh ghi SRF dng thi t l p v i u khi n cc kh i ch c nng bn ngoi (v d nh ADC, PWM ). Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi ch a k t qu th c hi n php ton c a kh i ALU, tr ng thi reset v cc bit ch n bank c n truy xu t trong b nh d li u.

Thanh ghi OPTION_REG (81h, 181h): thanh ghi ny cho php c v ghi, cho php i u khi n ch c nng pull-up c a cc chn trong PORTB, xc l p cc tham s v xung tc ng, c nh tc ng c a ng t ngo i vi v b m Timer0.

Thanh ghi INTCON (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho php c v ghi, ch a cc bit i u khi n v cc bit c hi u khi timer0 b trn, ng t ngo i vi RB0/INT v ng t interrputon- change t i cc chn c a PORTB.

Thanh ghi PIE1 (8Ch): ch a cc bit i u khi n chi ti t cc ng t c a cc kh i ch c nng ngo i vi.

n T t Nghi p Kha 2007-2010

Trang 54

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Thanh ghi PIR1 (0Ch) ch a c ng t c a cc kh i ch c nng ngo i vi, cc ng t ny c cho php b i cc bit i u khi n ch a trong thanh ghi PIE1.

Thanh ghi PIE2 (8Dh): ch a cc bit i u khi n cc ng t c a cc kh i ch c nng CCP2, SSP bus, ng t c a b so snh v ng t ghi vo b nh EEPROM.

Thanh ghi PIR2 (0Dh): ch a cc c ng t c a cc kh i ch c nng ngo i vi, cc ng t ny c cho php b i cc bit i u khi n ch a trong thanh ghi PIE2.

Thanh ghi PCON (8Eh): ch a cc c hi u cho bi t tr ng thi cc ch reset c a vi i u khi n.

Thanh ghi m c ch chung GPR: Cc thanh ghi ny c th c truy xu t tr c ti p ho c gin ti p thng qua thanh ghi FSG (File Select Register). y l cc thanh ghi d li u thng th ng, ng i s d ng c th ty theo m c ch chng trnh m c th dng cc thanh ghi ny ch a cc bi n s , h ng s , k t qu ho c cc tham s ph c v cho chng trnh. * Stack Stack khng n m trong b nh chng trnh hay b nh d li u m l m t vng nh c bi t khng cho php c hay ghi. Khi l nh CALL c th c hi n hay khi m t ng t x y ra lm chng trnh b r nhnh, gi tr c a b m chng trnh PC t ng c vi i u khi n c t vo trong stack. Khi m t trong cc l nh RETURN, RETLW hat RETFIE c th c thi, gi tr

n T t Nghi p Kha 2007-2010

Trang 55

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

PC s t ng c l y ra t trong stack, vi i u khi n s th c hi n ti p chng trnh theo ng qui trnh nh tr c. B nh Stack trong vi i u khi n PIC h 16F87xA c kh nng ch a c 8 a ch v ho t ng theo c ch xoay vng. Ngha l gi tr c t vo b nh Stack l n th 9 s ghi ln gi tr c t vo Stack l n u tin v gi tr c t vo b nh Stack l n th 10 s ghi ln gi tr c t vo Stack l n th 2. C n ch l khng c c hi u no cho bi t tr ng thi stack, do ta khng bi t c khi no stack trn. Bn c nh t p l nh c a vi i u khi n dng PIC cng khng c l nh POP hay PUSH, cc thao tc v i b nh stack s hon ton c i u khi n b i CPU. 7.1.4. CC C NG XU T NH P C A PIC16F877A C ng xu t nh p (I/O port) chnh l phng ti n m vi i u khi n dng tng tc v i th gi i bn ngoi. Bn c nh , do vi i u khi n c tch h p s n bn trong cc c tnh giao ti p ngo i vi nn bn c nh ch c nng l c ng xu t nh p thng th ng, m t s chn xu t nh p cn c thm cc ch c nng khc th hi n s tc ng c a cc c tnh ngo i vi nu trn i v i th gi i bn ngoi. Vi i u khi n PIC16F877A c 5 c ng xu t nh p, bao g m PORTA, PORTB, PORTC, PORTD v PORTE. *PORT A: PORTA (RPA) bao g m 6 I/O pin. y l cc chn hai chi u (bidirectional pin), ngha l c th xu t v nh p c. Ch c nng I/O ny c i u khi n b i thanh ghi TRISA ( a ch 85h). Mu n xc l p ch c nng c a m t chn trong PORTA l input, ta set bit i u khi n tng ng v i chn trong thanh ghi TRISA v ng c l i, mu n xc l p ch c nng c a m t chn trong PORTA l output, ta clear bit i u khi n tng ng v i chn trong thanh ghi TRISA. Thao tc ny hon ton tng t i v i cc PORT v cc thanh ghi i u khi n tng ng TRIS ( i v i PORTA l TRISA, i v i PORTB l TRISB, i v i PORTC l TRISC, i v i PORTD l TRISD v i v i PORTE l TRISE). Bn c nh PORTA cn l

n T t Nghi p Kha 2007-2010

Trang 56

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

ng ra c a b ADC, b so snh, ng vo analog ng vo xung clock c a Timer0 v ng vo c a b giao ti p MSSP (Master Synchronous Serial Port). Cc thanh ghi SFR lin quan n PORTA bao g m: - PORTA ( a ch 05h) : ch a gi tr cc pin trong PORTA. - TRISA ( a ch 85h) : i u khi n xu t nh p. - CMCON ( a ch 9Ch) : thanh ghi i u khi n b so snh. - CVRCON ( a ch 9Dh) : thanh ghi i u khi n b so snh i n p. - ADCON1 ( a ch 9Fh) : thanh ghi i u khi n b ADC. * PORT B: PORTB (RPB) g m 8 pin I/O. Thanh ghi i u khi n xu t nh p tng ng l TRISB. Bn c nh m t s chn c a PORTB cn c s d ng trong qu trnh n p chng trnh cho vi i u khi n v i cc ch n p khc nhau. PORTB cn lin quan n ng t ngo i vi v b Timer0. PORTB cn c tch h p ch c nng i n tr ko ln c i u khi n b i chng trnh. Cc thanh ghi SFR lin quan n PORTB bao g m: - PORTB ( a ch 06h,106h) : ch a gi tr cc pin trong PORTB - TRISB ( a ch 86h,186h) : i u khi n xu t nh p - OPTION_REG ( a ch 81h,181h) : i u khi n ng t ngo i vi v b Timer0. * PORT C: PORTC (RPC) g m 8 pin I/O. Thanh ghi i u khi n xu t nh p tng ng l TRISC. Bn c nh PORTC cn ch a cc chn ch c nng c a b so snh, b Timer1, b PWM v cc chu n giao ti p n i ti p I2C, SPI, SSP, USART. Cc thanh ghi i u khi n lin quan n PORTC: - PORTC ( a ch 07h) : ch a gi tr cc pin trong PORTC - TRISC ( a ch 87h) : i u khi n xu t nh p. * PORT D: PORTD (RPD) g m 8 chn I/O, thanh ghi i u khi n xu t nh p tng ng l TRISD. PORTD cn l c ng xu t d li u c a chu n giao ti p PSP (Parallel Slave Port).

n T t Nghi p Kha 2007-2010

Trang 57

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Cc thanh ghi lin quan n PORTD bao g m: - Thanh ghi PORTD : ch a gi tr cc pin trong PORTD. - Thanh ghi TRISD : i u khi n xu t nh p. * PORT E: PORTE (RPE) g m 3 chn I/O. Thanh ghi i u khi n xu t nh p tng ng l TRISE. Cc chn c a PORTE c ng vo analog. Bn c nh PORTE cn l cc chn i u khi n c a chu n giao ti p PSP. Cc thanh ghi lin quan n PORTE bao g m: - PORTE : ch a gi tr cc chn trong PORTE. - TRISE : i u khi n xu t nh p v xc l p cc thng s cho chu n giao ti p PSP. - ADCON1 : thanh ghi i u khi n kh i ADC. 7.1.5 NG T PIC16F877A c n 15 ngu n t o ra ho t ng ng t c i u khi n b i thanh ghi INTCON (bit GIE). Bn c nh m i ng t cn c m t bit i u khi n v c ng t ring. Cc c ng t v n c set bnh th ng khi th a mn i u ki n ng t x y ra b t ch p tr ng thi c a bit GIE, tuy nhin ho t ng ng t v n ph thuc vo bit GIE v cc bit i u khi n khc. Bit i u khi n ng t RB0/INT v TMR0 n m trong thanh ghi INTCON, thanh ghi ny cn ch a bit cho php cc ng t ngo i vi PEIE. Bit i u khi n cc ng t n m trong thanh ghi PIE1 v PIE2. C ng t c a cc ng t n m trong thanh ghi PIR1 v PIR2. Trong m t th i i m ch c m t chng trnh ng t c th c thi, chng trnh ng t c k t thc b ng l nh RETFIE. Khi chng trnh ng t c th c thi, bit GIE t ng c xa, a ch l nh ti p theo c a chng trnh chnh c c t vo trong b nh Stack v b m chng trnh s ch n a ch 0004h. L nh RETFIE c dng thot kh i chng trnh ng t v quay tr v chng trnh chnh, ng th i bit GIE cng s c set cho

n T t Nghi p Kha 2007-2010

Trang 58

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

php cc ng t ho t ng tr l i. Cc c hi u c dng ki m tra ng t no ang x y ra v ph i c xa b ng chng trnh tr c khi cho php ng t ti p t c ho t ng tr l i ta c th pht hi n c th i i m ti p theo m ng t x y ra. i v i cc ng t ngo i vi nh ng t t chn INT hay ng t t s thay i tr ng thi cc pin c a PORTB (PORTB Interrupt on change), vi c xc nh ng t no x y ra c n 3 ho c 4 chu k l nh ty thu c vo th i i m x y ra ng t. C n ch l trong qu trnh th c thi ng t, ch c gi tr c a b m chng trnh c c t vo trong Stack, trong khi m t s thanh ghi quan tr ng s khng c c t v c th b thay i gi tr trong qu trnh th c thi chng trnh ng t. i u ny nn c x l b ng chng trnh trnh hi n t ng trn x y ra. 7.2 Vi i u khi n 18F4680. 7.2.1 S l c v Vi i u khi n PIC 18F4680: 48 K Flash ROM. 3328 Bytes RAM. 1024 Bytes EEPROM. 5 ports (A, B, C, D, E) vo ra v i tn hi u i u khi n c l p. 2 b nh th i 8 bits (Timer 0 v Timer 2). 2 b nh th i 16 bits (Timer 1 v Timer 3) c th ho t ng trong ch ti t ki m nng l ng (SLEEP MODE) v i ngu n xung Clock ngoi. 2 b CCP( Capture / Compare/ PWM). 1 b bi n i AD 10 bits, 10 ng vo. 2 b so snh tng t (Compartor). 1 b nh th i gim st (WatchDog Timer). M t c ng song song 16 bits v i cc tn hi u i u khi n. M t c ng n i ti p. 15 ngu n ng t.

n T t Nghi p Kha 2007-2010

Trang 59

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

C ch ti t ki m nng l ng. N p chng trnh b ng c ng n i ti p ICSP. 35 t p l nh c di 16 bits. T n s ho t ng t i a 40MHz 7.2.2 Hnh D ng V S Chn.

Hnh 7.3 Pic 18F4680 7.2.3. S Kh i C a Pic18F4680.

n T t Nghi p Kha 2007-2010

Trang 60

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 7.10: s kh i PIC 18F4680 7.2.4. M t s i m c bi t c a CPU: 7.2.6.1. Dao ng:

Pic18F4680 c kh nng s d ng m t trong 4 lo i oscillator, l: - LP: (low power crystal). - XT: th ch anh bnh th ng - HS: (high-speed crystal).

n T t Nghi p Kha 2007-2010

Trang 61

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

- RC: (resistor/capacitor) Trong cc ch LP,XT v HS chng ta s d ng th ch anh dao ng n i vo cc chn OSC1 v OSC2 t o dao ng. Vi c l a ch n t trong dao ng th ch anh d a vo b ng sau:

Lu : T c gi tr l n s tng tnh n nh c a dao ng nhng cng lm tng th i gian kh i ng.

Ch

dao ng RC c s

d ng nh m t gi i php ti t ki m trong cc ng d ng khng c n s chnh xc v th i gian.

Cch tnh chu k my: V d ta s d ng th ch anh 10Mhz. Khi : T n s dao ng c a th ch anh l Fosc = 10Mhz => Chu k dao ng c a th ch 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

n T t Nghi p Kha 2007-2010

Trang 62

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

7.2.6.2.

Interrupts:

PIC18F4585 c nhi u ngu n ng t khc nhau. y l m t s ng t tiu bi u: Ng t ngoi x y ra trn chn INT. Ng t do Timer0. Ng t do Timer1. Ng t do Timer2. Ng t do Timer3. Ng t do thay i tr ng thi trn cc chn PortB. Ng t so snh i n th . Ng t do Port song song. Ng t USART. Ng t nh n d li u. Ng t truy n d li u . Ng t chuy n i ADC. Ng t mn hnh LCD. Ng t hon t t ghi EEPROM. Ng t module CCP. Ng t Module SSP.

Cc thanh ghi ch c nng ng t: INTCON,PIE1,PIR1, PIE2,PIR2 (cc thanh ghi ny s c nghin c u cc ph n sau).

n T t Nghi p Kha 2007-2010

Trang 63

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

7.2.5. T Ch c B Nh C u trc b nh c a vi i u khi n PIC18F4680 bao g m b nh chng trnh (Program Memory) v b nh d li u (Data Memory). * B nh chng trnh B nh chng trnh c a vi i u khi n PIC18F4585 l b nh flash, dung l ng b nh 48K byte v c phn thnh nhi u trang (t page0 n page 3) . Nh v y b nh chng trnh c kh nng ch a c 48*1024 = 49154 l nh (v m t l nh sau khi m ha s c dung l ng 1 word (14 bit). Khi vi i u khi n c reset, b m chng trnh s ch n a ch 0000h (Reset vector). Khic ng t x y ra, b m chng trnh s ch n a ch 0004h (Interrupt vector). B nh chng trnh khng bao g m b nh stack v khng c a ch ha b i b m chng trnh.

n T t Nghi p Kha 2007-2010

Trang 64

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

* B nh d li u B nh d li u c a PIC l b nh EEPROM c chia ra lm nhi u bank. i v i PIC18F4680 b nh d li u c chia ra lm16 bank. M i bank c dung l ng 256 byte, bao g m cc thanh ghi c ch c nng c bi t SFR (Special Function Register) n m cc vng a ch th p v cc thanh ghi m c ch chung GPR vng a ch cn l i trong bank. Cc thanh ghi t t c

(General Purpose Register) n m

SFR th ng xuyn c s d ng (v d nh thanh ghi STATUS) s c t

cc bank c a b nh d li u gip thu n ti n trong qu trnh truy xu t v lm gi m b t l nh c a chng trnh. S c th c a b nh d li u PIC18F4585 nh sau:

n T t Nghi p Kha 2007-2010

Trang 65

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

** THANH GHI CH C NNG C BI T SFR: y l cc thanh ghi c s d ng b i CPU ho c c dng thi t l p v i u khi n cc kh i ch c nng c tch h p bn trong vi i u khi n. C th phn thanh ghi SFR lm hai l ai: thanh ghi SFR lin quan n cc ch c nng bn trong (CPU) v thanh ghi SRF dng thi t l p v i u khi n cc kh i ch c nng bn ngoi (v d nh ADC, PWM ). Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi ch a k t qu th c hi n php ton c a kh i ALU, tr ng thi reset v cc bit ch n bank c n truy xu t trong b nh d li u.

n T t Nghi p Kha 2007-2010

Trang 66

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Thanh ghi OPTION_REG (81h, 181h): thanh ghi ny cho php c v ghi, cho php i u khi n ch c nng pull-up c a cc chn trong PORTB, xc l p cc tham s v xung tc ng, c nh tc ng c a ng t ngo i vi v b m Timer0.

Thanh ghi INTCON (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho php c v ghi, ch a cc bit i u khi n v cc bit c hi u khi timer0 b trn, ng t ngo i vi RB0/INT v ng t interrputon- change t i cc chn c a PORTB.

Thanh ghi PIE1 (8Ch): ch a cc bit i u khi n chi ti t cc ng t c a cc kh i ch c nng ngo i vi.

Thanh ghi PIR1 (0Ch) ch a c ng t c a cc kh i ch c nng ngo i vi, cc ng t ny c cho php b i cc bit i u khi n ch a trong thanh ghi PIE1.

Thanh ghi PIE2 (8Dh): ch a cc bit i u khi n cc ng t c a cc kh i ch c nng CCP2, SSP bus, ng t c a b so snh v ng t ghi vo b nh EEPROM.

Thanh ghi PIR2 (0Dh): ch a cc c ng t c a cc kh i ch c nng ngo i vi, cc ng t ny c cho php b i cc bit i u khi n ch a trong thanh ghi PIE2.

n T t Nghi p Kha 2007-2010

Trang 67

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Thanh ghi PCON (8Eh): ch a cc c hi u cho bi t tr ng thi cc ch reset c a vi i u khi n.

** THANH GHI M C CH CHUNG GPR: Cc thanh ghi ny c th c truy xu t tr c ti p ho c gin ti p thng qua thanh ghi FSG (File Select Register). y l cc thanh ghi d li u thng th ng, ng i s d ng c th ty theo m c ch chng trnh m c th dng cc thanh ghi ny ch a cc bi n s , h ng s , k t qu ho c cc tham s ph c v cho chng trnh. * Stack Stack khng n m trong b nh chng trnh hay b nh d li u m l m t vng nh c bi t khng cho php c hay ghi. Khi l nh CALL c th c hi n hay khi m t ng t x y ra lm chng trnh b r nhnh, gi tr c a b m chng trnh PC t ng c vi i u khi n c t vo trong stack. Khi m t trong cc l nh RETURN, RETLW hat RETFIE c th c thi, gi tr PC s t ng c l y ra t trong stack, vi i u khi n s th c hi n ti p chng trnh theo ng qui trnh nh tr c. B nh Stack trong vi i u khi n PIC h 18F4680 c kh nng ch a c 8 a ch v ho t ng theo c ch xoay vng. Ngha l gi tr c t vo b nh Stack l n th 9 s ghi ln gi tr c t vo Stack l n u tin v gi tr c t vo b nh Stack l n th 10 s ghi ln gi tr c t vo Stack l n th 2. C n ch l khng c c hi u no cho bi t tr ng thi stack, do ta khng bi t c khi no stack trn. Bn c nh t p l nh c a vi i u khi n dng PIC cng khng c l nh POP hay PUSH, cc thao tc v i b nh stack s hon ton c i u khi n b i CPU.

n T t Nghi p Kha 2007-2010

Trang 68

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

7.2.6. Cc C ng Xu t Nh p C a Pic18F4680 C ng xu t nh p (I/O port) chnh l phng ti n m vi i u khi n dng tng tc v i th gi i bn ngoi. Bn c nh , do vi i u khi n c tch h p s n bn trong cc c tnh giao ti p ngo i vi nn bn c nh ch c nng l c ng xu t nh p thng th ng, m t s chn xu t nh p cn c thm cc ch c nng khc th hi n s tc ng c a cc c tnh ngo i vi nu trn i v i th gi i bn ngoi. Vi i u khi n PIC18F4585 c 5 c ng xu t nh p, bao g m PORTA, PORTB, PORTC, PORTD v PORTE. 7.2.6.1. PORT A:

PORTA (RPA) bao g m 8 I/O pin. y l cc chn hai chi u (bidirectional pin), ngha l c th xu t v nh p c. Ch c nng I/O ny c i u khi n b i thanh ghi TRISA ( a ch 85h). Mu n xc l p ch c nng c a m t chn trong PORTA l input, ta set bit i u khi n tng ng v i chn trong thanh ghi TRISA v ng c l i, mu n xc l p ch c nng c a m t chn trong PORTA l output, ta clear bit i u khi n tng ng v i chn trong thanh ghi TRISA. Thao tc ny hon ton tng t i v i cc PORT v cc thanh ghi i u khi n tng ng TRIS ( i v i PORTA l TRISA, i v i PORTB l TRISB, i v i PORTC l TRISC, i v i PORTD l TRISD v i v i PORTE l TRISE). Bn c nh PORTA cn l ng ra c a b ADC, b so snh, ng vo analog ng vo xung clock c a Timer0 v ng vo c a b giao ti p MSSP (Master Synchronous Serial Port). Cc thanh ghi SFR lin quan n PORTA bao g m: - PORTA ( a ch 05h) : ch a gi tr cc pin trong PORTA. - TRISA ( a ch 85h) : i u khi n xu t nh p. - CMCON ( a ch 9Ch) : thanh ghi i u khi n b so snh. - CVRCON ( a ch 9Dh) : thanh ghi i u khi n b so snh i n p. - ADCON1 ( a ch 9Fh) : thanh ghi i u khi n b ADC.

n T t Nghi p Kha 2007-2010

Trang 69

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

7.2.6.2.

PORT B:

PORTB (RPB) g m 8 pin I/O. Thanh ghi i u khi n xu t nh p tng ng l TRISB. Bn c nh m t s chn c a PORTB cn c s d ng trong qu trnh n p chng trnh cho vi i u khi n v i cc ch n p khc nhau. PORTB cn lin quan n ng t ngo i vi v b Timer0. PORTB cn c tch h p ch c nng i n tr ko ln c i u khi n b i chng trnh. Cc thanh ghi SFR lin quan n PORTB bao g m: - PORTB ( a ch 06h,106h) : ch a gi tr cc pin trong PORTB - TRISB ( a ch 86h,186h) : i u khi n xu t nh p - OPTION_REG ( a ch 81h,181h) : i u khi n ng t ngo i vi v b Timer0. 7.2.6.3. PORT C:

PORTC (RPC) g m 8 pin I/O. Thanh ghi i u khi n xu t nh p tng ng l TRISC. Bn c nh PORTC cn ch a cc chn ch c nng c a b so snh, b Timer1, b PWM v cc chu n giao ti p n i ti p I2C, SPI, SSP, USART. Cc thanh ghi i u khi n lin quan n PORTC: - PORTC ( a ch 07h) : ch a gi tr cc pin trong PORTC - TRISC ( a ch 87h) : i u khi n xu t nh p. 7.2.6.4. PORT D:

PORTD (RPD) g m 8 chn I/O, thanh ghi i u khi n xu t nh p tng ng l TRISD. PORTD cn l c ng xu t d li u c a chu n giao ti p PSP (Parallel Slave Port). Cc thanh ghi lin quan n PORTD bao g m: - Thanh ghi PORTD : ch a gi tr cc pin trong PORTD. - Thanh ghi TRISD : i u khi n xu t nh p. 7.2.6.5. PORT E:

n T t Nghi p Kha 2007-2010

Trang 70

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

PORTE (RPE) g m 4 chn I/O. Thanh ghi i u khi n xu t nh p tng ng l TRISE. Cc chn c a PORTE c ng vo analog. Bn c nh PORTE cn l cc chn i u khi n c a chu n giao ti p PSP. Cc thanh ghi lin quan n PORTE bao g m: - PORTE : ch a gi tr cc chn trong PORTE. - TRISE : i u khi n xu t nh p v xc l p cc thng s cho chu n giao ti p PSP. - ADCON1 : thanh ghi i u khi n kh i ADC 7.2.7 Giao Ti p N i Ti p USART (Universal Synchronous Asynchronous Receiver Transmitter) l m t trong hai chu n giao ti p n i ti p.USART cn c g i l giao di n giao ti p n i ti p SCI (Serial Communication Interface). C th s d ng giao di n ny cho cc giao ti p v i cc thi t b ngo i vi, v i cc vi i u khi n khc hay v i my tnh. Cc d ng c a giao di n USART ngo i vi bao g m: - B t ng b (Asynchronous). - ng b _ Master mode. - ng b _ Slave mode. PIC16F4680 c tch h p s n b t o t c baud BRG (Baud Rate Genetator) 8 bit ho c 16bit dng cho giao di n USART. BRG th c ch t l m t b m c th c s d ng cho c hai d ng ng b v b t ng b v c i u khi n b i thanh ghi PSBRG. TXSTA<2>). d ng b t ng b , BRG cn c i u khi n b i bit BRGH ( d ng ng b tc ng c a bit BRGH c b qua. T c baud do

BRG t o ra c tnh theo cng th c sau:

n T t Nghi p Kha 2007-2010

Trang 71

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Trong X l gi tr c a thanh ghi RSBRG ( X l s nguyn v 0<X<255). Cc thanh ghi lin quan n BRG bao g m: - TXSTA ( a ch 98h): ch n ch ng b hay b t ng b ( bit SYNC) v ch n m c t c baud (bit BRGH). - RCSTA ( a ch 18h): cho php ho t ng c ng n i ti p (bit SPEN). - RSBRG ( a ch 99h): quy t nh t c baud. * USART b t ng b : ch truy n ny USART ho t ng theo chu n NRZ

(None-Return-to-Zero), ngha l cc bit truy n i s bao g m 1 bit Start, 8 hay 9 bit d li u (thng th ng l 8 bit) v 1 bit Stop. Bit LSB s c truy n i tr c. Cc kh i truy n v nh n data c l p v i nhau s dng chung t n s tng ng v i t c baud cho qu trnh d ch d li u (t c baud g p 16 hay 64 l n t c d ch d li u ty theo gi tr c a bit BRGH), v m b o tnh hi u qu c a d li u th hai kh i truy n v nh n ph i dng chung m t nh d ng d li u. Cc thanh ghi lin quan n qu trnh truy n d li u b ng giao di n USART b t ng b : - Thanh ghi INTCON ( a ch 0Bh, 8Bh, 10Bh, 18Bh): cho php t t c cc ng t. - Thanh ghi PIR1 ( a ch 0Ch): ch a c hi u TXIF. - Thanh ghi PIE1 ( a ch 8Ch): ch a bit cho php ng t truy n TXIE. - Thanh ghi RCSTA ( a ch 18h): ch a bit cho php c ng truy n d li u (hai pin RC6/TX/CK v RC7/RX/DT). - Thanh ghi TXREG ( a ch 19h): thanh ghi ch a d li u c n truy n. - Thanh ghi TXSTA ( a ch 98h): xc l p cc thng s cho giao di n. - Thanh ghi SPBRG ( a ch 99h): quy t nh t c baud. * USART ng b : Giao di n USART ng b c kch ho t b ng cch set bit SYNC. C ng giao ti p n i ti p v n l hai chn RC7/RX/DT, RC6/TX/CK v c cho php b ng cch set bit SPEN. USART cho php hai ch truy n nh n d li u l Master mode v Slave mode. Master mode c kch ho t b ng cch set bit CSRC (TXSTA<7>), Slave mode c kch ho t b ng cch clear bit CSRC. i m khc bi t duy nh t gi a hai ch ny l Master mode s l y xung clock ng b t b

n T t Nghi p Kha 2007-2010

Trang 72

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

tao xung baud BRG cn Slave mode l y xung clock ng b t bn ngoi qua chn RC6/TX/CK. i u ny cho php Slave mode ho t ng ngay c khi vi i u khi n ang ch sleep.

Cc thanh ghi lin quan n qu trnh truy n d li u b ng giao di n USART ng b Master mode: - Thanh ghi INTCON ( a ch 0Bh, 8Bh, 10Bh, 18Bh): cho php t t c cc ng t. - Thanh ghi PIR1 ( a ch 0Ch): ch a c hi u TXIF. - Thanh ghi PIE1 ( a ch 8Ch): ch a bit cho php ng t truy n TXIE. - Thanh ghi RCSTA ( a ch 18h): ch a bit cho php c ng truy n d li u (hai pin RC6/TX/CK v RC7/RX/DT). - Thanh ghi TXREG ( a ch 19h): thanh ghi ch a d li u c n truy n. - Thanh ghi TXSTA ( a ch 98h): xc l p cc thng s cho giao di n. - Thanh ghi SPBRG ( a ch 99h): quy t nh t c baud. 7.3 IC TPIC6B595 TPIC6B595 l thanh ghi d ch. Dng gi i m c t, hng led ma tr n, c tch h p b i IC 74HC595 v i IC m dng ULN2803.

n T t Nghi p Kha 2007-2010

Trang 73

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 2.10 S chn TPIC 6B595 Ch c nng cc chn c a IC nh sau VCC, GND: hai chn ny dng c p ngu n nui cho IC, VCC n i v i +5V, GND c n i mass. NC: No Connection, chn ny khng s d ng n. RCK: Chn pht xung clock u ra SER_IN: Serial Data In, ng vo d li u n i ti p. SER_OUT: Serial Data Out, ng ra d li u n i ti p. /SRCLK: Xa thanh ghi SRCK: Chn pht xung clock u vo. /G: output enable, chn cho php xu t d li u. Khi chn ny logic th p th d li u l i, khi chn ny ngoi. DRAIN0 DRAIN7: outputs, cc ng ra c a IC. c tnh c a 6B595 L IC ghi d ch ch t o theo c ng ngh CMOS T c truy n tn hi u 20ns Ph m vi i n p ho t ng: 4-5.5V Ph m vi dng i n ch u c: 500mA S kh i TPIC6B595 m c ng ra c a Flip-Flop c a ra ngoi. Ng c

m c logic cao th d li u khng c php a ra

n T t Nghi p Kha 2007-2010

Trang 74

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Hnh 2.11 S kh i TPIC 6B595 Nguyn l ho t ng

Hnh 2.12: Nguyn l ho t ng c a 6B595

n T t Nghi p Kha 2007-2010

Trang 75

Quang Bo i u Khi n Qua Internet

GVHD:Trng Quang Trung

Chn SER_In l ng d li u vo (bit d li u n i ti p). M t xung SRCK s lm bit ny i vo thanh ghi d ch trong b ng con TPIC6B595. Sau 8 bit lin t c th thanh ghi d ch ny l i l bit u tin c a IC ti p theo (chn SER_OUT n i v i chn SER_IN c a IC sau). Ta a lin t c xu t d li u cho hai mu xanh, . Thanh ghi d ch m i ch thay i trong b ng IC thi ch cha a ra cc chn .Mu n a d li u t cc thanh ghi d ch ny ra chn TPIC 6B595 th c n a m t xung kch vo chn RCK (chn s 12). Chn G l chn cho php ch n led hay led xanh

IC ULN 2803

Hnh 4.7 S c u t o ULN2803 Nhn vo s c u t o c a ULN2803 ta th y c r ng khi u vo u ra m c 0 v ng c l i. N c qua m c 1 th c ng Not!

+ Chn 1 input (M c 1) ==> chn output 18 (m c 0) v ng c l i + Chn 2 inphut (m c 1) ==> chn output 17 (m c 0) v ng c l i +..... +Chn 8 input (m c 1) ==> Chn output 11 (m c 0) v ng c l i

n T t Nghi p Kha 2007-2010

Trang 76

You might also like