0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Arrays各種閃爍順序

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-02 16:31 ? 次閱讀

這是我們學(xué)習(xí)Arduino系列的下一部分,這次我們將學(xué)習(xí)并使用 Arrays 用各種閃爍順序。如果您想教孩子基本的焊接方法,那么這將是使孩子忙碌的理想項(xiàng)目-只需將LED安裝在一塊卡上,就可以從標(biāo)準(zhǔn)的9v電池中獲取電力。

這也是初學(xué)者Arduino編程中的關(guān)鍵課程,盡管如果您不打算實(shí)際使用它作為裝飾物,我還是強(qiáng)烈建議您將它放在面包板上。

注意:這是一個(gè)非常重要的過程。入門級教程,我們當(dāng)然不會(huì)突破任何新領(lǐng)域–是嗎?只是一臺教授使用陣列和 For循環(huán)來處理大量LED 的概念的設(shè)備(或其他輸出設(shè)備)。/em》

如果您還沒有這樣做,那么現(xiàn)在是跟隨該系列其他文章的好時(shí)機(jī):

什么是Arduino?您可以使用它嗎?

什么是Arduino入門工具包?它包含什么?

您可以通過入門工具包購買更多很酷的組件

入門您的Arduino入門套件?安裝驅(qū)動(dòng)程序并設(shè)置電路板和端口

Fritzing,這是一個(gè)免費(fèi)的電路圖繪制工具

仔細(xì)查看Arduino應(yīng)用程序和示例閃爍程序的結(jié)構(gòu)

對于此項(xiàng)目,您至少需要用紅色或綠色的 8或9個(gè)LED ,每個(gè)LED的電阻, 面包板和一些接線。我最近購買了Ooomlout的入門套件,本教程對此進(jìn)行了介紹,它具有很高的性價(jià)比,并且具有比您所需要的更多的LED和電阻器,并且配備了整潔的面包板和Arduino外殼來保存物品。整潔。

這是最后一件事:

如何使用Arrays各種閃爍順序

以及正在播放的視頻。

這是Fritzing的接線圖。這是非?;镜抹C只需將LED的正極引線連接到 2-》任何引腳(最多13針),然后將負(fù)極引腳通過電阻串聯(lián)到地。我在這里使用的值為560歐姆。就是這樣。

在軟件方面,請考慮如何在代碼中寫入所有這些LED。您可以這樣處理:

int led1 = 2; // first LED on pin 2

int led2 = 3; // second on pin 3

// etc etc

void loop(){

digitalWrite(led1,HIGH);

delay(100);

digitalWrite(led1,LOW);

delay(100);

digitalWrite(led2,HIGH);

// etc

}

您應(yīng)該能夠看到9個(gè)LED,這很快就會(huì)使人感到疲勞。答案在于 Arrays ,如果您不記得我們關(guān)于基本數(shù)據(jù)類型的Programming 101,基本上就是列表。

語法看起來像這樣(將其放在第一個(gè)代碼中的一行):

int leds[] = {2,3,4,5,6,7,8,9,10};

方括號表示“?變量將是一個(gè) Array 。大括號括起了數(shù)組將要保留的引腳號列表。

現(xiàn)在,要使用數(shù)組,我們需要通過索引號對其進(jìn)行尋址。 索引從0 開始,因此總是比其中的事物總數(shù)少1(所以有9個(gè)項(xiàng)目,最后一個(gè)項(xiàng)目的索引為8 )。

您可以這樣寫:

leds[0]

在我們的例子中,它將獲取數(shù)字2,因?yàn)槟鞘撬饕?的含義在我們的數(shù)組中。

目前為止?大。但是,僅憑這一點(diǎn)對我們來說還不夠—我們還需要某種方法來遍歷LED陣列的每個(gè)元素。為此,我們將使用 for循環(huán)。這樣做的語法如下:

for(initial variable; condition under which we repeat again; change to variable each iteration)

例如:

for(int i = 0; i《9; i++)

開始僅使用變量 i 循環(huán),變量 i 的值為零

僅當(dāng)我小于9 時(shí)才繼續(xù)循環(huán)?(so:0,1,2,3,4,5,6,7,8)

每次,給i加1 (i ++是所以說i = i + 1)

因此,基本上,循環(huán)將重復(fù)與LED一樣多的次數(shù),并且每次重復(fù),我們都會(huì)有一個(gè)變量 i ,我們可以根據(jù)需要使用它。

