本篇博文將在Arduino IDE軟件中手寫第一個小Demo誉帅,點亮LED燈淀散。
1右莱、Arduino編程架構
在Arduino中,標準的程序入口main函數在內部被定義, 用戶只需要關心以下兩個函數:setup()函數和loop()函數档插。
當Arduino板啟動時setup()函數會被調用慢蜓。用它來初始化變量,引腳模式郭膛,開始使用某個庫晨抡,等等。該函數在Arduino板的每次上電和復位時只運行一次则剃。
在創(chuàng)建setup函數耘柱,該函數初始化和設置初始值,loop()函數所做事的正如其名棍现,連續(xù)循環(huán)调煎,允許你的程序改變狀態(tài)和響應事件〖喊梗可以用它來實時控制arduino板汛蝙。
// 主程序開始
void setup() {
//寫入setup代碼,只運行一次
}
void loop() {
//寫入main代碼朴肺,重復運行
}
2、點亮LED燈
點亮LED燈實現代碼如下所示:
void setup() {
? pinMode(13, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
? digitalWrite(13, HIGH);? ? ? ? ? ? // turn the LED on (HIGH is the voltage level)
? delay(1000);? ? ? ? ? ? ? ? ? ? ? // wait for a second
? digitalWrite(13, LOW);? ? ? ? ? ? // turn the LED off by making the voltage LOW
? delay(1000);? ? ? ? ? ? ? ? ? ? ? // wait for a second
}
由于LED是輸出設備坚洽,所以在setup()函數中先初始化LED為輸出模式戈稿,實現函數如下所示:
pinMode(pin, mode);
這個函數是用來設置Arduino數字引腳的模式的,只用于數字引腳定義是輸入(INPUT)還是輸出(OUTPUT)讶舰。pin指數字引腳號鞍盗,mode指引腳模式(OUTPUT/INPUT)跳昼。
loop函數中就只用到了一個函數digitalrite()般甲。
digitalWrite(pin,value)
這個函數的意義是:引腳pin在pinMode()的中被設置為OUTPUT模式時,其電壓將被設置為相應的值鹅颊,HIGH:輸出高電平敷存,為5V(3.3V控制板上為3.3V),LOW:輸出低電平堪伍,為OV锚烦。
delay是延時的意思。括號中寫入的是毫秒(ms)帝雇。所以涮俄,delay(1000)就是延時1s的意思。最后實現的就是LED亮一秒尸闸,滅一秒彻亲,一直無限循環(huán)孕锄。
新手創(chuàng)客從Mind+編程軟件過渡到Arduino IDE軟件,可以結合兩款軟件優(yōu)點苞尝,比如Mind+可以通過拖拉控件生成代碼畸肆,直接復制代碼到Arduino IDE中修改也是便捷的開發(fā)小技巧。