標(biāo)題: Arduino教程-讓LED神燈閃爍 [打印本頁]

作者: 51黑電子論壇    時(shí)間: 2015-12-19 21:34
標(biāo)題: Arduino教程-讓LED神燈閃爍
Hi,大家好!上一次我們試著讓Arduino點(diǎn)亮了一盞LED神燈。這一次我們更進(jìn)一步,讓這盞LED神燈閃爍起來!
像之前一樣,我們首先需要在硬件和軟件方面做一些準(zhǔn)備。
硬件方面
圖片來源:Arduino-UNO-LED
具體包括如下:
軟件方面只需要Arduino官方提供的IDE即可。
準(zhǔn)備好上面這些之后,接下來只要連接好電路,敲幾行簡單的代碼,就可以讓我們的神燈閃爍起來!
連接電路
圖片來源:Arduino連接LED電路示意圖
跟點(diǎn)亮LED神燈一樣,只需要簡單的一步,即可連接好我們的電路。唯一需要注意的是,LED的長針腳要插入13號孔,短針腳插入GND地線孔內(nèi),這一點(diǎn)千萬別搞反了哦!最后,需要用USB線把Arduino連接到電腦上,連好之后會看到Arduino電路板上的一個(gè)小電源燈被點(diǎn)亮!
添加幾行代碼好!最后我們需要添加兩行簡單的代碼,即可大功告成!
首先打開Arduino的IDE,新建一個(gè)Arduino項(xiàng)目窗口。

圖片來源:Arduino官方IDE
新建完成之后,需要向其中添加幾行代碼。



  1. int led = 13;  // 定義針腳號,數(shù)字類型為整型

  2. // 對Arduino電路板或相關(guān)狀態(tài)進(jìn)行初始化方法
  3. void setup() {
  4.   // 設(shè)定13號針腳為輸出狀態(tài),
  5.   // pinMode()方法是Arduino類庫提供的系統(tǒng)方法,
  6.   // 調(diào)用的時(shí)候需要傳入兩個(gè)參數(shù)。
  7.   // 一個(gè)是針腳號,另一個(gè)是針腳號的狀態(tài)。
  8.   pinMode(led, OUTPUT);
  9. }
  10. // 系統(tǒng)調(diào)用,無限循環(huán)方法
  11. void loop() {
  12.   // 向13號針腳輸出值為高電壓狀態(tài),
  13.   // 此值可以點(diǎn)亮LED神燈。
  14.   // digitalWrite()方法也是Arduino類庫提供的系統(tǒng)方法,
  15.   // 調(diào)用的時(shí)候需要傳入兩個(gè)參數(shù),
  16.   // 一個(gè)是針腳號,另一個(gè)是針腳號的狀態(tài)。
  17.   // 這里需要注意的是,pinMode()方法是初始化針腳狀態(tài),
  18.   // digitalWrite()方法是向此針腳號不斷發(fā)送狀態(tài)。
  19.   digitalWrite(led, HIGH);
  20.   // delay()方法是Arduino自身類庫提供的方法,
  21.   // 功能是讓時(shí)間延遲,其中傳入的參數(shù)為毫秒單位,
  22.   // 1000毫秒 = 1秒
  23.   delay(1000);
  24.   // 此處向Arduino的13針腳發(fā)送低電壓狀態(tài),
  25.   // 此狀態(tài)可以讓LED神燈熄滅
  26.   digitalWrite(led, LOW);
  27.   // 再次延遲1000毫秒,也即1秒鐘,
  28.   delay(1000);
  29.   // 隨后進(jìn)入下一次loop循環(huán),
  30.   // 即調(diào)用上面的digitalWrite(led, HIGH)方法,
  31.   // 讓LED神燈再次點(diǎn)亮。
  32.   // 如此不斷循環(huán)下去。
  33. }
復(fù)制代碼



敲完收工!看起來代碼好長的樣子,注意千萬別被上面冗長的中文注釋所嚇住!刪除注釋,比起點(diǎn)亮LED神燈,其實(shí)我們只多添加了三行代碼!而且三行代碼里還有兩行是重復(fù)的!不能要求再簡單了!
新添加的三行代碼里,出現(xiàn)了一個(gè)新面孔,那就是delay()方法,這個(gè)方法的功能是進(jìn)行時(shí)間延遲的,方法的調(diào)用需要傳入一個(gè)時(shí)間參數(shù),參數(shù)的單位為毫秒,比如傳入1000,那么等于在這行代碼上停留1秒鐘,隨后程序才會自動(dòng)繼續(xù)向下執(zhí)行。
好!接下來還剩下最后一步,把代碼燒入Arduino!在點(diǎn)亮LED神燈那一節(jié),我們知道這一步可以一氣呵成,只需要點(diǎn)擊新建項(xiàng)目文件上,那個(gè)指向右側(cè)箭頭圖標(biāo),即可自動(dòng)完成代碼的燒入。

