這篇文章來源于DevicePlus英語網站的翻譯稿。在之前的一篇指南中,我們介紹了Arduino Uno以及基于該平臺的可編程開發板和擴展板系列。但是如果沒有軟件,硬件將沒有任何作用。本指南將向您展示如何設置Arduino IDE、連接您的開發板以及上傳您的第一個草圖。
詞匯表
首先,我們定義一些您將在本指南中以及在未來項目中看到的術語:
● 集成開發環境(IDE):該術語指用于開發程序的軟件,其中包括代碼編輯器以及調試工具、軟件模板和其他編輯代碼所需要的工具。Arduino IDE簡稱為Arduino或Arduino軟件。
● 草圖:在Arduino開發板上運行的程序被稱為“草圖”。這些程序很簡單,可以在開發板上持續運行,即使在您將其與計算機斷開連接后也會繼續運行。
● Arduino 語言:Arduino編程語言是一組C/C++函數,如果您習慣于使用C/C++進行編碼,那么您會發現使用該編程語言非常自如。您可以點擊此處查看Arduino特定功能的相關信息。
設置 IDE
首先,請在此處下載適用于您的操作系統的Arduino IDE。在本指南中,我們使用的是Windows系統。下載后運行安裝程序,并按照向導安裝必要的組件。在設置過程中,您還會被要求安裝USB驅動程序,這將使您的計算機與Uno(或其他任何開發板)之間能夠進行通信。
安裝完成后,啟動Arduino IDE。您會看到像下面那樣的屏幕。
您可以在此處編寫代碼,然后將其上傳到您的Arduino。空白草圖包括兩個函數,它們是每個Arduino草圖的核心部分:setup() 和 loop()。當Arduino打開時,setup()函數中的代碼將被運行一次。只要設備被啟動,loop()中的所有內容都會被重復執行。
在上傳草圖之前,您需要確保IDE可以和您的開發板之間進行正確通信。在Tools > Board下,確認選擇了您的Arduino特定型號。在本指南中,我們使用的是“Arduino Uno”。接下來,在Tools > Port 下,選擇連接到開發板的COM端口。如果您的驅動程序安裝正確,它旁邊將顯示您的開發板名稱。如果沒有,請按照這些說明手動安裝開發板的驅動程序。
如果您更愿意在web端進行編碼(在使用多臺計算機來開發Arduino項目時會用到),您可以設置 Arduino Web Editor并安裝Arduino Create Plugin,以實現在Google Chrome或者Mozilla Firefox上編寫及上傳草圖。
Blink草圖
為了了解草圖的工作原理,我們將運行一個名為Blink的基本草圖。您不需要為該草圖進行任何特別的接線,運行該草圖是檢測您的Arduino是否工作正常的便捷方法。
Blink草圖內置于Arduino IDE。要打開它,請進入File > Examples > 01.Basics > Blink。這將在新窗口中打開簡版草圖。上傳后,該草圖將使開發板上的橙色LED進行周期性閃爍。
要上傳草圖,請將Arduino插入您的計算機中,然后點擊“Sketch > Upload”或按下“Ctrl-U”鍵。草圖上傳完成后,Uno上標有“L”的橙色LED將開始以每秒一次的頻率進行閃爍。
恭喜您!您已經成功上傳了第一個草圖。
修改Blink草圖
既然您已經知道Blink草圖是用來干什么的了,我們可以回過頭來看看它是如何工作的,還可以對其進行一些調整。首先,讓我們看一下代碼中的setup()部分:
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
這部分代碼僅運行一次,用來初始化Arduino板上的LED。pinMode() 函數使您能夠將引腳分配為輸入或輸出。Arduino Uno有14個可用作輸入或輸出的數字引腳。但是,該草圖使用的是內置LED,所以引腳已經指定好了。因此,這行代碼將LED指定為輸出。
接下來,我們來看一下loop()函數中的內容。
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
只要Arduino啟動,該代碼就會被運行。這部分有四行代碼。第一行使用了digitalWrite()函數,將引腳(在本例中為內置LED)分配為高電平或低電平。對于該代碼,您可以將其視為開啟或關閉。當引腳設置為高電平時,Arduino Uno將引入5V電流通過LED,使其點亮。當引腳設置為低電平時,Uno將把電壓降至0V,LED關閉。
因此,循環代碼中的第一行用于打開LED。下一個函數是delay()。這個函數的作用和它的名稱含義一樣。它會使草圖停滯等待一段時間,不執行任何操作。delay()函數以毫秒為單位。因為該草圖告訴Uno延遲1000毫秒,所以LED將會保持亮起1秒。
第三行和第四行會以相反的順序重復執行以上操作。第三行將LED引腳設置為低電平,將其關閉,第四行使程序等待1秒。通過循環該過程,LED將閃爍1秒,關閉1秒,然后循環往復,從而在通電的情況下一直閃爍。
現在您已經了解了該草圖的工作原理了,可以嘗試對腳本進行修改來獲得不同的效果。您可以將delay()間隔設置為100毫秒來實現燈光快速閃爍的效果。您還可以刪除掉關閉LED的代碼,讓燈光始終保持亮起的狀態。
在編寫草圖時,內置LED是一個特別有用的工具。因為如果您的程序失敗,Arduino并不能總是提供足夠的反饋。您可以使用LED來診斷草圖是否可以正常工作,例如在草圖成功運行的時候LED可以被點亮,或者草圖運行失敗的時候LED會發生閃爍。雖然僅僅有LED閃爍這樣的信息可能看起來并不夠,但是在更大的項目中這將會非常有用。
DevicePlus 編輯團隊
設備升級版適用于所有熱愛電子和機電一體化的人。
-
編程
+關注
關注
88文章
3618瀏覽量
93770 -
IDE
+關注
關注
0文章
338瀏覽量
46774 -
開發板
+關注
關注
25文章
5064瀏覽量
97587 -
Arduino
+關注
關注
188文章
6471瀏覽量
187213
發布評論請先 登錄
相關推薦
評論