【Arduino 必看】Arduino的優勢以及未來趨勢詳解
Arduino是一款便捷靈活、方便上手的開源電子原型平臺。包含硬件(各種型號的Arduino板)和軟件(Arduino IDE)。由一個歐洲開發團隊于2005年冬季開發。其成員包括Massimo Banzi、David CuarTIelles、Tom Igoe、Gianluca MarTIno、David Mellis和Nicholas ZambetTI等。
它構建于開放原始碼simple I/O介面版,并且具有使用類似Java、C語言的Processing/Wiring開發環境。主要包含兩個主要的部分:硬件部分是可以用來做電路連接的Arduino電路板;另外一個則是Arduino IDE,你的計算機中的程序開發環境。你只要在IDE中編寫程序代碼,將程序上傳到Arduino電路板后,程序便會告訴Arduino電路板要做些什么了。
arduino是什么?
Arduino能通過各種各樣的傳感器來感知環境,通過控制燈光、馬達和其他的裝置來反饋、影響環境。板子上的微控制器可以通過Arduino的編程語言來編寫程序,編譯成二進制文件,燒錄進微控制器。對Arduino的編程是通過 Arduino編程語言 (基于 Wiring)和Arduino開發環境(基于 Processing)來實現的。基于Arduino的項目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上運行的軟件,他們之間進行通信 (比如 Flash, Processing, MaxMSP)來實現。
Arduino功能特點有什么?
Arduino在開發之初,就明確了其應用環境,設計了開源開放的平臺,便于對其進行二次開發。Arduino的主要功能特點如下:
1)開放源代碼的電路圖設計。程序開發接口免費下載,也可依需求自己修改。
2)使用低價格的微處理控制器(ATmega8或ATmega128)。可以采用USB接口供電,不需外接電源,也可以使用外部9VDC輸入。
3)支持ISP線上燒入器,將Bootloader固件燒入芯片。Arduino控制器內帶Bootloader程序,是系統上電后運行的第一段代碼,就好比PC機BIOS中的程序,啟動就進行自檢,配置端口等等,當然,單片機是靠燒寫熔絲位來設定上電從boot區啟動的,使用這個程序就可以直接把從串口發來的程序存放到flash區中。所以,使用Arduino編譯環境下載程序時,就先讓單片機復位,啟動Boodoader程序引導串口發過來的程序順利寫入flash區中,flash可以重復燒寫,因此想更新軟件非常方便。有了Bootloader之后,可以通過串口或者USB to RS232線更新固件。
4)可依據官方提供的PCB和SCH電路圖,簡化Arduino模組,完成獨立運作的微處理控制。
5)可簡單地與傳感器,各式各樣的電子元件連接,如紅外線、超音波、熱敏電阻、光敏電阻、伺服馬達等。
6)支持多樣的互動程序,如Flash,Max/MSP,VVVV,PurEDAta,C,Processin等。使用低價格的微處理控制器。
7)應用方面,利用hrduino,突破以往只能使用鼠標、鍵盤、CCD等輸入的裝置的互動內容,可以更簡單地達成單人或多人游戲互動。Ard uino的功能特點,使其得到了越來越廣泛的應用。
Arduino基本結構?
1)1個9V DC輸入,為Arduino板提供外部電源輸出,使Arduino控制板具有能夠驅動舵機等大功率外部設備的能力;
2)1個USB口,通過該口連接到計算機,由Arduino的IDE將用戶編寫好的控制程序上傳到控制板中,同時還可以通過該口為電路板供電,驅動小功率的外部設備;
3)14個數字輸入/輸出端,其中端口0(RX)和1(TX)分別連接主控芯片的串行引腳,用來接收和發送TTL串行數據。其中端口2、3可以接收外部信號,實現外部中斷功能;端口3、5、6、9、10、11作為PWM端口,可用于電機PWM調速[5]或音樂播放;端口10(SS)、11(MOSI)、12(MISO)和13(SCK)在SPI模塊庫的支持下,可以提供SPI通信模式;端口13內部連接了一個LED指示燈,隨著13腳上電平的高低變化,實現開啟和關閉;
4)6個模擬輸入/輸出端,其中端口4(SDA)和端口5(SCL)端口可以實現I2C通信;
5)1個5 V DC輸出和1個3.3 V DC輸出,可為其它電路提高3.3 V和5 V直流電源;
6)1個復位接口。
Arduino系統是基于單片機開發的,并且大量應用通用和標準的電子元器件,包括硬件和軟件在內的整個設計,代碼均采用開源方式發布,因此采購的成本較低,在各種電子制作競賽、電子藝術品創意設計等越來越多地使用Arduino作為開發平臺。
Arduino有什么優點?
1)跨平臺
Arduino IDE可以在Windows、Macintosh OSX、Linux三大主流操作系統上運行,而其他的大多數控制器只能在Windows上開發。
2)簡單清晰的開發
Arduino IDE基于processing IDE開發。對于初學者來說,極易掌握,同時有著足夠的靈活性。Arduino語言基于wiring語言開發,是對 AVRGCC庫的二次封裝,不需要太多的單片機基礎、編程基礎,簡單學習后,你也可以快速的進行開發。
3)開放性
Arduino的硬件原理圖、電路圖、IDE軟件及核心庫文件都是開源的,在開源協議范圍內里可以任意修改原始設計及相應代碼。
4)社區與第三方支持
Arduino有著眾多的開發者和用戶,你可以找到他們提供的眾多開源的示例代碼、硬件設計。例如,可以在Github.com、Arduino.cc、Openjumper.com等網站找到Arduino第三方硬件、外設、類庫等支持,更快更簡單的擴展你的Arduino項目。
當然,一些的理論,都要通過實踐來驗證、實現,推薦一個平臺:
https://auth.tuya.com/?_source=32fe8c33b5a2a7c071f562063e20fd8a
_source=32fe8c33b5a2a7c071f562063e20fd8a
還在學校的時候就用它開發過不少作品,平臺上還有sdk和電路原理圖可以查看,自己DIY智能硬件非常方便,如果你在學習的時候,就能借助平臺開發一些作品,對你之后不管是面試求職還是進一步做研究,都是非常有幫助的!
硬件開發的發展趨勢:
Arduino不僅僅是全球最流行的開源硬件,也是一個優秀的硬件開發平臺,更是硬件開發的趨勢。Arduino簡單的開發方式使得開發者更關注創意與實現,更快的完成自己的項目開發,大大節約了學習的成本,縮短了開發的周期。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。