什么是Arduino,為什么它已經(jīng)成為教育和原型的非正式標(biāo)準(zhǔn)?
每個(gè)科技愛好者至少都聽說過Arduino,因?yàn)樗莫?dú)特特性使它越來越受歡迎。如今,由愛好者建立和發(fā)展起來的Arduino公司甚至正在為生產(chǎn)微控制器或評(píng)估板的大公司制定連接器和信號(hào)分配的標(biāo)準(zhǔn)。什么是Arduino,為什么它已經(jīng)成為教育和原型的非正式標(biāo)準(zhǔn)?最后,Arduino的類型是什么,我們能用它做什么,如何將它用于我們自己的需要?
Arduino-新手程序員的最佳選擇
如果我們的目標(biāo)是學(xué)習(xí)如何編程微控制器,那么Arduino平臺(tái)是個(gè)完美的選擇。同樣的,如果我們是技術(shù)愛好者,有一個(gè)想法,并想要快速創(chuàng)造一個(gè)基于微控制器和標(biāo)準(zhǔn)外圍設(shè)備的設(shè)備,例如字母數(shù)字顯示器、圖形顯示器、LED、帶按鈕或沒有按鈕的液晶顯示器、傳感器、傳輸模塊、馬達(dá)和電磁閥驅(qū)動(dòng)器等等。這個(gè)Arduino平臺(tái)也是有用的,當(dāng)我們想要生產(chǎn)一個(gè)短系列的設(shè)備,與微控制器作為“心臟”的單位,不一定與Arduino擴(kuò)展模塊工作。
阿迪諾-怎么了?
什么是阿迪諾?它不僅僅是單板計(jì)算機(jī)(通常,當(dāng)我們說“Arduino”時(shí),我們只指那個(gè)板),但是一個(gè)基于易于使用的設(shè)備和軟件的完整平臺(tái)。重要的是,它是一個(gè)開放源碼類型的平臺(tái),它提供對(duì)免費(fèi)的、詳細(xì)的文檔以及圖表和程序源代碼的訪問。通常,一種基于Arduino平臺(tái)由一個(gè)帶有微控制器的原型板和一個(gè)稱為屏蔽的擴(kuò)展模塊組成。
大部分Arduino原型板有一個(gè)USB接口,用來用PC機(jī)編程。微控制器信號(hào)被傳送到帶擴(kuò)展模塊的插座或焊點(diǎn)。由于板是作為微型模塊提供的,有時(shí)我們會(huì)把它們稱為“Arduino微控制器”或“Arduino單板計(jì)算機(jī)”。
Arduino編程
Arduino編程語(yǔ)言具有與C++語(yǔ)言密切相關(guān)的語(yǔ)法,在微控制器程序員中非常流行。一個(gè)強(qiáng)大的資產(chǎn)Arduino編程環(huán)境它提供了大量的庫(kù),這些庫(kù)為創(chuàng)建一個(gè)程序和世界各地的用戶開發(fā)的無數(shù)應(yīng)用程序提供了便利。此外,無論用于什么目的,編程環(huán)境都是容易訪問的。原型板本身也是如此--如果我們不想購(gòu)買它,我們可以根據(jù)現(xiàn)有的文件自行創(chuàng)建它。
阿迪諾的短暫歷史
Arduino的想法是在意大利的IveraInteractiveDesignInstitute中提出的。。Arduino平臺(tái)的目的是讓以前不熟悉電子或編程的學(xué)生快速創(chuàng)建原型和學(xué)習(xí)編程技能。創(chuàng)作者阿迪諾有一個(gè)絕妙的想法,因?yàn)樗麄兊挠?jì)劃不僅在學(xué)術(shù)領(lǐng)域,而且還在超越它,幫助許多人快速學(xué)習(xí)或?qū)嵤┧麄冏约旱南敕ā?/p>
在走出大學(xué)環(huán)境,得到更多用戶的認(rèn)可后,Arduino平臺(tái)必須適應(yīng)新的挑戰(zhàn),滿足新的需求。同時(shí),原型板的組合非常多樣化,不僅包括簡(jiǎn)單的8位單元,而且還包括更復(fù)雜的設(shè)備,用于3D打印機(jī)、物聯(lián)網(wǎng)設(shè)備、便攜式設(shè)備和其他要求更高的應(yīng)用程序。全Arduino板基于開源許可條款,允許用戶自己制作并自由調(diào)整。該軟件也是開源的,正在開發(fā)中,這要?dú)w功于世界各地用戶的輸入。
為什么是阿迪諾?
幾年前,每個(gè)評(píng)估委員會(huì)或微控制器生產(chǎn)商都有自己的連接器標(biāo)準(zhǔn)?,F(xiàn)在,他們中的大多數(shù)人都是按照Arduino提出的非正式“標(biāo)準(zhǔn)”來調(diào)整自己的。主要原因除了阿迪諾本身,最有可能的是廣泛的擴(kuò)展模塊的可用性(也就是屏蔽-參見這里)。如果評(píng)估板的輸出與Arduino輸出一致,用戶可以自由地利用Arduino擴(kuò)展的巨大功能,從而能夠輕松、廉價(jià)和快速地實(shí)現(xiàn)原型的功能。它還有利于評(píng)價(jià)板制造商,因?yàn)樗F(xiàn)在可以集中精力于微控制器本身的應(yīng)用,只向它提供一套最低限度的合作組件,這反過來又使最終價(jià)格得以降低。
由于它的易用性、可用性以及用戶的不同需求,在通過使用Arduino實(shí)現(xiàn)的項(xiàng)目中,人們可以為幾乎任何設(shè)備找到許多問題和想法的解決方案。它們可以直接使用,也可以作為參考。應(yīng)用程序創(chuàng)建軟件(Arduino IDE)非常容易使用,甚至對(duì)于初學(xué)者來說也是如此,同時(shí)也非常靈活,為更高級(jí)的用戶提供了許多機(jī)會(huì)。它可以在MacOS、Windows和Linux操作系統(tǒng)下啟動(dòng),因此它可以提供給具有不同硬件偏好和經(jīng)濟(jì)可能性的用戶。
不可能統(tǒng)計(jì)所有的Arduino應(yīng)用程序,因?yàn)樗粚I(yè)人士和愛好者熱切地使用。學(xué)生和教師使用Arduino制造廉價(jià)的測(cè)量設(shè)備,不僅用于測(cè)量電的值,而且也用于為化學(xué)和物理實(shí)驗(yàn)設(shè)計(jì)的設(shè)備。它被世界各地學(xué)校的編程老師使用。設(shè)計(jì)師和建筑師與Arduino一起創(chuàng)建交互式建筑原型。音樂家和藝術(shù)家進(jìn)行互動(dòng)的藝術(shù)裝置和實(shí)驗(yàn)的新型樂器。對(duì)許多人來說,Arduino平臺(tái)是學(xué)習(xí)新技能的關(guān)鍵工具。每個(gè)人都可以使用它:兒童、愛好者、藝術(shù)家、程序員、設(shè)計(jì)工程師和許多其他人。每個(gè)人都可以按照一步一步的指令建立一個(gè)設(shè)備,并在網(wǎng)上與Arduino社區(qū)的其他成員分享他們的想法。
選擇哪一個(gè)阿迪諾?
通常,為了創(chuàng)建一個(gè)基于Arduino平臺(tái)的原型或設(shè)備,需要一個(gè)原型板,配備適合我們需要的微控制器類型,一個(gè)擴(kuò)展模塊,即一個(gè)屏蔽模塊、Arduino IDE軟件、一個(gè)USB電纜、一個(gè)電源單元和一個(gè)PC機(jī)。目前,生態(tài)系統(tǒng)包括多種。Arduino類型,具有不同的微控制器和大量的擴(kuò)展模塊。示例模塊如圖1所示(…)。3.
根據(jù)型號(hào)的不同,Arduino板配備了用于金引腳或焊點(diǎn)的連接器--插座,如果Arduino微型計(jì)算機(jī)發(fā)揮中央單元的作用,則不僅可以用來連接板,還可以將其安裝在嵌入式設(shè)備的印刷電路板上。每個(gè)板都有一個(gè)引導(dǎo)加載程序,保存在其微控制器內(nèi)存中。通過從Arduino IDE菜單中選擇選項(xiàng),引導(dǎo)加載程序用于“在線式”處理器的編程(而不從系統(tǒng)中對(duì)其進(jìn)行解壓)。
表中列出了Arduino原型板的當(dāng)前列表。它們大多使用AVR核心微控制器,但配備英特爾處理器的解決方案,以及配備ARM Cortex-M0+核的SAM 21也是可用的。該表不包括帶有Espressif系統(tǒng)內(nèi)核(如流行的ESP 8266)的板,也可以用Arduino IDE編程。在選擇一塊板時(shí),應(yīng)該考慮到它的微控制器的特點(diǎn)。各個(gè)單元在可用內(nèi)存存儲(chǔ)、核心速度或功能塊(如:接口、計(jì)時(shí)器、PMW發(fā)電機(jī)等)方面存在差異。同樣值得注意的是板的輸出,因?yàn)槠渲幸恍﹩卧獩]有連接器--相反,它們是為焊接而設(shè)計(jì)的。
表1:目前提供的Arduino董事會(huì)名單
Arduino Nano、Arduino UNO和其他人
Arduino提供的廉價(jià)板和免費(fèi)編程環(huán)境是市場(chǎng)上許多其他評(píng)估平臺(tái)的一個(gè)很好的替代方案,例如由微控制器制造商提供。文檔和開放源碼的提供允許對(duì)平臺(tái)進(jìn)行獨(dú)立的修改,并對(duì)其進(jìn)行調(diào)整以滿足自己的需要。完整的Arduino板是一個(gè)合理的價(jià)格。對(duì)于初學(xué)者來說,Arduino Uno是一個(gè)很好的起點(diǎn)。它配備了一個(gè)標(biāo)準(zhǔn)的USB連接器,它可以方便地將電路板與PC計(jì)算機(jī)連接起來,只需一次快速點(diǎn)擊即可上傳軟件。安裝在板上的ATMEGA 328微控制器具有足夠的內(nèi)存、存儲(chǔ)和硬件資源,可以執(zhí)行許多控制應(yīng)用程序。CPU時(shí)鐘速度(頻率)為16 MHz,機(jī)器周期為62.5納秒,用于單片機(jī)的AVR核心在單個(gè)機(jī)器周期中執(zhí)行大部分指令。有了更多的經(jīng)驗(yàn)和熟練程度,人們可以選擇其他變體,如Arduino Deit,Mega 2560和其他。Arduino Nano型號(hào)是更大電路的小型化版本,但沒有例如穩(wěn)壓器或全尺寸USB端口。然而,Nano配備了與Uno板相同的8位處理器,但其整體尺寸要小得多。在納米系列的情況下,PCB的尺寸是18毫米乘45毫米!同樣重要的是,盡管硬件發(fā)生了變化,但仍然可以使用相同的編程環(huán)境。
通常,單片機(jī)的編程是通過USB接口完成的。為了使Arduino USB接口與我們的操作系統(tǒng)工作,需要一個(gè)適當(dāng)?shù)目刂破???刂破饔刹僮飨到y(tǒng)在板連接和引導(dǎo)加載程序加載后安裝。最初的Arduino IDE是在考慮Windows的情況下開發(fā)的,因此大多數(shù)引導(dǎo)程序都可用于Windows,其中只有一部分是根據(jù)其他操作系統(tǒng)進(jìn)行調(diào)整的。如果一臺(tái)計(jì)算機(jī)與MacOS或Linux一起工作,那么在我們決定購(gòu)買之前,應(yīng)該檢查Arduino原型板與我們系統(tǒng)的兼容性。
最后,讓我們提到Arduino用戶網(wǎng)頁(yè),可以在這個(gè)地址https://www.arduino.cc/,上找到當(dāng)前版本的程序、各種應(yīng)用程序、用戶論壇和數(shù)據(jù)庫(kù)。在頁(yè)面上,我們還可以找到Arduino板的圖表和電參數(shù),描述和帶有參數(shù)的數(shù)據(jù)表,包括Arduino Uno R3的描述推薦給初學(xué)者。我們提供了大量的擴(kuò)展模塊,還有許多應(yīng)用程序的例子可在其他互聯(lián)網(wǎng)站點(diǎn)上使用。
-
微控制器
+關(guān)注
關(guān)注
48文章
7454瀏覽量
150850 -
單片機(jī)
+關(guān)注
關(guān)注
6030文章
44489瀏覽量
631960 -
cpu
+關(guān)注
關(guān)注
68文章
10804瀏覽量
210824 -
Arduino
+關(guān)注
關(guān)注
187文章
6457瀏覽量
186501
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論