天天看點

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

本節書摘來自異步社群《動手玩轉arduino》一書中的第2章,第2.1節,作者【澳】john boxall,譯者 翁恺,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

本章我們将研究arduino闆和ide軟體,我們要用ide軟體建立和上傳arduino程式到arduino闆(arduino用草圖表示程式,我們還是繼續用程式這個傳統術語)。我們會學到程式的基本架構和程式裡可以實作的基本功能,我們要建立和上傳我們的第一個程式。

簡而言之,arduino是一個微小計算機系統,可以由你程式設計來和各種形式的輸入和輸出做互動。最新型号的arduino闆,和普通人的手比起來是相當小的,如圖2-1所示。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

第一次見到這塊闆子你也許不會想到,arduino系統可以做出能與周圍環境互動的裝置。用上各種可能的輸入輸出器件:傳感器、訓示燈、顯示器、電機等,就可以程式設計實作精确的互動要求,創造出具有特定功能的裝置來。比如,藝術家可以做出一個裝置,當有人經過時,燈能以一定的模式閃爍;高中生可以做出自動機器人,能監測到火苗然後熄滅它;地理學家可以設計一個系統,能監視溫度和濕度,并把資料以短信的方式回傳到他們的辦公室。實際上,在網際網路上簡單搜尋一下,就能找到數量無窮的例子。

現在,我們繼續來詳細研究arduino uno這個硬體(換句話說,就是那個“實體的部分”),看看那上面都有些什麼。别太擔心不知道看到了什麼,所有這些都是要在後面的章節裡詳細讨論的。

我們快速浏覽一下uno這塊闆子。從闆子的左側開始,首先會看到兩個插座,如圖2-2所示。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

在圖最左邊的是通用串行總線(usb)插座。它把闆子和計算機連起來,起到3個作用:給闆子供電、把你的程式上傳到arduino和在闆子和計算機之間雙向傳遞資料。在圖右邊的是電源插座,通過這個插座,可以用常見的電源變壓器給arduino供電。

在闆子的中間偏下的,是這個闆子的心髒:單片機,如圖2-3所示。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

單片機是arduino的“大腦”。它是一個小型計算機,包含有執行指令的處理器、分别儲存資料和程式的不同類型的記憶體,它還具有多種發送和接收資料的方式。在單片機正下方有兩排小型插座,如圖2-4所示。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

左邊那排提供了電源連接配接,并能接一個外部的reset(重新開機)按鈕。右邊那排有6個模拟輸入端,可以測量電信号的電壓變化。另外,a4和a5引腳還被用作和其他器件發送和接收資料的引腳。在闆子的頂端還有另外兩排插座,如圖2-5所示。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

标有數字0~13的插座(或者叫作引腳)是數字輸入/輸出(i/o)引腳。它們既可以檢測電信号有還是沒有,也可以根據指令産生信号。引腳0和1也是序列槽,用來和其他器件發送和接收資料,和計算機之間就是由它們通過usb連接配接電路進行通信的。标有一個波浪号(~)的引腳可以産生變化的電信号,這種電信号可以用來做出燈光效果或控制電機。

接下來介紹闆上的一些非常有用的元件,它們叫做發光二極管(led),這種非常小的元件在有電流流過時會發光。arduino闆上有4個led。最右邊的那個标有on,是闆子的電源訓示燈,另外3個排在一起,如圖2-6所示。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

在arduino與通過序列槽或usb連接配接的裝置之間發送或接收資料時,标有tx和rx的led會亮。标有l的led是給你自己用的(它連接配接在數字輸入輸出引腳13上)。在這個led左邊的小的黑色方塊是一個微型單片機,它控制usb接口,讓你的arduino可以和計算機之間收發資料,不過,你不需要操心這個小晶片。

最後,如圖2-7所示的是reset按鈕。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

和普通的計算機一樣,有時候arduino也可能出問題,當一切都失效了的時候,可能要重置系統、重新開機arduino。闆上這個簡單的reset按鈕(見圖2-7)就是用來重新開機系統解決問題的。

arduino系統最大的優勢是它易于擴充,就是說,可以友善地加上更多的硬體功能。arduino闆兩側的插座,能夠插上一塊盾闆(shield),盾闆是一塊電路闆,它的引腳能直接插到arduino闆上。比如,如圖2-8所示的盾闆上有一個以太網接口,使arduino可以通過網絡和網際網路通信,這樣就能做出各種各樣的電子裝置。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

注意看,這個以太網盾闆也有兩行插座,這樣就可以在它上面插更多的盾闆。比如,如圖2-9所示,在一個以太網盾闆上插了另一塊盾闆,上面有大型數字顯示器、溫度傳感器、額外的資料存儲器和一個大型led。

《動手玩轉Arduino》——第2章 探索Arduino闆和IDE 2.1 Arduino闆

要小心,你需要記住每塊盾闆用了哪些輸入/輸出引腳,以避免多塊盾闆插在一起時産生沖突。也可以買到完全空白的盾闆,在上面搭建自己的電路。第8章會詳細解釋這個事情。

伴随着arduino硬體的是軟體,軟體是指令的集合,這些指令告訴硬體要做什麼、怎麼去做。需要用到兩種類型的軟體,第一種是內建開發環境(ide),本章會讨論ide,另一種是要我們自己來寫的ardiuno程式。

ide軟體裝在個人電腦上,用來編寫程式、發送程式到arduino闆。