什么是Arduino,為什么它已經(jīng)成為教育和原型的非正式標準?
每個科技愛好者至少都聽說過Arduino,因為它的獨特特性使它越來越受歡迎。如今,由愛好者建立和發(fā)展起來的Arduino公司甚至正在為生產(chǎn)微控制器或評估板的大公司制定連接器和信號分配的標準。什么是Arduino,為什么它已經(jīng)成為教育和原型的非正式標準?最后,Arduino的類型是什么,我們能用它做什么,如何將它用于我們自己的需要?
Arduino-新手程序員的最佳選擇
如果我們的目標是學習如何編程微控制器,那么Arduino平臺是個完美的選擇。同樣的,如果我們是技術愛好者,有一個想法,并想要快速創(chuàng)造一個基于微控制器和標準外圍設備的設備,例如字母數(shù)字顯示器、圖形顯示器、LED、帶按鈕或沒有按鈕的液晶顯示器、傳感器、傳輸模塊、馬達和電磁閥驅(qū)動器等等。這個Arduino平臺也是有用的,當我們想要生產(chǎn)一個短系列的設備,與微控制器作為“心臟”的單位,不一定與Arduino擴展模塊工作。
阿迪諾-怎么了?
什么是阿迪諾?它不僅僅是單板計算機(通常,當我們說“Arduino”時,我們只指那個板),但是一個基于易于使用的設備和軟件的完整平臺。重要的是,它是一個開放源碼類型的平臺,它提供對免費的、詳細的文檔以及圖表和程序源代碼的訪問。通常,一種基于Arduino平臺由一個帶有微控制器的原型板和一個稱為屏蔽的擴展模塊組成。
大部分Arduino原型板有一個USB接口,用來用PC機編程。微控制器信號被傳送到帶擴展模塊的插座或焊點。由于板是作為微型模塊提供的,有時我們會把它們稱為“Arduino微控制器”或“Arduino單板計算機”。
Arduino編程
Arduino編程語言具有與C++語言密切相關的語法,在微控制器程序員中非常流行。一個強大的資產(chǎn)Arduino編程環(huán)境它提供了大量的庫,這些庫為創(chuàng)建一個程序和世界各地的用戶開發(fā)的無數(shù)應用程序提供了便利。此外,無論用于什么目的,編程環(huán)境都是容易訪問的。原型板本身也是如此--如果我們不想購買它,我們可以根據(jù)現(xiàn)有的文件自行創(chuàng)建它。
阿迪諾的短暫歷史
Arduino的想法是在意大利的IveraInteractiveDesignInstitute中提出的。。Arduino平臺的目的是讓以前不熟悉電子或編程的學生快速創(chuàng)建原型和學習編程技能。創(chuàng)作者阿迪諾有一個絕妙的想法,因為他們的計劃不僅在學術領域,而且還在超越它,幫助許多人快速學習或?qū)嵤┧麄冏约旱南敕ā?/p>
在走出大學環(huán)境,得到更多用戶的認可后,Arduino平臺必須適應新的挑戰(zhàn),滿足新的需求。同時,原型板的組合非常多樣化,不僅包括簡單的8位單元,而且還包括更復雜的設備,用于3D打印機、物聯(lián)網(wǎng)設備、便攜式設備和其他要求更高的應用程序。全Arduino板基于開源許可條款,允許用戶自己制作并自由調(diào)整。該軟件也是開源的,正在開發(fā)中,這要歸功于世界各地用戶的輸入。
為什么是阿迪諾?
幾年前,每個評估委員會或微控制器生產(chǎn)商都有自己的連接器標準。現(xiàn)在,他們中的大多數(shù)人都是按照Arduino提出的非正式“標準”來調(diào)整自己的。主要原因除了阿迪諾本身,最有可能的是廣泛的擴展模塊的可用性(也就是屏蔽-參見這里)。如果評估板的輸出與Arduino輸出一致,用戶可以自由地利用Arduino擴展的巨大功能,從而能夠輕松、廉價和快速地實現(xiàn)原型的功能。它還有利于評價板制造商,因為它現(xiàn)在可以集中精力于微控制器本身的應用,只向它提供一套最低限度的合作組件,這反過來又使最終價格得以降低。
由于它的易用性、可用性以及用戶的不同需求,在通過使用Arduino實現(xiàn)的項目中,人們可以為幾乎任何設備找到許多問題和想法的解決方案。它們可以直接使用,也可以作為參考。應用程序創(chuàng)建軟件(Arduino IDE)非常容易使用,甚至對于初學者來說也是如此,同時也非常靈活,為更高級的用戶提供了許多機會。它可以在MacOS、Windows和Linux操作系統(tǒng)下啟動,因此它可以提供給具有不同硬件偏好和經(jīng)濟可能性的用戶。
不可能統(tǒng)計所有的Arduino應用程序,因為它被專業(yè)人士和愛好者熱切地使用。學生和教師使用Arduino制造廉價的測量設備,不僅用于測量電的值,而且也用于為化學和物理實驗設計的設備。它被世界各地學校的編程老師使用。設計師和建筑師與Arduino一起創(chuàng)建交互式建筑原型。音樂家和藝術家進行互動的藝術裝置和實驗的新型樂器。對許多人來說,Arduino平臺是學習新技能的關鍵工具。每個人都可以使用它:兒童、愛好者、藝術家、程序員、設計工程師和許多其他人。每個人都可以按照一步一步的指令建立一個設備,并在網(wǎng)上與Arduino社區(qū)的其他成員分享他們的想法。
選擇哪一個阿迪諾?
通常,為了創(chuàng)建一個基于Arduino平臺的原型或設備,需要一個原型板,配備適合我們需要的微控制器類型,一個擴展模塊,即一個屏蔽模塊、Arduino IDE軟件、一個USB電纜、一個電源單元和一個PC機。目前,生態(tài)系統(tǒng)包括多種。Arduino類型,具有不同的微控制器和大量的擴展模塊。示例模塊如圖1所示(…)。3.
根據(jù)型號的不同,Arduino板配備了用于金引腳或焊點的連接器--插座,如果Arduino微型計算機發(fā)揮中央單元的作用,則不僅可以用來連接板,還可以將其安裝在嵌入式設備的印刷電路板上。每個板都有一個引導加載程序,保存在其微控制器內(nèi)存中。通過從Arduino IDE菜單中選擇選項,引導加載程序用于“在線式”處理器的編程(而不從系統(tǒng)中對其進行解壓)。
表中列出了Arduino原型板的當前列表。它們大多使用AVR核心微控制器,但配備英特爾處理器的解決方案,以及配備ARM Cortex-M0+核的SAM 21也是可用的。該表不包括帶有Espressif系統(tǒng)內(nèi)核(如流行的ESP 8266)的板,也可以用Arduino IDE編程。在選擇一塊板時,應該考慮到它的微控制器的特點。各個單元在可用內(nèi)存存儲、核心速度或功能塊(如:接口、計時器、PMW發(fā)電機等)方面存在差異。同樣值得注意的是板的輸出,因為其中一些單元沒有連接器--相反,它們是為焊接而設計的。
表1:目前提供的Arduino董事會名單

