Arduino/簡介

維基教科書,自由的教學讀本

Arduino的誕生[編輯]

Arduino UNO Board(實物)
Arduino開發環境(windows)

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是什麼[編輯]

Arduino可以讓你的計算機能夠擁有感應、控制真實世界的能力,而不僅局限於鍵盤、鼠標、屏幕、揚聲器等單一的標準I/O設備。它同時也能作為獨立的核心,作為機器人、智能車、激光槍等電子設備的控制器,應用非常簡單。

Arduino可用於開發交互式對象,採取各種開關或傳感器輸入,控制各種燈,電機和其他物理輸出。Arduino的項目,可以獨立,或者與計算機上運行的軟件通信。

Arduino包括一個硬件平台——Arduino Board,和一個開發工具——Arduino IDE。兩者都是開放的,既可以獲得Arduino開發板的電路圖,也可以獲得Arduino IDE的源代碼。除了購買Arduino電路板外,不需要支付額外的費用。Arduino Board基於簡單的微控制器,如ATmega328,提供了基本的接口和USB轉串口模塊。使用者只需要用一個USB線就可以連接電腦和Arduino Board,完成編程和調試,而不需要專門的下載器。Arduino使用一種簡單的專用編程語言,使用者不必掌握匯編語言和C語言等複雜技術就可以進行開發。IDE可免費下載,並開放源代碼,跨平台,極為便利。

為什麼選擇Arduino[編輯]

世界上有不少微處理器和對應的硬件平台,比如AVR系列或51系列的單片機開發板、Parallax Basic Stamp、BX-24,、Phidgets,MIT的Handyboard。至於為何選擇Arduino,主要擁有以下原因:

  • 廉價。這也是Arduino誕生的主要原因和目標之一。一塊最新版的Arduino Board的價格(約70元)仍然遠低於一塊AVR或51開發板(約100~200元),並且不需要額外購買價格幾十元人民幣的下載線。開發軟件亦是免費的,這也為開發者減少了不少麻煩。Arduino Board是被設計用來直接用於產品開發的,小巧精簡,而普通的AVR開發板往往過於臃腫,不適合直接用於產品中,只是作為學習之用。使用Arduino降低了成本,您只需一塊。
  • 跨平台。Arduino IDE能夠在主流平台上運行,包括Microsoft Windows,Linux,Mac OS X(它們佔據了PC的99%以上)。而普通的AVR開發工具如ICC,AVRStudio,只有Windows版本。對於很多程序員來說,Linux是他們的最愛。而設計師往往鍾情於Mac OS X。跨平台的Arduino IDE的確解決了這樣的困難,開發人員可以保持自己的習慣。
  • 簡單、清晰的編程方式。電子產品的開發者並不都是電子工程師或程序員,他們甚至包括畫家和建築師(他想為自己的家設計能自動開合的百葉窗)。Arduino並沒有使用天書一般的匯編語言,或者複雜難懂的C語言,而是創造了另一種簡單、清晰的編程語言。經過簡單的學習,便能夠開始出色的設計。
  • 開源的軟件。讓你有機會了解,並加以改變,讓你的開發與眾不同。
  • 開放的硬件。讓你有機會製造無限量的複製品或者創造「進化版」。