28 July 2012
Arduino 是一塊Open Source電路板,
開發者可以利用這塊板子去做到一些電子器材的控制,
例如:開燈、關燈,甚至可以在Arduino上裝上sensor,
然後根據sensor的資料來做處理!例如接上了光敏電阻這個sensor,
我們就可以判斷目前光的亮度,就可以根據不同亮度做不同的回應。
詳細資料可以去官網看:http://arduino.cc/en/


這篇主要教大家怎麼寫一個簡單的應用,
在後面會教大家怎麼接上藍芽模組,然後透過無線的方式和Arduino溝通!
基本上要做到下列的事項

  1. 購買Arduino電路板
  2. 下載Arduino IDE開發工具
  3. 在電腦上安裝Arduino的Driver
  4. 寫個簡單應用並部屬上去Arduino

【第一步、購買Arduino】
在開發前,大家一定要有一塊Arduino電路板,
基本上在Y拍就買得到了,一塊基本的價格大概在600~1000左右!
因為其實Arduino板子有分很多種,且有的還算是加強版!
但都大同小異。
我買的板子是Duemilanove版本,如圖!


【第二步、下載Arduino IDE】
接著得去下載開發工具,
才能寫程式,並燒到Arduino上面去。
下載網址:http://arduino.cc/en/Main/Software
下載下來以後,就解壓縮出來即可。



【第三步、安裝Driver】
接著把Arduino接上電腦,如下圖,
基本上你的電腦應該找不到Driver,
這時候就【我的電腦點選右鍵】→【點選管理】→【點選裝置管理員】
基本上應該就會看到無法辨識的設備,
在該設備上點選右鍵,選擇內容。
然後接著就自己去尋找Driver的路徑,
而Driver就在第二步下載下來的檔案當中,
在解壓縮出來的資料夾當中\arduino-1.0.1\drivers。
安裝完成以後,請記得自己的Serial Port!!(像我的就是21,如下圖)
因為等等會透過此Port把程式燒進去。



【第四步、寫個應用】
首先先打開Arduino IDE,
就在第二步中解壓縮的資料夾當中,
檔名為arduino.exe。
打開以後會見到下圖。
而白色的區塊就是你可以寫code的地方。


接著得點選Tool→Board,如下圖
先選擇你購買的Arduino電路板版本,像我是Duemilanove,
所以就選這個!
如果你選錯,基本上是無法upload到Arduino板子上去的!

接著就選擇第三步中的Serial Port,像我是21,所以就選21,
如下圖。



接著就可以開始寫程式了,
首先我先說明一下,基本上你們購買的Arduino板子上,
一定會有一個小小的LED燈,
而這LED燈是連接到pin腳為13的pin上。如下圖


而我們現在就要寫一個程式去開關該led燈。
CODE如下:
// 先宣告Pin腳位置
int iPinLed = 13;
void setup() {
// 宣告該Pin腳是output
pinMode(iPinLed, OUTPUT);
}
void loop() {
// 開始寫資料,寫HIGH進去就是讓它亮
digitalWrite(iPinLed, HIGH);
delay(1000);
 // 寫LOW進去就是讓它暗
digitalWrite(iPinLed, LOW);
delay(1000);
}

基本上Arduino的程式分了兩個區塊

  1. setup
  2. loop
setup就是傳統的main,也可以想成是constructor,
loop就是會一直執行的部分,可以想成for迴圈。
而上述的程式中,我們先宣告了一個整數(iPinLed),代表pin腳的位置,
接著在setup中把它宣告成是做輸出的動作,也就是說我們會透過這個pin腳餵資料給led
然後就進入loop,第一行就是讓led變亮,
接著就delay一秒鐘,
之後又把led關掉。
又停了一秒。
不斷的重複上述步驟。
而程式的結果如下列影片。
LED燈會一閃一閃的!





 從上述的例子來看或許有點過於單調,
但就像本文一開始所說的,
Arduino可以接上許多裝置,然後透過Arduino控制該裝置。
像此文就是透過Arduino去控制單一LED。
你可以想像如果你有一百顆LED,你也可以通通接上 Arduino ,
然後透過Arduino去控制那一百顆LED。

然後在後面的文章將會介紹怎麼透過Arduino去控制機器手臂。















blog comments powered by Disqus