寫在前面,首先是發現有網友對Arduino做了介紹,而且介紹比較清晰到位,就引用過來了。 文章出處:https://blog.csdn.net/TonyIOT/article/details/80912008
提綱:
- 什么是Arduino
- Arduino的優勢
- Arduino開發板類型
- Arduino開發語言
- Arduino開發環境
什么是Arduino
Arduino 是一款便捷靈活、方便上手的開源電子原型平台,包含硬件(各種型號的arduino板)和軟件(arduino IDE),她適用於藝術家、設計師、愛好者和對於“互動”有興趣的朋友們。
Arduino能通過各種各樣的傳感器來感知環境,通過控制燈光、馬達和其他的裝置來反饋、影響環境。板子上的微控制器可以通過Arduino的編程語言來編寫程序,編譯成二進制文件,燒錄進微控制器。
對Arduino的編程是利用 Arduino編程語言 (基於 Wiring)和Arduino開發環境(based on Processing)來實現的。基於Arduino的項目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上運行的軟件,他們之間進行通信 (比如 Flash, Processing, MaxMSP)來實現。
你可以自己動手制作,也可以購買成品套裝。Arduino所使用到的軟件都可以免費下載。硬件參考設計 (CAD 文件)也是遵循availableopen-source協議, 你可以非常自由地根據要求去修改他們。
Arduino的優勢
目前市場上還有許多其他的單片機和單片機平台,例如51單片機、STM32單片機等。但他們對於普通開發者來說門檻相對較高,需要有一定編程和硬件相關基礎,內部寄存器較為繁雜,主流開發環境Keil配置相對麻煩,特別是對於STM32的開發,即使使用官方庫也少不了環境配置,還有就是開發環境是收費的。
Arduino不但簡化了使用單片機工作的流程,同時還為教師、學生以及興趣愛好者提供了一些其他系統不具備的優勢:
- 便宜。相比於其他單片機平台而言,Arduino生態的各種開發板性價比相對較高。
- 跨平台。Arduino軟件(IDE)能在Windows、Mac OS X和Linux操作系統中運行,而大多數其他單片機系統僅限於在Windows操作系統中運行。
- 開發環境簡單。Arduino的編程環境易於初學者使用,同時對高級用戶來講也足夠靈活,其安裝和操作都非常簡單。
- 開源可擴展。Arduino軟件硬件都是開源的,開發者可以對軟件庫進行擴展,也可以下載到千千萬萬的軟件庫來實現自己的功能。Arduino允許開發者對硬件電路進行修改和擴展來滿足不同的需求。
Arduino開發板類型
Arduino生態包括多種開發板、模塊、擴展板、工具和配件。官方將其大致分為五類:入門級、網絡版、物聯網版、教育版、可穿戴版。具體可從官網查看Arduino開發板類型。

其中入門級開發板易於使用。建議初學者使用入門級如Arduino UNO R3。
入門級
使用入門級產品開始使用Arduino:易於使用並隨時為您的第一個創意項目提供支持。這些電路板和模塊是開始學習和修補電子和編碼的最佳選擇。StarterKit包含一本包含15個教程的書,可以引導您完成復雜項目的基礎知識。

增強功能


物聯網


教育版

穿戴式

淘汰版本



Arduino開發語言
Arduino使用C/C++編寫程序,雖然C++兼容C語言,但這是兩種語言,C語言是一種面向過程的編程語言,C++是一種面向對象的編程語言。早期的Arduino核心庫使用C語言編寫,后來引進了面向對象的思想,目前最新的Arduino核心庫采用C與C++混合編寫而成。
通常我們說的Arduino語言,是指Arduino核心庫文件提供的各種應用程序編程接口(Application Programming Interface,簡稱API)的集合。這些API是對更底層的單片機支持庫進行二次封裝所形成的。例如,使用AVR單片機的Arduino的核心庫是對AVR-Libc(基於GCC的AVR支持庫)的二次封裝。
傳統開發方式中,需要通過配置多個寄存器來實現相應功能,而在Arduino中,繁雜的寄存器被封裝成簡單的API,能進行直觀控制,增強程序的可讀性的同時也提高了開發效率。
Arduino開發環境