Arduino Nano、Arduino UNO和其他人
Arduino提供的廉價板和免費編程環(huán)境是市場上許多其他評估平臺的一個很好的替代方案,例如由微控制器制造商提供。文檔和開放源碼的提供允許對平臺進行獨立的修改,并對其進行調(diào)整以滿足自己的需要。完整的Arduino板是一個合理的價格。對于初學者來說,Arduino Uno是一個很好的起點。它配備了一個標準的USB連接器,它可以方便地將電路板與PC計算機連接起來,只需一次快速點擊即可上傳軟件。安裝在板上的ATMEGA 328微控制器具有足夠的內(nèi)存、存儲和硬件資源,可以執(zhí)行許多控制應用程序。CPU時鐘速度(頻率)為16 MHz,機器周期為62.5納秒,用于單片機的AVR核心在單個機器周期中執(zhí)行大部分指令。有了更多的經(jīng)驗和熟練程度,人們可以選擇其他變體,如Arduino Deit,Mega 2560和其他。Arduino Nano型號是更大電路的小型化版本,但沒有例如穩(wěn)壓器或全尺寸USB端口。然而,Nano配備了與Uno板相同的8位處理器,但其整體尺寸要小得多。在納米系列的情況下,PCB的尺寸是18毫米乘45毫米!同樣重要的是,盡管硬件發(fā)生了變化,但仍然可以使用相同的編程環(huán)境。
通常,單片機的編程是通過USB接口完成的。為了使Arduino USB接口與我們的操作系統(tǒng)工作,需要一個適當?shù)目刂破???刂破饔刹僮飨到y(tǒng)在板連接和引導加載程序加載后安裝。最初的Arduino IDE是在考慮Windows的情況下開發(fā)的,因此大多數(shù)引導程序都可用于Windows,其中只有一部分是根據(jù)其他操作系統(tǒng)進行調(diào)整的。如果一臺計算機與MacOS或Linux一起工作,那么在我們決定購買之前,應該檢查Arduino原型板與我們系統(tǒng)的兼容性。
最后,讓我們提到Arduino用戶網(wǎng)頁,可以在這個地址https://www.arduino.cc/,上找到當前版本的程序、各種應用程序、用戶論壇和數(shù)據(jù)庫。在頁面上,我們還可以找到Arduino板的圖表和電參數(shù),描述和帶有參數(shù)的數(shù)據(jù)表,包括Arduino Uno R3的描述推薦給初學者。我們提供了大量的擴展模塊,還有許多應用程序的例子可在其他互聯(lián)網(wǎng)站點上使用。
-
微控制器
+關注
關注
48文章
8246瀏覽量
162165 -
單片機
+關注
關注
6074文章
45324瀏覽量
663059 -
cpu
+關注
關注
68文章
11213瀏覽量
222789 -
Arduino
+關注
關注
190文章
6514瀏覽量
195862
發(fā)布評論請先 登錄
ADO程序員指南
程序員需要學什么,微軟資深程序員學習手冊面試寶典資料
“菜鳥”程序員和“大神”程序員到底有什么區(qū)別
程序員如何定義
程序員的行業(yè)選擇
菜鳥程序員和大神程序員的差距
什么是程序員
優(yōu)秀程序員與糟糕程序員的變現(xiàn)差異
程序員的類型
Shield Arduino程序員ISP ATtiny 85開源
Attiny85 Arduino Uno程序員

什么是Arduino,新手程序員的最佳選擇
評論