• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

【Arduino入門】NO.1,使Arduino的內(nèi)置LED閃爍

2018/06/27
62
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

adafruit-arduino-lesson-1-blink.pdf

共2個(gè)文件

在本課中,您將學(xué)習(xí)如何編程Arduino以使Arduino的內(nèi)置LED閃爍。

材料清單

  • Arduino Uno R3 1塊
  • USB引線 - 類型A到B 1根

Arduino有兩排連接器,用于連接電子設(shè)備和插入式“屏蔽層”,使Arduino能夠做得更多。

然而,Arduino也有一個(gè)LED,你可以從你的草圖中控制。 該LED內(nèi)置于Arduino板上,通常稱為“L”LED,因?yàn)檫@是它在電路板上的標(biāo)記。

這個(gè)LED的位置在下面的Arduino Uno和Leonardo的圖片上以紅色圈出。

learn_arduino_uno_r3_L_circled.jpg

您可能會(huì)發(fā)現(xiàn),將Arduino電路板的“L”LED連接到USB插頭時(shí),它已經(jīng)閃爍。 這是因?yàn)锳rduino主板通常會(huì)隨附預(yù)裝的“Blink”草圖。

在本課中,我們將使用我們自己的Blink草圖重新編程Arduino,然后更改閃爍的速率。

在第0課中,您將設(shè)置Arduino IDE,并確保您可以找到正確的串行端口以連接到您的Arduino板。 現(xiàn)在已經(jīng)到了將該連接用于測(cè)試和編程Arduino板的時(shí)候了。

Arduino IDE包含大量您可以加載和使用的示例草圖。 這包括使'L'LED閃爍的示例草圖。

在文件→示例→01.Basics下載入IDE菜單系統(tǒng)中的'Blink'草圖。

learn_arduino_opening_blink_example.jpg

當(dāng)草圖窗口打開時(shí),將其放大,以便您可以在窗口中看到整個(gè)草圖。

learn_arduino_ide_blink.jpg

保存'閃爍'的副本

Arduino IDE附帶的示例草圖是“只讀”的。 也就是說(shuō),您可以將它們上傳到Arduino板,但如果您更改它們,則無(wú)法將它們保存為相同的文件。

我們將改變這個(gè)草圖,所以,你需要做的第一件事就是保存你自己的副本,你可以改變你喜歡的副本。

從Arduino IDE的File菜單中選擇'Save As ..'選項(xiàng),然后用名稱'MyBlink'保存草圖。

learn_arduino_saving_blink_as_my_blink.jpg

您已將您的“閃爍”副本保存在寫生簿中。 這意味著如果你想再次找到它,你可以使用File→Sketchbook菜單選項(xiàng)來(lái)打開它。

learn_arduino_finding_sketch_in_sketchbook.jpg

將Blink上傳至電路板

使用USB電纜將Arduino板連接到計(jì)算機(jī),并檢查“Board Type”和“Serial Port”是否設(shè)置正確。 您可能需要參考第0課。

Arduino IDE將顯示窗口底部板子的當(dāng)前設(shè)置。

learn_arduino_bottom_of_ide_showing_board_port.jpg

點(diǎn)擊“上傳”按鈕。 工具欄左側(cè)的第二個(gè)按鈕。

如果您觀看IDE的狀態(tài)區(qū)域,您將看到一個(gè)進(jìn)度條和一系列消息。 起初它會(huì)說(shuō)'編譯草圖..'。 這將草圖轉(zhuǎn)換為適合上傳到電路板的格式。

learn_arduino_upload_1_compiling.jpg

接下來(lái),狀態(tài)將變?yōu)椤罢谏蟼鳌薄?此時(shí),Arduino上的LED會(huì)在草圖傳輸時(shí)開始閃爍。

learn_arduino_upload_2_uploading.jpg

最后,狀態(tài)將變?yōu)椤巴瓿伞薄?/p>

learn_arduino_upload_3_done.jpg

另一條消息告訴我們,草圖使用32,256字節(jié)中的1,084字節(jié)。在“編譯草圖..”階段之后,您可能會(huì)收到以下錯(cuò)誤消息:

learn_arduino_upload_4_failed.jpg

線索位于頂部,這可能意味著您的主板根本沒有連接,或者驅(qū)動(dòng)程序尚未安裝(如有必要)或者選擇了錯(cuò)誤的串行端口。

如果你得到這個(gè),回到第0課并檢查你的安裝。

上傳完成后,電路板應(yīng)重新啟動(dòng)并開始閃爍。

'Blink'如何工作

Blink草圖的代碼見附件。

首先要注意的是,很多這種草圖就是所謂的“評(píng)論”。 評(píng)論不是實(shí)際的程序指令,它們只是關(guān)于程序如何工作的評(píng)論。 他們?cè)谀抢锸菫榱说玫胶锰?,所以伴隨草圖有一些解釋。

草圖頂部的/ *和* /之間的所有內(nèi)容都是塊注釋,它解釋了草圖的用途。

也有以//開頭的單行注釋,并且在行末尾的所有內(nèi)容都被視為注釋。

第一個(gè)實(shí)際的代碼行是:

      int led = 13;

正如上面的評(píng)論所解釋的那樣,這給了LED所連接的引腳的名稱。 這在大多數(shù)Arduinos中都是13,包括Uno和Leonardo。

接下來(lái),我們有'設(shè)置'功能。 同樣,如評(píng)論所述,按下重置按鈕時(shí)會(huì)運(yùn)行。 它也會(huì)在電路板因任何原因(例如首先應(yīng)用電源或重新上傳草圖后)重置時(shí)運(yùn)行。

      void setup() {

      // initialize the digital pin as an output.

      pinMode(led, OUTPUT);

      }

每個(gè)Arduino草圖都必須具有“設(shè)置”功能,其中可能需要添加自己指令的部分位于{和}之間。

在這種情況下,那里只有一個(gè)命令,正如注釋狀態(tài)告訴Arduino開發(fā)板,我們將使用LED引腳作為輸出。具有“循環(huán)”功能的草圖也是強(qiáng)制性的。 與只能運(yùn)行一次的“設(shè)置”功能不同,復(fù)位后,“循環(huán)”功能將在完成其命令后立即重新啟動(dòng)。

      void loop() {

      digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)

      delay(1000); // wait for a second

      digitalWrite(led, LOW); // turn the LED off by making the voltage LOW

      delay(1000); // wait for a second

      }

在循環(huán)功能中,命令首先將LED引腳開啟(HIGH),然后'延遲'1000毫秒(1秒),然后關(guān)閉LED引腳并暫停另一秒。

閃爍更快

你現(xiàn)在要讓你的LED閃爍得更快。正如你可能已經(jīng)猜到的那樣,關(guān)鍵在于改變'(延遲)'命令中的參數(shù)()。

learn_arduino_ide_blink_delay_circled.jpg

這個(gè)延遲時(shí)間以毫秒為單位,所以如果您希望LED快速閃爍兩次,請(qǐng)將1000的值更改為500.然后,每個(gè)延遲停頓半秒,而不是整秒。

再次上傳草圖,您應(yīng)該看到LED開始更快地閃爍。

  • adafruit-arduino-lesson-1-blink.pdf
    下載
    描述:學(xué)習(xí)教材
  • file.txt
    下載
    描述:程序

相關(guān)推薦