lap trinh arduino

33
LẬP TRÌNH ARDUINO

Upload: vn-champion

Post on 07-Oct-2015

51 views

Category:

Documents


0 download

DESCRIPTION

arduino

TRANSCRIPT

Mt chng trình trên Arduino cn ti thiu nhng gì?
Trong mt chng trình Arduino, bn cn có ti thiu 2 hàm h thng ch!nh, b"t buc #h$i có, %h&ng có 'à %h&ng ()c* +ó 'à -tu#./  0à 'oo#./
 A13456
Mt chng trình trên Arduino cn ti thiu nhng gì?
=
 A13456
 
BC nh<# nhD: Ni dung chính cn nm - Tìm hiu cDch ( (iEu %hin mt con (Fn '-d nh<# nhD:* Phn cng -  Arduino 356 1G - HI B-d - HI (in trJ 22H ohm Lp mch - KLc m B-d NO P5 - KLc dng B-d NO (in trJ NO 4P4TAB IG
 
BC nh<# nhD:
Mã !p "#$nh %& gi'i "hích TrQc tiên, cR mSi %hi dng mt con BC, chUng t@ #h$i #inMod- 63TV3T chn igit@' mà t@ W dXng cho con (Fn BC* Trong 0! dX ngà: h&m n@:, chUng t@ W dXng chn BC 'à chn digit@' IG* 5ên (on cod- @u cn n9m trong 0oid -tu#./
0oid -tu#./ 7   #inMod- .IG, 63TV3T/Y =
 