我們將從此結(jié)構(gòu)開始使用兩次。進(jìn)入設(shè)置功能后,使我們所有的引腳都變?yōu)檩敵瞿J?,如下所示?/p>

void setup(){

for(int i = 0;i《 9;i++){

pinMode(leds[i],OUTPUT);

}

}

您能看到我們在那里做了什么嗎?不用編寫9行代碼來聲明每個(gè)單獨(dú)的引腳為輸出,而是創(chuàng)建一個(gè)“ for”循環(huán)來重復(fù)9次,每次設(shè)置另一個(gè)引腳。

現(xiàn)在,您應(yīng)該能夠看到如何我們可以在主程序循環(huán)中執(zhí)行完全相同的操作來依次打開每個(gè)LED:

void loop(){

for(int i = 0;i《 9;i++){

digitalWrite(leds[i],HIGH);

delay(100);

digitalWrite(leds[i],LOW);

}

}

嘗試一下。如果您希望不再次鍵入它,則可以從此處下載今天項(xiàng)目的完整代碼(盡管我鼓勵(lì)您這樣做,因?yàn)樗兄趯W(xué)習(xí)過程)。

好的,現(xiàn)在我們有了一個(gè)相當(dāng)無聊的照明順序。讓我們編程另一個(gè)。只是為了好玩,讓我們使其完全隨機(jī)。用以下代碼替換主循環(huán)代碼:

void loop(){

int randomLed = random(0,8);

digitalWrite(leds[randomLed],HIGH);

delay(50);

randomLed = random(0,8);

digitalWrite(leds[randomLed],LOW);

}

我們沒有使用“ for”循環(huán)遍歷每個(gè)LED,而是從0-9中選擇一個(gè)隨機(jī)數(shù),然后將其閃爍。

我今天要把它留在那里,因?yàn)槟F(xiàn)在應(yīng)該已經(jīng)掌握了足夠的知識來編寫所有新序列并進(jìn)行循環(huán)實(shí)驗(yàn)。為了證明這一切是多么容易,我挑戰(zhàn)了我的妻子,想出一個(gè)她想看的序列,然后得到了她自己編程,只給出了代碼和課程。到目前為止。她想出了這個(gè),所以看看您是否可以將其匹配做作業(yè)!

