Arduino

维基百科,自由的百科全书
跳转至: 导航搜索
Arduino Software
Arduino Uno logo.png
Arduino IDE - v0011 Alpha.png
一个Blink程序的截图。
開發者 Arduino Software
穩定版本 1.0.5 / 2013年5月15日;10個月前 (2013-05-15) [1]
编程语言 Java
操作系统 跨平台
类型 Integrated development environment
许可协议 LGPL or GPL license
網站 http://arduino.cc

Arduino,是一個開放原始碼單晶片微電腦,它使用了Atmel AVR单片机,採用了基於開放原始碼的軟硬體平台,構建於開放原始碼 simple I/O 介面板,並且具有使用類似Java,C 語言的Processing/Wiring開發環境。

Arduino Fio——Arduino的无线版本

關於[编辑]

Arduino

Arduino可以使用 Arduino 語言與 Macromedia Flash、Processing、Max/MSP、Pure Data和SuperCollider等軟體,結合電子元件,例如開關或感測器或其他控制器件、LED、步進馬達或其他輸出裝置,作出互動作品。Arduino也可以獨立運作成為一個可以跟軟體溝通的介面。

特色[编辑]

  • 基於創用CC開放原始碼的電路圖設計。
  • 免費下載,也可依需求自己修改,但需遵照姓名標示。您必須按照作者或授權人所指定的方式,表彰其姓名。
  • 依相同方式分享,若您改變或轉變著作,當散布該衍生著作時,您需採用與本著作相同或類似的授權條款。
  • Arduino 可使用 ICSP 線上燒入器,將 Bootloader 燒入新的 IC 晶片。
  • 可依據Arduino官方網站,取得硬體的設計檔,加以調整電路板及元件,以符合自己實際設計的需求。
  • 可簡單地與感測器,各式各樣的電子元件連接,如 紅外線超音波熱敏電阻光敏電阻伺服馬達…等。
  • 支援多樣的互動程式,如 Adobe Flash, Max/MSP, VVVV, Pure Data, C, Processing… 等。
  • 使用低價格的微處理控制器 (Atmel AVR) (ATMEGA 8,168,328等)。
  • USB 介面,不需外接電源。另外有提供直流(DC)電源輸入。

核心開發團隊[编辑]

Arduino的核心開發團隊成員包括:Massimo BanziDavid CuartiellesTom IgoeGianluca MartinoDavid MellisNicholas Zambetti

據說 Massimo Banzi 之前是義大利 Ivrea 一家高科技設計學校的老師。他的學生們經常抱怨找不到便宜好用的微控制器。2005年冬天, Massimo Banzi 跟David Cuartielles 討論了這個問題。David Cuartielles 是一個西班牙籍晶片工程師,當時在這所學校做訪問學者。兩人決定設計自己的電路板,並引入了Banzi 的學生 David Mellis 為電路板設計編程語言。兩天以後,David Mellis 就寫出了程式碼。又過了三天,電路板就完工了。這塊電路板被命名為Arduino。幾乎任何人,即使不懂電腦編程,也能用 Arduino 做出很酷的東西,比如對感測器作出回應,閃爍燈光,還能控制馬達。隨後Banzi,Cuartielles,和Mellis把設計圖放到了網上。保持設計的開放源碼理念,因為版權法可以監管開源軟體,卻很難用在硬體上,他們決定採用共享創意許可。共享創意是為保護開放版權行為而出現的類似GPL的一種許可(license)。在共享創意許可下,任何人都被允許生產電路板的複製品,還能重新設計,甚至銷售原設計的複製品。你不需要付版稅,甚至不用取得 Arduino 團隊的許可。然而,如果你重新發佈了引用設計,你必須說明原始Arduino 團隊的貢獻。如果你調整或改動了電路板,你的最新設計必須使用相同或類似的共享創意許可,以保證新版本的Arduino電路板也會一樣的自由和開放。唯一被保留的只有Arduino這個名字。它被註冊成了商標。如果有人想用這個名字賣電路板,那他們可能必須付一點商標費用給 Arduino 的核心開發團隊成員。

Arduino语言[编辑]

int LED_PIN=13;
 
void setup () {
    pinMode (LED_PIN, OUTPUT);     // 以數位輸出方式啟用Pin13
}
 
void loop () {                     // loop副程式,重複不斷執行
    digitalWrite (LED_PIN, HIGH);  // 打開LED
    delay (1000);                  // 等待一秒,delay內含數值1000,代表延遲1000mS,即一秒。
    digitalWrite (LED_PIN, LOW);   // 關閉LED
    delay (1000);                  // 等待一秒
}                                  // loop副程式結束

這是Arduino的Blink範例程式。 每一個Arduino程序都必須擁有兩個過程:void setup(){}和void loop(){}。在void setup(){}裡面的代碼在導通電源時會執行一次,然後void loop(){}裡面的代碼會不斷執行。

Arduino 板子[编辑]

Arduino 板子(英文維基)

參考資料[编辑]

  • O'REILLY歐萊禮原文 - Getting Started with Arduino
  • O'REILLY歐萊禮原文繁體中文翻譯書 - 踏進互動科技世界 使用Arduino

相關設備名稱[编辑]

相關條目[编辑]

参考文献[编辑]

  1. ^ Arduino Software Release Notes. Arduino Project. [December 4, 2011]. 

外部链接[编辑]