圖片來源:Arduino官方IDE的文件編輯菜單選項(xiàng)(注意此處不是指Arduino頂部工具欄)
如果在此操作中碰到了連接Arduino的失敗錯(cuò)誤,可以查看點(diǎn)亮LED神燈那一節(jié)中,關(guān)于這部分需要注意的兩個(gè)小細(xì)節(jié)。
總結(jié)是不是很簡單?其實(shí)只需要多加一個(gè)新方法,就可以實(shí)現(xiàn)LED神燈的閃爍效果!這一節(jié)中,我們新認(rèn)識一個(gè)延時(shí)方法,名字叫delay(),只是多添加了這一個(gè)方法,就完成了最終效果。So easy!
下期預(yù)告這一節(jié)我們只是實(shí)現(xiàn)了讓LED神燈點(diǎn)亮和熄滅,期間只有兩個(gè)狀態(tài)。那如何讓LED神燈逐步點(diǎn)亮和逐步熄滅呢?嗯,下一次我們將迎接一個(gè)新的挑戰(zhàn),讓LED神燈逐漸變亮和逐漸熄滅!


ohcoder的系列精彩Arduino教程:
Arduino教程-初識Arduino(包含本教程目錄):http://www.torrancerestoration.com/bbs/dpj-41334-1.html
Arduino教程-開篇:http://www.torrancerestoration.com/bbs/dpj-41335-1.html
Arduino教程-點(diǎn)亮LED神燈:http://www.torrancerestoration.com/bbs/dpj-41336-1.html
Arduino教程-讓LED神燈閃爍:http://www.torrancerestoration.com/bbs/dpj-41337-1.html
Arduino教程-讓LED神燈亮度漸變:http://www.torrancerestoration.com/bbs/dpj-41338-1.html
Arduino教程-獲取輸入數(shù)字信號:http://www.torrancerestoration.com/bbs/dpj-41339-1.html
Arduino教程-獲取輸入模擬信號:http://www.torrancerestoration.com/bbs/dpj-41340-1.html
Arduino教程-另一種時(shí)間延遲:http://www.torrancerestoration.com/bbs/dpj-41331-1.html
Arduino教程-按鍵開關(guān):http://www.torrancerestoration.com/bbs/dpj-41341-1.html
Arduino教程-停止抖動(dòng)!:http://www.torrancerestoration.com/bbs/dpj-41333-1.html
Arduino教程-拋棄外部電阻!:http://www.torrancerestoration.com/bbs/dpj-41332-1.html
Arduino教程-用按鍵開關(guān)計(jì)數(shù):http://www.torrancerestoration.com/bbs/dpj-41330-1.html

………后續(xù)持續(xù)更新中請打開:http://www.torrancerestoration.com/bbs/dpj-41334-1.html

作者: myaspx    時(shí)間: 2016-12-9 09:51
學(xué)習(xí)!收藏!!
作者: 361454979    時(shí)間: 2016-12-15 10:54
好不錯(cuò)的呀
作者: yrkygdf    時(shí)間: 2017-1-19 21:36
謝謝樓主分享。
作者: Molan    時(shí)間: 2017-1-20 09:46
666神貼

作者: 525163194    時(shí)間: 2017-1-24 19:17
樓主求聯(lián)系方式
作者: lvxiaojia20    時(shí)間: 2017-2-8 22:09
謝謝分享 贊一個(gè)
作者: 領(lǐng)航    時(shí)間: 2017-2-15 22:57
學(xué)習(xí)一下。
作者: lytcl    時(shí)間: 2017-4-3 21:27
喜歡,贊一個(gè)
作者: 夜夜棲芳草    時(shí)間: 2017-4-5 17:20
不錯(cuò) 注釋很詳細(xì)
作者: 學(xué)之謙    時(shí)間: 2017-8-10 14:38
請問沒有220歐姆電阻,用330歐的可以嗎??
作者: 三水客    時(shí)間: 2018-8-25 15:08
給初學(xué)者看,把電阻色環(huán)換個(gè)方向,更好一些
作者: 迷途小書童zjk    時(shí)間: 2018-11-14 00:40
分享的資源豐富,非常棒!
作者: 越南超級人類    時(shí)間: 2020-7-23 21:01
這個(gè)沒有延遲函式嗎,很簡單




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1