0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用Arrays各种闪烁顺序

454398 来源:网络整理 作者:网络整理 2019-12-02 16:31 次阅读

这是我们学习Arduino系列的下一部分,这次我们将学习并使用 Arrays 用各种闪烁顺序。如果您想教孩子基本的焊接方法,那么这将是使孩子忙碌的理想项目-只需将LED安装在一块卡上,就可以从标准的9v电池中获取电力。

这也是初学者Arduino编程中的关键课程,尽管如果您不打算实际使用它作为装饰物,我还是强烈建议您将它放在面包板上。

注意:这是一个非常重要的过程。入门级教程,我们当然不会突破任何新领域–是吗?只是一台教授使用阵列和 For循环来处理大量LED 的概念的设备(或其他输出设备)。/em》

如果您还没有这样做,那么现在是跟随该系列其他文章的好时机:

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

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

您可以通过入门工具包购买更多很酷的组件

入门您的Arduino入门套件?安装驱动程序并设置电路板和端口

Fritzing,这是一个免费的电路图绘制工具

仔细查看Arduino应用程序和示例闪烁程序的结构

对于此项目,您至少需要用红色或绿色的 8或9个LED ,每个LED的电阻, 面包板和一些接线。我最近购买了Ooomlout的入门套件,本教程对此进行了介绍,它具有很高的性价比,并且具有比您所需要的更多的LED和电阻器,并且配备了整洁的面包板和Arduino外壳来保存物品。整洁。

这是最后一件事:

如何使用Arrays各种闪烁顺序

以及正在播放的视频

这是Fritzing的接线图。这是非常基本的–只需将LED的正极引线连接到 2-》任何引脚(最多13针),然后将负极引脚通过电阻串联到地。我在这里使用的值为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

}

您应该能够看到9个LED,这很快就会使人感到疲劳。答案在于 Arrays ,如果您不记得我们关于基本数据类型的Programming 101,基本上就是列表。

语法看起来像这样(将其放在第一个代码中的一行):

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

方括号表示“?变量将是一个 Array 。大括号括起了数组将要保留的引脚号列表。

现在,要使用数组,我们需要通过索引号对其进行寻址。 索引从0 开始,因此总是比其中的事物总数少1(所以有9个项目,最后一个项目的索引为8 )。

您可以这样写:

leds[0]

在我们的例子中,它将获取数字2,因为那是索引0的含义在我们的数组中。

目前为止?大。但是,仅凭这一点对我们来说还不够—我们还需要某种方法来遍历LED阵列的每个元素。为此,我们将使用 for循环。这样做的语法如下:

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

例如:

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

开始仅使用变量 i 循环,变量 i 的值为零

仅当我小于9 时才继续循环?(so:0,1,2,3,4,5,6,7,8)

每次,给i加1 (i ++是所以说i = i + 1)

因此,基本上,循环将重复与LED一样多的次数,并且每次重复,我们都会有一个变量 i ,我们可以根据需要使用它。

我们将从此结构开始使用两次。进入设置功能后,使我们所有的引脚都变为输出模式,如下所示:

void setup(){

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

pinMode(leds[i],OUTPUT);

}

}

您能看到我们在那里做了什么吗?不用编写9行代码来声明每个单独的引脚为输出,而是创建一个“ for”循环来重复9次,每次设置另一个引脚。

现在,您应该能够看到如何我们可以在主程序循环中执行完全相同的操作来依次打开每个LED:

void loop(){

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

digitalWrite(leds[i],HIGH);

delay(100);

digitalWrite(leds[i],LOW);

}

}

尝试一下。如果您希望不再次键入它,则可以从此处下载今天项目的完整代码(尽管我鼓励您这样做,因为它有助于学习过程)。

好的,现在我们有了一个相当无聊的照明顺序。让我们编程另一个。只是为了好玩,让我们使其完全随机。用以下代码替换主循环代码:

void loop(){

int randomLed = random(0,8);

digitalWrite(leds[randomLed],HIGH);

delay(50);

randomLed = random(0,8);

digitalWrite(leds[randomLed],LOW);

}

我们没有使用“ for”循环遍历每个LED,而是从0-9中选择一个随机数,然后将其闪烁。

我今天要把它留在那里,因为您现在应该已经掌握了足够的知识来编写所有新序列并进行循环实验。为了证明这一切是多么容易,我挑战了我的妻子,想出一个她想看的序列,然后得到了她自己编程,只给出了代码和课程。到目前为止。她想出了这个,所以看看您是否可以将其匹配做作业!

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Arrays
    +关注

    关注

    0

    文章

    6

    浏览量

    6374
