學(xué)習(xí)Arduino就要從學(xué)習(xí)這些語句及基本函數(shù)開始,Arduino使用起來要比其他微處理器更易懂,與Basic Stamp有些相似,Arduino的編程語言更為簡單和人性化,Arduino編程語言基于C語言,但其實(shí)用性要遠(yuǎn)高于C語言,主要由于它將一些常用語句組合函數(shù)化,例如:延時(shí)函數(shù)delay(1000)即為一秒。
在學(xué)語言之間,還要做的一個(gè)功課就是要明白程序的構(gòu)架,這個(gè)也同樣簡單,大體可分為幾個(gè)部分。
1、聲明變量及接口名稱(int val;int ledPin=13;)。
2、setup()——函數(shù)在程序開始時(shí)使用,可以初始化變量、接口模式、啟用庫等(例如:pinMode(ledPin,OUTUPT);)。
3、loop()——在setup()函數(shù)之后,即初始化之后,loop() 讓你的程序循環(huán)地被執(zhí)行。使用它來運(yùn)轉(zhuǎn)Arduino。
接下來就開始學(xué)習(xí)一下幾個(gè)基本函數(shù)。
1、pinMode(接口名稱,OUTPUT或INPUT)將——接口定義為輸入或輸出接口,用在setup()函數(shù)里。
2、digitalWrite(接口名稱, HIGH或LOW)——將數(shù)字接口值至高或低。
3、digitalRead(接口名稱)——讀出數(shù)字接口的值。
4、analogWrite(接口名稱, 數(shù)值)——給一個(gè)接口寫入模擬值(PWM波)。對于 ATmega168芯片的Arduino(包括Mini或BT),該函數(shù)可以工作于 3, 5, 6, 9, 10和 11號(hào)接口。老的 ATmega8芯片的USB和 serial Arduino僅僅支持 9, 10和11號(hào)接口。
5、analogRead(接口名稱)——從指定的模擬接口讀取值,Arduino對該模擬值進(jìn)行10-bit的數(shù)字轉(zhuǎn)換,這個(gè)方法將輸入的0-5電壓值轉(zhuǎn)換為 0到1023間的整數(shù)值。
6、delay()——延時(shí)一段時(shí)間,delay(1000)為一秒。
7、Serial.begin(波特率)——設(shè)置串行每秒傳輸數(shù)據(jù)的速率(波特率)。在同計(jì)算機(jī)通訊時(shí),使用下面這些值:300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600或 115200。你也可以在任何時(shí)候使用其它的值,比如,與0號(hào)或1號(hào)插口通信就要求特殊的波特率。用在setup()函數(shù)里
8、Serial.read()——讀取持續(xù)輸入的數(shù)據(jù)。
9、Serial.print(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù)。Serial.print(數(shù)據(jù))默認(rèn)為十進(jìn)制等于Serial.print(數(shù)據(jù),DEC)。
10、Serial.println(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù),跟隨一個(gè)回車和一個(gè)換行符。這個(gè)函數(shù)所取得的值與 Serial.print()一樣。
以上幾個(gè)函數(shù)是常用基本函數(shù),還有很多以后會(huì)慢慢學(xué)習(xí)。
=================================================================================
Arduino自帶的Servo函數(shù)及其語句,先來介紹一下舵機(jī)函數(shù)的幾個(gè)常用語句吧。
1、attach(接口)——設(shè)定舵機(jī)的接口,只有9或10接口可利用。
2、write(角度)——用于設(shè)定舵機(jī)旋轉(zhuǎn)角度的語句,可設(shè)定的角度范圍是0°到180°。
3、read()——用于讀取舵機(jī)角度的語句,可理解為讀取最后一條write()命令中的值。
4、attached()——判斷舵機(jī)參數(shù)是否已發(fā)送到舵機(jī)所在接口。
5、detach()——使舵機(jī)與其接口分離,該接口(9或10)可繼續(xù)被用作PWM接口。
注:以上語句的書寫格式均為“舵機(jī)變量名.具體語句()”例如:myservo.attach(9)。
下面就來具體分析一個(gè)小程序。
#include Arduino軟件菜單欄單擊Sketch>Importlibrary>Servo,調(diào)用Servo函數(shù),也可以直接輸入#include Servo myservo;//定義舵機(jī)變量名 void setup()
{
myservo.attach(9);//定義舵機(jī)接口,9或10
}
void loop()
{
myservo.write(90);//設(shè)置舵機(jī)旋轉(zhuǎn)的角度
}
聯(lián)系客服