Arduino 語(yǔ)法手冊(cè)_第1頁(yè)
Arduino 語(yǔ)法手冊(cè)_第2頁(yè)
Arduino 語(yǔ)法手冊(cè)_第3頁(yè)
Arduino 語(yǔ)法手冊(cè)_第4頁(yè)
Arduino 語(yǔ)法手冊(cè)_第5頁(yè)
已閱讀5頁(yè),還剩69頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、arduno語(yǔ)法手冊(cè)arduino的程序可以分為三個(gè)主要部分:結(jié)構(gòu)、變量(變量和常量)和函數(shù)。結(jié)構(gòu)部分一、結(jié)構(gòu)1.1 setup()1.2 loop()二、結(jié)構(gòu)控制2.1 if2.2 if.else2.3 for2.4交換機(jī)case2.5 while2.6 do.while2.7中斷2.8 continue2.9 return2.10 goto三、擴(kuò)展語(yǔ)法3.1;(分號(hào))3.2 (大括號(hào))3.3 /(單行注釋)3.4 /* */(多行注釋)3.5 #define3.6 #include四、算術(shù)運(yùn)算符4.1=(賦值運(yùn)算符)4.2(加)4.3-(減去)4.4 *(乘)4.5/(除以)4.6%(模式

2、)五、比較運(yùn)算符5.1=(等于)5.2!=(不等于)5.3(小于)5.4(大于)5.5=(小于或等于)5.6=(大于或等于)六、布爾運(yùn)算符6.1(和)6.2 |(或)6.3!(鄭智薰)七、指針運(yùn)算符7.1 *取消引用運(yùn)算符7.2參考運(yùn)算符8位運(yùn)算符8.1(位元和)8.2 |(大或)8.3(雙xor)8.4 (bitwise not)8.5 (bitshift left)8.6 (bitshift right)9,復(fù)合運(yùn)算符9.1(增量)9.2 - (decrement)9.3=(compound addition)9.4 -=(compound subtraction)9.5 *=(compo

3、und multiplication)9.6 /=(compound division)9.6=(compound bitwise and)9.8 |=(compound bitwise or)變量部分列,常量10.1 high|low(針腳電壓定義)10.2 input|output(數(shù)字針腳定義)10.3 true | false(邏輯層次定義)10.4 integer constants(整數(shù)常數(shù))10.5 floating point constants(浮動(dòng)常數(shù))11、數(shù)據(jù)類(lèi)型11.1 void11.2 boolean(布爾型)11.3 char(有符號(hào)數(shù)據(jù)類(lèi)型)11.4 unsig

4、ned char(無(wú)符號(hào)數(shù)據(jù)類(lèi)型)11.5 byte(無(wú)符號(hào)數(shù)字)11.6 int(整數(shù))11.7 unsigned int(無(wú)符號(hào)整數(shù))11.8 word11.9長(zhǎng)整數(shù)類(lèi)型11.10 unsigned long(無(wú)符號(hào)長(zhǎng)整數(shù)類(lèi)型)11.11 float(浮點(diǎn)數(shù))11.12雙精度浮點(diǎn)11.13字符串(char array/字符串)11.14 string object(string類(lèi))11.15 array(陣列)12、數(shù)據(jù)類(lèi)型轉(zhuǎn)換12.1 char()12.2 byte()12.3 int()12.4 word()12.5長(zhǎng)()12.6 float()13、變量范圍修飾符13.1 varia