收藏 人收藏

    评论

    相关推荐

    十通道顺序照明电路分享

    这里介绍的十通道顺序照明项目从左到右,然后从右到左闪烁灯光效果。集成电路1(NE555)为IC生成时钟脉冲2.使用整流器的输出产生灯泡从左到右闪烁的效果。
    的头像 发表于 05-05 10:57 171次阅读
    十通道<b class='flag-5'>顺序</b>照明电路分享

    PLC顺序启动逆顺序停止电路如何运行

    了解了顺序启动电路,今天再来看看顺序启动逆顺序停止电路如何运行。
    发表于 04-09 14:13 330次阅读
    PLC<b class='flag-5'>顺序</b>启动逆<b class='flag-5'>顺序</b>停止电路如何运行

    LED灯闪烁的原因 LED灯闪烁故障解决方法

    LED灯闪烁的原因 LED灯闪烁故障解决方法 LED灯闪烁是指在正常使用过程中,LED灯的亮度或者频率会不断变化,从而产生闪烁的现象。闪烁
    的头像 发表于 12-11 15:31 2991次阅读

    c语言中顺序结构的基本流程

    C语言是一种通用的编程语言,注重结构化编程和顺序结构。顺序结构是C语言编程中最简单也是最基本的控制结构之一,它按照代码的编写顺序一行一行地执行代码,没有任何分支或循环。 顺序结构由一系
    的头像 发表于 11-22 10:20 645次阅读

    闪烁LED小灯的设计

    电子发烧友网站提供《闪烁LED小灯的设计.doc》资料免费下载
    发表于 10-24 09:18 0次下载
    <b class='flag-5'>闪烁</b>LED小灯的设计

    JDK中java.lang.Arrays 类的源码解析

    日常开发中,我们会使用各种工具类,利用封装好的轮子,能让我们的开发事半功倍。但是在JDK中,有一个特别的工具类——java.lang.Arrays.class,其源码实现还是挺精湛,接下来让我们
    的头像 发表于 10-11 15:31 413次阅读
    JDK中java.lang.<b class='flag-5'>Arrays</b> 类的源码解析

    电压闪烁的主要原因

    电压闪烁是指电源电压在一段时间内不断变化的现象。这种变化可以是短暂的、周期性的、不规则的,或者在电源系统中发生的各种不稳定性。电压闪烁的产生原理可以涉及多种因素,以下是一些可能导致电压闪烁
    的头像 发表于 10-05 16:58 2626次阅读

    三菱PLC顺序功能图介绍

    顺序功能图(SFC)是专门用于工业顺序控制程序设计的一种图形语言,可以完整地描述控制系统的工作过程、功能和特性。其控制对象的动作必须严格按照一定的先后顺序执行,否则不能使用顺序功能图编
    的头像 发表于 10-01 10:59 4751次阅读
    三菱PLC<b class='flag-5'>顺序</b>功能图介绍

    Arrays的copyOf,copyOfRange和fill方法

    在本文中,我们来看看 java.util.Arrays ,我们可以使用 Arrays 创建,比较,排序,搜索,stream 和转化数组。 创建 我们来看看,使用Arrays 怎么创建一个新的数组
    的头像 发表于 09-25 14:12 294次阅读

    闪烁噪声的工作原理

    闪烁噪声的数量与探测器的性能有关,它对于各种应用的信号检测都是十分重要的,并且在核物理、地球科学、医学影像等领域都有其应用。 闪烁噪声的工作原理主要涉及探测器内部的光产生和读出。大多数闪烁
    的头像 发表于 09-19 16:44 518次阅读

    闪烁噪声与频率成反比吗?

    闪烁噪声与频率成反比吗? 闪烁噪声是科学和工程领域中一个重要的概念,它经常被用来描述信号传输的质量和可靠性。而频率是指在单位时间内波动的次数,是信号处理领域中一个最基本的参数。在当今高速数字通信
    的头像 发表于 09-19 16:39 552次阅读

    闪烁噪声代码实现方法

    闪烁噪声代码实现方法 闪烁噪声是指由不规则交替的明暗点所组成的噪声,在各种应用中都有着非常广泛的应用。闪烁噪声可以用于视频的特效处理、图像的模糊处理等领域中。本文将介绍
    的头像 发表于 09-19 16:39 1088次阅读

    什么是闪烁噪声?闪烁噪声的性质和特点

    什么是闪烁噪声?闪烁噪声的性质和特点 闪烁噪声(Flicker noise)是指信号中指定频率范围内的噪音,它的频率范围通常包括几十到几千赫兹。通常认为该噪音源于随机在集成电路等元件中存在的电荷扰动
    的头像 发表于 09-19 16:33 1844次阅读

    简单的闪烁电池监视器电路图

      这是一个简单的电池监控电路,其中 LED 将持续闪烁,直到电池电压高于水平。晶体管 Q1 和 Q2 连接成非稳态多谐振荡器电路。该闪烁电池监视器电路可以在 6V 至 12V 的各种电压下工作。
    的头像 发表于 08-22 16:49 567次阅读
    简单的<b class='flag-5'>闪烁</b>电池监视器电路图

    PLC顺序控制实例

    PLC程序经常会遇到程序按照12345的方式一步步顺序控制,这种情况我们叫做顺序控制,也比较符合PLC面向过程的控制模式。
    的头像 发表于 07-19 10:01 1451次阅读
    PLC<b class='flag-5'>顺序</b>控制实例