Can you summarize the following document?
        
  使用 Atmel AVR 微控制器,採用開源的軟硬體平臺,構建於開源 simple I/O 介面板,並具有使用類似 Java、C 語言的 Processing/Wiring 開發環境。

  Arduino的核心開發團隊成員包括:馬西莫·班齊(Massimo Banzi)、大衛·奎提耶斯(David Cuartielles)、湯姆·伊果(Tom Igor)、贊布羅塔·馬提諾(Gianluca Martino)、大衛·梅利斯(David Mellis)和尼可拉斯·蘭比提(Nicholas Zambetti)。  據說馬西莫·班齊之前是義大利Ivrea一家高科技設計學校的老師。他的學生們經常抱怨找不到便宜好用的微控制器。2005年冬天,馬西莫·班齊跟大衛·奎提耶斯討論了這個問題。大衛·奎提耶斯是一個西班牙籍晶片工程師,當時在這所學校做訪問學者。兩人決定設計自己的電路板,並引入了馬西莫·班齊的學生大衛·梅利斯為電路板設計程式語言。兩天以後,大衛·梅利斯就寫出了程式碼。又過了三天,電路板就完工了。這塊電路板被命名為Arduino。幾乎任何人,即使不懂電腦程式設計,也能用Arduino做出很酷的東西,比如對感測器作出迴應,閃爍燈光,還能控制馬達。隨後馬西莫·班齊、大衛·奎提耶斯和大衛·梅利斯把設計圖放到了網上。保持設計的開放原始碼理念,因為版權法可以監管開源軟體,卻很難用在硬體上,他們決定採用共享創意許可。共享創意是為保護開放版權行為而出現的類似GPL的一種許可(license)。在共享創意許可下,任何人都被允許生產印刷電路板的複製品,還能重新設計,甚至銷售原設計的複製品。你不需要付版稅,甚至不用取得Arduino團隊的許可。然而,如果你重新發布了引用設計,你必須說明原始Arduino團隊的貢獻。如果你調整或改動了電路板,你的最新設計必須使用相同或類似的共享創意許可,以保證新版本的Arduino電路板也會一樣的自由和開放。唯一被保留的只有Arduino這個名字。它被註冊成了商標。如果有人想用這個名字賣電路板,那他們可能必須付一點商標費用給Arduino的核心開發團隊成員。  贊布羅塔·馬提諾創立的Arduino Srl被2009年創立的Arduino LLC控告侵犯了他們的著作權,這第二家被控侵權的Arduino(也就是Arduino Srl),原先叫做Smart Projects Srl,以前是在義大利負責生產製造Arduino控制板的公司。而第一家Arduino(也就是我們較熟悉的Arduino LLC)則負責開發控制板,並管理周邊的開源專題與社群。在之前,原本雙方是合作的關係;2014年馬提諾與另外四位共同創辦人,對於Arduino品牌的發展方向意見不合,導致馬提諾另外請費德里科·穆斯托擔任Smart Projects的新執行長,並把公司名稱改為Arduino Srl。

  

  原始的Arduino硬體是從一間義大利公司Smart Projects製造有些Arduino硬體則是被官方授權由美國公司SparkFun Electronics和Adafruit Industries設計。。

  「Shields」擴充版能夠被插入Arduino和Arduino相容硬體。用途是增加Arduino硬體上沒有的功能,如馬達控制、GPS、有線網路、液晶顯示器或者是麵包板。使用者也可以自己動手做Shields擴充版。

  在Arduino上執行的程式可以使用任何能夠被編譯成Arduino機器碼的程式語言編寫。  而Atmel也提供了數個可以開發Atmel微處理機程式的整合開發環境,AVR Studio和更新的Atmel Studio。  目前微軟在其Visual Studio 也有提供Arduino 的 SDK,在編譯執行上更方便。

  而Arduino計劃也提供了Arduino Software IDE,一套以Java編寫的跨平臺應用軟體。Arduino Software IDE源自於Processing程式語言以及Wiring計劃的整合開發環境。它是被設計於介紹程式編寫給藝術家和不熟悉程式設計的人們,且包含了一個擁有語法突顯、括號匹配、自動縮排和一鍵編譯並將執行檔燒寫入Arduino硬體中的編輯器。  Arduino Software IDE使用與C語言和C++相仿的程式語言,並且提供了包含常見的輸入/輸出函式的Wiring軟體函式庫。在使用GNU toolchain編譯和連結後,Arduino Software IDE提供了一個程式「avrdude」用來轉換可執行檔成為能夠燒寫入Arduino硬體的韌體。

  使用Arduino Software IDE編寫的程式被稱為「sketch」。一個典型的Arduino C/C++ sketch程式會包含兩個函式,它們會在編譯後合成為main()函式:

  這是Arduino的Blink範例程式。  Arduino 程式可由五個部分組成: //1. 匯入函式庫與定義 (可有可無)  //2. 宣告常數與全域變數 (可有可無)  const float PI=3.14159; int r;  //3. 設定函式 (必要)  //4. 無限迴圈;(必要)  //5. 自訂函式 (可有可無)  float area(float r) {  其中 setup() 與 loop() 是一定要有的函式(均無引數無傳回值),其他則視需要而定。 Arduino 語言採用 C/C++ 語法,  加上以 Wiring 為基礎的電子設計核心函式庫組合而成,包括 Digital I/O, Analog I/O 等函式庫。內建的函式庫可直接呼叫,  但若有使用第三方函式庫(例如驅動感測器模組所需的函式庫),則必須使用 include 前置指令引入。此外,也可以用前置指令 define 定義一個常數或巨集(運算式)。  前置指令乃 C 編譯器指令,不屬於 C 語言本身,其用途有三:  所以前置指令的功能一言以蔽之就是替換,include 就是在標頭處以指定之檔案內容替換;而 define 就是在程式中用到所定義之常數與巨集名稱時,以其內容替換。  巨集的功能事實上與函式類似,不同之處是函式呼叫使用堆疊,而巨集則是直接放在原始碼中,執行效率較快(但若很多地方都要用到時,編譯後就會比較大)。  標頭檔可用角括號 < > 或雙引號 "",差別是用雙引號時,前置處理器會先從原始檔所在位置開始去搜尋標頭檔;而用角括號則會先從 libraries 目錄開始找。
Arduino是一家制作開源硬體和開源軟體的公司,同時兼有專案和使用者社群,該公司負責設計和製造單板微控制器和微控制器套件,用於構建數字裝置和互動式物件,以便在物理和數字世界中感知和控制物件。該專案的產品是按照GNU寬通用公共許可證(LGPL)或GNU通用公共許可證(GPL)許可的開源硬體和軟體分發的,Arduino允許任何人制造Arduino板和軟體分發。 Arduino板可以以預裝的形式商業銷售,也可以作為DIY套件購買。