5、ble scope(變量的范圍)13.2 static(靜態(tài)變量)13.3 volatile13.4 const14、輔助工具14.1 sizeof()函數(shù)部分15,數(shù)字i/o15.1針腳模式()15.2 digitalwrite()15.3 digitalread()16,模擬i/o16.1 analogreference()16.2 analogread()16.3 analogwrite() pwm17,高級(jí)i/o17.1噸()17.2 notone()17.3 shiftout()17.4 shiftin()17.5 pulsein()18,時(shí)間18.1 millis()18.2微秒(

6、)18.3 delay()18.4 delaymicroseconds()19、數(shù)學(xué)運(yùn)算19.1分鐘()19.2 max()19.3 abs()19.4 constrain()19.5 map()19.6 pow()19.7 sqrt()19.8 ceil()19.9 exp()19.10 fab()19.11 floor()19.12 fma()19.13 fmax()19.14 fmin()19.15 fmod()19.16 ldexp()19.17日志()19.18 log10()19.19 round()19.20信號(hào)()19.21 sq()19.22 square()19.23 tr

7、unc()20,三角函數(shù)20.1 sin()20.2 cos()20.3 tan()20.4 acos()20.5 asin()20.6 atan()20.7 atan2()20.8 cosh()20.9 degrees()20.10 hypot()20.11 radians()20.12 sinh()20.13 tanh()21、隨機(jī)數(shù)21.1 randomseed()21.2隨機(jī)()22,位操作22.1 lowbyte()22.2 highbyte()22.3dread()22.4 bitwrite()22.5 bitset()22.6 bitclear()22.7 bit()23、設(shè)置中

8、斷函數(shù)23.1 attachinterrupt()23.2 detachinterrupt()24、交換機(jī)中斷24.1 interrupts()(掛起)24.2 nointerrupts()(禁止中斷)25、通訊25.1串行25.1.1 if(串行)25.1.2 serial.available()25.1.3 serial.begin()25.1.4 serial.end()25.1.5 serial.find()25.1.6 serial.finduntil()25.1.7 serial.flush()25.1.8 serial.parsefloat()25.1.9 serial.pars

9、eint()25.1.10 serial.peek()25.1.11 serial.print()25.1.12 serial.println()25.1.13 serial.read()25.1.14 serial.readbytes()25.1.15 serial.readbytesuntil()25.1.16 serial.settimeout()25.1.17 serial.write()25.1.18串行。serialevent()25.2流26、usb(僅限leonardo和due)26.1鼠標(biāo)(鍵盤(pán))26.2鍵盤(pán)(鼠標(biāo))結(jié)構(gòu)部分一、結(jié)構(gòu)1.1 setup()在arduino中運(yùn)行

10、時(shí),程序首先調(diào)用setup()函數(shù)。用于初始化變量、pin輸出設(shè)置輸入類(lèi)型、配置串行端口、導(dǎo)入類(lèi)庫(kù)文件等。每次在arduno中打開(kāi)或重新啟動(dòng)電源時(shí),setup函數(shù)只運(yùn)行一次。是int button pin=3;void設(shè)置()serial . begin(9600);接腳模式(button pin,input);void loop()/.1.2 loop()在setup()函數(shù)中初始化和定義變量,然后執(zhí)行l(wèi)oop()函數(shù)。顧名思義,該函數(shù)在程序運(yùn)行過(guò)程中不斷循環(huán),根據(jù)一些反饋相應(yīng)地更改運(yùn)行。使用此函數(shù)動(dòng)態(tài)控制arduno儀表板。是int button pin=3;/setup初始化串行端口和密

11、鑰針。void設(shè)置()begin serial(9600);接腳模式(button pin,input);/loop每次檢查按鈕,如果按鈕被按下,則將信息發(fā)送到串行端口void loop()if(digital read(button pin)=high)串行寫(xiě)入(h);elseserial write(l);delay(1000);二、結(jié)構(gòu)控制2.1 if條件判斷語(yǔ)句(if)和=,=,(比較運(yùn)算符)if語(yǔ)句與比較運(yùn)算符一起使用,用于檢測(cè)輸入值是否高于特定值等條件是否滿足。if語(yǔ)句的語(yǔ)法如下:if (somevariable 50)/執(zhí)行部分語(yǔ)句此程序測(cè)試somevariable變量的值是否大