BC nh<# nhD: Mã !p "#$nh %& gi'i "hích  + bZt mt con (Fn BC, bn #h$i digit@'[rit- \4P\ cho chn IG .chn igt@' ()c %]t ni 0Qi con BC/* +on cod- nà: n9m trong 0oid 'oo#./
0oid 'oo#./ 7   digit@'[rit- .IG, \4P\/Y =
^ng 'nh trên _ c<# mt (in th] 'à `a 0ào chn igit@' IG* +in th] _ (i u@ (in trJ 22Hohm ri (]n (Fn BC* + t"t mt (Fn BC, bn W dXng hàm B6[*
  digit@'[rit- .IG, B6[/Y
 
BC nh<# nhD:
Mã !p "#$nh %& gi'i "hích BUc nà: (in th] ti chn IG _ 'à H a NO (Fn BC t"t* aà ( th<: ()c trng thDi bZt 0à t"t c@ (Fn BC bn #h$i deng chng trình trong mt %ho$ng thfi gi@n ( 'u ( m"t c$m nhZn ()c* aì 0Z:, hàm d-'@: ()c to r@ ( 'àm 0ic nà: .eng hn chng trình b@o nhiêu mi'i gi:/
 
i]n .0@ri@b'-/ Ni dung chính cn nm - Tìm hiu cDch %h@i bDo bi]n, cD nhn hó@ d^ng 'nh*
0oid -tu#./ 7   #inMod- .IG, 63TV3T/Y =
 
i]n .0@ri@b'-/ Mã !p "#$nh %& gi'i "hích - Th-o cDch 'Z# trình t@ th<: mSi 'n W dXng chn 4P4TAB IG t@ #h$i gji IG* + cD nhn hó@ d^ng 'nh 0à dk hiu t@ %h@i bDo mt bi]n th@: th] cho IG*
- K<u trUc %h@i bDo bi]nl
%iu d 'iu T-ni-nY
int '-dY 88%h@i bDo bi]n tên 'à '-d '-d N IGY 88gDn giD tr IG cho bi]n '-d
int '-d N IGY 88%h@i bDo bi]n '-d 0à gDn giD tr IG
p qh@i bDo bi]n tên '-d %iu ngu:ên 0à gDn giD tr 'à IG cho bi]n '-d
p ai]t rUt gjnl
 
i]n .0@ri@b'-/ ()c *i+u d, i-u - boo'-@nl ch; nhZn mt trong h@i giD tr tru- ho>c @'- - ch@rl %iu d 'iu biu dikn cho I qs T - b:t-l biu dikn ngu:ên te H (]n 2`` - intl biu dikn ngu:ên te pG2,vw (]n G2,v - 'ongl biu dikn ngu:ên te p2,Ix,xwG,vxw (]n
2,Ix,xwG,vx - 'o@tl biu dikn thLc te pG*xH2w2G`CyGw (]n
G*xH2w2G`CyGw - tringl biu dikn %iu chuSi %z tL
boo'-@n Tr@ngTh@i N tru-Y ch@r q:Tu N{A|Y b:t- A N 2``Y int '-d N IGY 'ong N p2IxxwGvxwY
 
i]n .0@ri@b'-/
int -nB-d N IGY 88qh@i bDo bi]n -nB-d 0à gDn N IG
 
\àm .unction/ Ni dung chính cn nm - Tìm hiu cDch ( 0i]t hàm (iEu %hin riêng, cD nhn hó@
d^ng 'nh, rUt gjn d^ng 'nh* int -nB-d N IGY 88qh@i bDo bi]n -nB-d 0à gDn N IG 0oid -tu#./ 7   #inMod- .-nB-d, 63TV3T/Y 88%h@i bDo W dXng chn IG %iu 63TV3T =
 
\àm .unction/
Mã !p "#$nh %& gi'i "hích - Th-o cDch 'Z# trình t@ th<: mSi 'n mun (iEu %hin (Fn
B-d t"t mJ t@ #h$i nhZ# 0ào x cu 'nh* + rUt gjn 0à dk th@o tDc t@ có th tDch riêng x cu 'nh (iEu %hin B-d r@ thành mt hàm riêng*
- K<u trUc hàm %h&ng tr$ 0E giD trl
0oid T-n\@m./ 7   cDc cu 'nh thLc hinY =
 
 
0oid T@tMoB-d./ 88hàm %h&ng tr$ 0E giD tr 7   digit@'[rit- .-nB-d, \4P\/Y 88bZt (Fn BC   d-'@:.IHHH/Y 88eng chng trình trong I   digit@'[rit- .-nB-d, B6[/Y 88 t"t (Fn BC   d-'@:.IHHH/Y 88eng chng trình trong I =
- MSi 'n t"t mJ B-d t@ ch; cn gji hàm T@tMoB-d./
0oid 'oo# ./ 7   T@tMoB-d./Y =
\àm .unction/ Mã !p "#$nh %& gi'i "hích
int -nB-d N IGY 88qh@i bDo bi]n -nB-d 0à gDn N IG
0oid -tu#./ 7   #inMod- .-nB-d, 63TV3T/Y 88%h@i bDo W dXng chn IG %iu 63TV3T =
0oid 'oo#./ 7   T@tMoB-d./Y =
 
 + Dng BC Ni dung chính cn nm - Tìm hiu cDch W dXng cDc chn digit@' ( u<t giD tr
@n@'og 0à Rng dXng chUng trong 0ic 'àm th@: (}i ( Dng c@ (Fn*
Phn cng -  Arduino 356 1G - HI B-d - HI (in trJ 22H ohm Lp mch - KLc m B-d NO P5 - KLc dng B-d NO (in trJ NO 4P4TAB ~v
 
 + Dng BC
Mã !p "#$nh %& gi'i "hích - H&m .n./g0#i"1234 'à 'nh u<t r@ te mt chn trên
mch Arduino mt mRc t!n hiu @n@'og .#hDt ung V[M/* 5gfi t@ thfng (iEu %hin mRc Dng ti c@ (Fn BC, tc ( (ng c K h@: hQng u@: c@ (ng c -r0o b9ng cDch #hDt ung V[M nh th] nà:*
@n@'og[rit- .chn #hDt ung V[M, giD tr ung V[M/Y
 
Mã !p "#$nh %& gi'i "hích
int '-d N vY 88%h@i bDo bi]n '-d 0à gDn giD tr 'à v 0oid -tu#./ 7   #inMod-.'-d, 63TV3T/Y 88%h@i bDo BC J chn v =
 
Mã !p "#$nh %& gi'i "hích
- Th@: 0ì (iEu %hin ( Dng BC thì t@ có th (iEu %hin tc ( (ng c 0Qi cDch 'Z# trình tng tL*
-  +iEu %hin tc ( (ng c ch; W dXng nhng chn digit@' có d<u ~ #h!@ trQc
 
K$m bi]n
Ni dung chính cn nm - Tìm hiu cDch W dXng cDc 'oi c$m bi]n ( '<: giD tr
digit@' .ho>c @n@'og/ 0à Rng dXng chUng trong 0ic t"t mJ (Fn BC***
 
K$m bi]n Lp mch - KLc m B-d NO P5 - KLc dng B-d NO (in trJ NO 4P4TAB ~v - K$m bi]n
- aKK NO cLc dng `0 - P5 NO cLc m `0 -  A0 DE Fng Ana+g t'ên m*h A'du&n+ DE A0  - H NO c}ng igit@' trên mch Arduino NO 4P4TAB 2
 
Mã !p "#$nh %& gi'i "hích
int '-d N vY 88%h@i bDo bi]n '-d th@: cho V45 v int c@mbi-nA N AHY 88chn An@'og %]t ni c$m bi]n int c@mbi-n N 2Y 88chn igit@' %]t ni c$m bi]n
0oid -tu#./ 7   #inMod-.'-d, 63TV3T/Y   #inMod-.c@mbi-nA, 45V3T/Y   #inMod-.c@mbi-n, 45V3T/Y =
 
K$m bi]n Mã !p "#$nh %& gi'i "hích
 
K$m bi]n Mã !p "#$nh %& gi'i "hích - K<u trUc hàm i .(iEu %in/
i .biu thRc I toDn tW o Dnh biu thRc 2/ 7   cDc cu 'nh thLc hin %hi (iEu %in (UngY = -'- 7   cDc cu 'nh thLc hin %hi (iEu %in @iY =
- ToDn tW o Dnhl - 9ngl NN - qh&ng b9ngl N - 5h‚ hnl - BQn hnl O
 
K$m bi]n Mã !p "#$nh %& gi'i "hích
 
 +ng c K
 
 +ng c K
Lp mch - 5i (ng c K 0ào cDc chn 63T A, , K, trên mch
c&ng u<t B2…w* - K<# ngun dng I20 0ào chn aKK, cLc m 0ào chn
P5 0ào mch c&ng u<t B2…w* - 5i chn 45A, 45, 45K, 45 tng Rng 0ào cDc chn 4P4TAB 2, G, x, ` trên mch Arduino ( (iEu %hin chiEu u@: (ng c*
 
 +ng c K Mã !p "#$nh %& gi'i "hích
int 45A N 2Y 88%h@i bDo chn u$n 'z chn 45A p motor I int 45 N GY 88%h@i bDo chn u$n 'z chn 45 p motor I int 45K N xY 88%h@i bDo chn u$n 'z chn 45K p motor 2 int 45 N `Y 88%h@i bDo chn u$n 'z chn 45 p motor 2 int C5A N …Y 88chn V[M (iEu %hin tc ( motor I int C5 N IHY 88chn V[M (iEu %hin tc ( motor 2
0oid -tu#./ 7   #inMod-.45A, 63TV3T/Y   #inMod-.45, 63TV3T/Y   #inMod-.45K, 63TV3T/Y   #inMod-.45, 63TV3T/Y   #inMod-.C5A, 63TV3T/Y   #inMod-.C5, 63TV3T/Y =
 
 +ng c K Mã !p "#$nh %& gi'i "hích
0oid Ti-n./ 7 @n@'og[rit-.C5A, I2/Y 88(iEu %hin tc ( motor I @n@'og[rit-.C5, I2/Y 88(iEu %hin tc ( motor 2
digit@'[rit-.45A, \4P\/Y 88(iEu %hin chiEu u@: motor I digit@'[rit-.45, B6[/Y 88(iEu %hin chiEu u@: motor I
digit@'[rit-.45K, \4P\/Y 88(iEu %hin chiEu u@: motor 2 digit@'[rit-.45, B6[/Y 88(iEu %hin chiEu u@: motor 2 =
 
 +ng c K Mã !p "#$nh %& gi'i "hích
0oid Bui./ 7 @n@'og[rit-.C5A, I2/Y 88(iEu %hin tc ( motor I @n@'og[rit-.C5, I2/Y 88(iEu %hin tc ( motor 2
digit@'[rit-.45A, B6[/Y 88(iEu %hin chiEu u@: motor I digit@'[rit-.45, \4P\/Y 88(iEu %hin chiEu u@: motor I
digit@'[rit-.45K, B6[/Y 88(iEu %hin chiEu u@: motor 2 digit@'[rit-.45, \4P\/Y 88(iEu %hin chiEu u@: motor 2 =
 
 +ng c K Mã !p "#$nh %& gi'i "hích
0oid Tr@i./ 7 @n@'og[rit-.C5A, H/Y 88(iEu %hin tc ( motor I @n@'og[rit-.C5, 2``/Y 88(iEu %hin tc ( motor 2
digit@'[rit-.45A, \4P\/Y 88(iEu %hin chiEu u@: motor I digit@'[rit-.45, B6[/Y 88(iEu %hin chiEu u@: motor I
digit@'[rit-.45K, \4P\/Y 88(iEu %hin chiEu u@: motor 2 digit@'[rit-.45, B6[/Y 88(iEu %hin chiEu u@: motor 2 =
 
 +ng c K Mã !p "#$nh %& gi'i "hích
0oid Vh@i./ 7 @n@'og[rit-.C5A, 2``/Y 88(iEu %hin tc ( motor I @n@'og[rit-.C5, H/Y 88(iEu %hin tc ( motor 2
digit@'[rit-.45A, \4P\/Y 88(iEu %hin chiEu u@: motor I digit@'[rit-.45, B6[/Y 88(iEu %hin chiEu u@: motor I
digit@'[rit-.45K, \4P\/Y 88(iEu %hin chiEu u@: motor 2 digit@'[rit-.45, B6[/Y 88(iEu %hin chiEu u@: motor 2 =
 
Mã !p "#$nh %& gi'i "hích
int do@ng N HY 88%h@i bDo bi]n u$n 'z ( Dng (Fn BC int gi@tri N `Y
0oid 'oo#./ 7   @n@'og[rit-.'-d, do@ng/Y 88u<t giD tr ( Dng (Fn BC
  do@ng N do@ng y gi@triY 88 th@: (}i giD tr Dng 'ên `