責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Arrays
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    6386
收藏 人收藏

    評論

    相關(guān)推薦

    網(wǎng)線b類接線順序詳細(xì)解釋

    網(wǎng)線B類接線順序,即按照T568B標(biāo)準(zhǔn)進(jìn)行接線的順序,具體為:白橙、橙、白綠、藍(lán)、白藍(lán)、綠、白棕、棕。這個(gè)順序是指網(wǎng)線兩端水晶頭中8根線的排列順序。以下是對網(wǎng)線B類接線
    的頭像 發(fā)表于 07-19 10:15 ?2806次閱讀

    閃爍發(fā)光二極管的工作原理及應(yīng)用電路

    閃爍發(fā)光二極管,簡稱閃爍LED,是一種能夠自主發(fā)出閃爍光線的LED。它的工作原理與普通LED相似,都是基于半導(dǎo)體材料的電致發(fā)光效應(yīng)。但閃爍LED在內(nèi)部集成了
    的頭像 發(fā)表于 06-08 11:39 ?2199次閱讀
    <b class='flag-5'>閃爍</b>發(fā)光二極管的工作原理及應(yīng)用電路

    十通道順序照明電路分享

    這里介紹的十通道順序照明項(xiàng)目從左到右,然后從右到左閃爍燈光效果。集成電路1(NE555)為IC生成時(shí)鐘脈沖2.使用整流器的輸出產(chǎn)生燈泡從左到右閃爍的效果。
    的頭像 發(fā)表于 05-05 10:57 ?253次閱讀
    十通道<b class='flag-5'>順序</b>照明電路分享

    電解池中電極的放電順序?

    在電解池中,電極的放電順序,也就是電極上發(fā)生氧化還原反應(yīng)的順序,是由電極材料的化學(xué)性質(zhì)和電解質(zhì)的性質(zhì)共同決定的。
    的頭像 發(fā)表于 04-28 15:29 ?843次閱讀

    PLC順序啟動(dòng)逆順序停止電路如何運(yùn)行

    了解了順序啟動(dòng)電路,今天再來看看順序啟動(dòng)逆順序停止電路如何運(yùn)行。
    發(fā)表于 04-09 14:13 ?512次閱讀
    PLC<b class='flag-5'>順序</b>啟動(dòng)逆<b class='flag-5'>順序</b>停止電路如何運(yùn)行

    集成芯片管腳順序識別方法

    集成芯片管腳順序的識別方法主要依賴于芯片的類型和特征。
    的頭像 發(fā)表于 03-19 18:14 ?3798次閱讀

    集成芯片引腳順序

    集成芯片的引腳順序一般遵循特定的排列規(guī)則,以確保電路的正常工作。不同的芯片型號和封裝方式可能有不同的引腳排列方式。
    的頭像 發(fā)表于 03-19 17:18 ?1303次閱讀

    LED燈閃爍的原因 LED燈閃爍故障解決方法

    LED燈閃爍的原因 LED燈閃爍故障解決方法 LED燈閃爍是指在正常使用過程中,LED燈的亮度或者頻率會(huì)不斷變化,從而產(chǎn)生閃爍的現(xiàn)象。閃爍
    的頭像 發(fā)表于 12-11 15:31 ?4671次閱讀

    sql where條件的執(zhí)行順序

    SQL語句中的WHERE條件是用來篩選數(shù)據(jù)的,它決定了哪些數(shù)據(jù)會(huì)被返回給用戶。WHERE條件的執(zhí)行順序是影響SQL語句性能的一個(gè)重要因素,正確地理解和優(yōu)化WHERE條件的執(zhí)行順序可以提高查詢效率
    的頭像 發(fā)表于 11-23 11:31 ?1864次閱讀

    c語言中順序結(jié)構(gòu)的基本流程

    C語言是一種通用的編程語言,注重結(jié)構(gòu)化編程和順序結(jié)構(gòu)。順序結(jié)構(gòu)是C語言編程中最簡單也是最基本的控制結(jié)構(gòu)之一,它按照代碼的編寫順序一行一行地執(zhí)行代碼,沒有任何分支或循環(huán)。 順序結(jié)構(gòu)由一系
    的頭像 發(fā)表于 11-22 10:20 ?781次閱讀

    閃爍LED小燈的設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《閃爍LED小燈的設(shè)計(jì).doc》資料免費(fèi)下載
    發(fā)表于 10-24 09:18 ?0次下載
    <b class='flag-5'>閃爍</b>LED小燈的設(shè)計(jì)

    JDK中java.lang.Arrays 類的源碼解析

    日常開發(fā)中,我們會(huì)使用各種工具類,利用封裝好的輪子,能讓我們的開發(fā)事半功倍。但是在JDK中,有一個(gè)特別的工具類——java.lang.Arrays.class,其源碼實(shí)現(xiàn)還是挺精湛,接下來讓我們來
    的頭像 發(fā)表于 10-11 15:31 ?498次閱讀
    JDK中java.lang.<b class='flag-5'>Arrays</b> 類的源碼解析

    電壓閃爍的主要原因

    電壓閃爍是指電源電壓在一段時(shí)間內(nèi)不斷變化的現(xiàn)象。這種變化可以是短暫的、周期性的、不規(guī)則的,或者在電源系統(tǒng)中發(fā)生的各種不穩(wěn)定性。電壓閃爍的產(chǎn)生原理可以涉及多種因素,以下是一些可能導(dǎo)致電壓閃爍
    的頭像 發(fā)表于 10-05 16:58 ?3467次閱讀

    三菱PLC順序功能圖介紹

    順序功能圖(SFC)是專門用于工業(yè)順序控制程序設(shè)計(jì)的一種圖形語言,可以完整地描述控制系統(tǒng)的工作過程、功能和特性。其控制對象的動(dòng)作必須嚴(yán)格按照一定的先后順序執(zhí)行,否則不能使用順序功能圖編
    的頭像 發(fā)表于 10-01 10:59 ?5643次閱讀
    三菱PLC<b class='flag-5'>順序</b>功能圖介紹

    Arrays的copyOf,copyOfRange和fill方法

    在本文中,我們來看看 java.util.Arrays ,我們可以使用 Arrays 創(chuàng)建,比較,排序,搜索,stream 和轉(zhuǎn)化數(shù)組。 創(chuàng)建 我們來看看,使用Arrays 怎么創(chuàng)建一個(gè)新的數(shù)組
    的頭像 發(fā)表于 09-25 14:12 ?345次閱讀