12、于50。如果大于50,則發(fā)出幾條語(yǔ)句。也就是說(shuō),只要if后面括號(hào)內(nèi)的結(jié)果(稱(chēng)為測(cè)試表達(dá)式)為true,執(zhí)行花括號(hào)內(nèi)的語(yǔ)句(稱(chēng)為執(zhí)行語(yǔ)句塊)。如果是假的,則跳過(guò)大括號(hào)內(nèi)的語(yǔ)句??梢允÷詉f語(yǔ)句后面的花括號(hào)。如果省略大括號(hào),則只有一個(gè)以分號(hào)結(jié)尾的語(yǔ)句成為執(zhí)行語(yǔ)句。if (x 120)數(shù)字寫(xiě)(led pin,high);if (x 120)digitalwrite(ledpin,high);if(x 120)數(shù)字寫(xiě)(led pin,high);if (x 120)digitalwrite(ledpin1,high);digitalwrite(ledpin2,high);/以上所有寫(xiě)入方法都是正確的用

13、括號(hào)計(jì)算的表達(dá)式需要以下運(yùn)算符:比較運(yùn)算符:x=y(x等于y)x!=y(x不等于y)x y(x小于y)x y(x大于y)x=y(x小于y)x=y(x大于y)警告:確定是否使用賦值運(yùn)算符。例如if (x=10)。=表示賦值運(yùn)算符,它將x值設(shè)置為10(將值10放在x變量的內(nèi)存中)。兩個(gè)“=”表示比較運(yùn)算符,例如if (x=10),用于測(cè)試x和10是否相等。后面的語(yǔ)句只有在x等于10時(shí)才為真,而前面賦值的語(yǔ)句始終為真。這是因?yàn)閏語(yǔ)言根據(jù)以下規(guī)則運(yùn)算if (x=10):10會(huì)將值指定給x。如果指定了非零數(shù)字的值,則賦值表達(dá)式的值始終為true。因此,x現(xiàn)在為值10。if的測(cè)試表達(dá)式值為10,非零值始終

14、為真,因此該值始終為真。因此,if (x=10)總是真的,這不是運(yùn)行if時(shí)期望的結(jié)果。此外,不是預(yù)期的結(jié)果,x分配了10。if的另一個(gè)分支條件控制結(jié)構(gòu)是if.else格式。2.2 if.elseif/else是比if更高級(jí)別的流程控制語(yǔ)句,可以執(zhí)行多個(gè)條件測(cè)試。例如,如果輸入的值小于500,則執(zhí)行某些操作,如果大于或等于500,則執(zhí)行其他操作。代碼如下:if (pinfiveinput 500)/執(zhí)行a操作else/b執(zhí)行操作else可以執(zhí)行其他if檢查,因此可能同時(shí)檢測(cè)多個(gè)互斥條件。測(cè)試將逐個(gè)進(jìn)行,直到測(cè)試為true,此時(shí)將運(yùn)行與該測(cè)試相關(guān)的執(zhí)行語(yǔ)句塊,然后程序?qū)⑻^(guò)其馀測(cè)試,直接執(zhí)行到if/else中的以下語(yǔ)句:如果所有測(cè)試都是假的,并且存在else語(yǔ)句塊,則執(zhí)行基本else語(yǔ)句塊。else if語(yǔ)句塊可以沒(méi)有else語(yǔ)句塊。else if季度語(yǔ)句數(shù)不受限制。if (pinfiveinput 500)/執(zhí)行a操作else if (pinfiveinput=1000)/b執(zhí)行操作else/c執(zhí)行操作執(zhí)行各種條件分支判斷的另一個(gè)語(yǔ)句是switch case語(yǔ)句。2.3 forfor語(yǔ)句說(shuō)明for語(yǔ)句用于重復(fù)大括號(hào)內(nèi)的代碼片段。通常,使用增量計(jì)數(shù)器計(jì)數(shù)并結(jié)束循環(huán)。for語(yǔ)句對(duì)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論