自我進修系列:Arduino 入門

十二月 10, 2013
Facebook
Twitter
你聽過Arduino嗎?它是一款很棒的微處理器(也就是迷你電腦),幾乎任何事情都難不倒它喔!Arduino的主要設計目的在於使得感測器對執行部件(燈光、馬達等等)產生回饋。讀完這一篇文章之後,您就會對Arduino和一些程式碼有基本的認識了!

Arduino Leonardo是目前Arduino的主要模組,它的規格不高,但是對於初學者來說已經綽綽有餘了!這款微控制器平臺售價是25美金,已經算是價格最合理的選項之一囉。

資源共享

Arduino這個概念產生於義大利,是一種設計資源免費共享的硬體設備,這種社群共同開發的概念也啟發了後世許多產品。現在,許多公司與電子材料廠商都採用這種資源共享的概念,也就是說,將腳本程式碼與檔案都上網公開,任何人都可以參與開發歷程,檢驗產品設計並提供改進方式,讓專題越來越好!

以下是一些Arduino的應用專題,您也可以試著用Arduino做出各種不同的應用喔:

  • 3D印表機(市面上大部分的3D列印機都可以搭配Arduino使用!)
  • Quadcopters/Drones(Arduino飛行器!)
  • 雷射豎琴(Laser Harp)(雷射聲光裝置!)
  • LED 立體方塊(LED Cube)
  • 西洋棋機器人

不過,萬丈高樓平地起,一切都是從「閃爍LED」開始的!

所以,這些零件到底是什麼玩意啊?

首先,讓我們來看看電路板長什麼樣子吧。下圖是Arduino Leonardo的外型以及所有您需要知道的零件說明。


下載程式編寫軟體


接下來,我們要在您的電腦上安裝Arduino軟體,請前往bit.ly/arduinoide網頁下載Arduino IDE(整合式程式編寫環境),有PC、Mac或Linux適用的不同版本。另外,如果您使用的是Windows作業系統,請跟著bit.ly/arduinopc網頁上的指示安裝附件,才能順利使用!

現在,可以開始編寫程式囉!


Arduino使用的程式語言包含了C和C++的概念,使用起來並不複雜。在您的想像中,程式語言是不是一堆0與1的組合呢?至少在Arduino的程式編寫情境中不是如此。在創建之初,Arduino團隊的核心思想就是要讓Arduino變得非常親民,任何人(孩童、設計師、藝術家、改造者和maker等等)都可以輕易使用。因此,Arduino程式碼幾乎就像是一般的英文,再加上一些簡單易懂的數字而已。別緊張,讓我們一起來練習最基礎的Arduino程式吧!

以下是Blink(閃爍)程式檔的內容(在Arduino上面運作的程式檔也稱為腳本程式碼Sketch),請打開Blink程式檔,路徑是【檔案】(File)>【範例】(Examples)>【基礎範例】(01.Basics) > Blink。這個程式內容非常單純,也就是讓LED點亮一秒鐘,接著關閉一秒鐘,造成閃爍的效果。在這個專題當中,您可以使用內建於針腳13的LED(有L的標示),或者連接您自己的LED。

同樣地,這些程式碼都是公開的,每個人都可以輕易地找到程式碼,讓我們來一探究竟吧!

/*

Blink

將LED打開一秒鐘、關閉一秒鐘,並反覆進行。

*/這個符號表示程式碼的說明,在「/*」、「*/」這兩個符號之間,或者在「//」這個符號之後的文字都不會執行,因此,您可以在這裡寫下註解,說明這一段程式碼的用途(尤其在編寫大量程式碼的時候,這樣的註解會非常有用)。

*/

int led = 13;
// int(整數)led (變數名稱)= 13 (連結LED的針腳編號); 
//每一行指令結束之後,都必須加上分號。唯一的例外是setup()、loop()、或任何以()結尾的函數

void setup() {    //Void setup:表示只執行一次的程式碼,設定輸入與輸出。

pinMode(led, OUTPUT);   //設定輸出值

}

void loop() {        //Void loop:設定後不斷執行

digitalWrite(led, HIGH);   //將LED打開(在Arduino語言中,HIGH表示打開)

delay(1000);                 //延遲(等待)一秒鐘(1000毫秒=1秒)

digitalWrite(led, LOW);    //將LED關閉(在Arduino語言中,LOW表示關閉)

delay(1000);                 //延遲(等待)一秒鐘

}

現在,可以將程式碼上傳到Arduino開發板上囉!請點擊【工具】(Tool) > 【開發板】(Board)> Arduino Leonardo(如果您使用的是Arduino Leonardo這個型號的話),接著,再點擊【工具】(Tool) > 【開發板】(Board)) >【埠】(Port),如果你使用的是Mac電腦,請選擇使用/dev/tty.usbmodemfd121 (類似這樣的東西)的那一個 ;而如果您使用的是PC,請選擇最下面的COM Port。然後,請按下【編譯並上傳】(Compile + Upload)按鈕(下圖中向右的箭頭),在此同時,軟體會幫您檢查是否有程式邏輯錯誤,確認無誤後就會上傳到Arduino上了。如果有任何錯誤,程式碼下方的黑色方框中會出現訊息。

大概五秒鐘之後,Arduino上的指示燈就會開始快速閃爍,然後,「L」這一顆LED就會開始閃動,速率剛好是一秒鐘開、一秒鐘關。不要懷疑,您已經完成第一個Arduino專題了!

相信您已經迫不及待要發揮您的創意了,有了這些知識之後,您可以自己做出許多其他的專題!舉例來說,您可以讓10顆LED一起閃爍,或者用彩色LED製作這個專題。如果您想要更進一步探索各種Arduino專題,可以到bit.ly/makearduino網頁走走逛逛!

[原文]

Social media & sharing icons powered by UltimatelySocial