【Arduino实验02 LED流水灯】

目录

一、实验目的

二、实验设备与环境

三、实验重点

四、实验难点

五、实验内容

5.1实验任务

5.2实验原理

5.3实验内容

5.4实验结果 

5.5思考题


一、实验目的

        1熟练掌握Arduino实验基本过程;

        2熟悉并掌握变量、基本数据类型、循环控制语句;

        3熟悉接I/O口的定义与函数的使用

        4掌握流水灯控制程序的编写与调试

二、实验设备与环境

        实验设备:Arduino UNO套件、Arduino IDE、计算机、LED灯6个、220Ω电阻6个、跳线若干

三、实验重点

        1.实验电路连接;2.I/O函数;3.循环语句

四、实验难点

        1.I/O函数

五、实验内容

5.1实验任务

        任务描述:搭建LED多灯连接电路;编写多LED灯的流水灯控制程序;进行流水灯电路调试;拓展并实现不同流水灯效果。

5.2实验原理

        通过Arduino I/O接入LED,设置接口为输出模式,高电平LED灯点亮、低电平LED灯熄灭,亮灭的时长由延时控制,LED灯的亮灭在视觉上形成闪烁状态或流动状态,通过编写程序控制LED输出的状态与延时,实现构想的效果。

        1.LED多灯连接电路 

         说明:用fritzing软件绘制电路图并生成电路原理图。

        LED发光二极管负极与ArduinoGND引脚间串联一个220Ω限流电阻,限制电流过大,保护主板与二极管的安全。

        2.Arduino IDE语法

        (1)变量:变量命名规则、变量命名习惯、变量与常量类型的定义

        (2)函数:pinMode()、digitalWrite()、delay()

        (3)程序控制语句:for循环语句

        // for ...循环结构

        for (表达式1;表达式2;表达式3) {语句块;

        }

        // 表达式1初始化语句

        // 表达式2为判断语句

        // 表达式3为步进语句

        3.Mixly程序语句模块

        数字输出引脚定义语句块、数据语句块、循环语句块、延时语句块

        如板载13脚LED灯闪烁程序语句:

5.3实验内容

        1.连接实验电路

        注意二极管的方向不能接反。

         2.编写源程序,实现逐个点亮LED、等待1秒熄灭的效果

        (1)Arduino IDE程序

int i = 0;

void setup() {

        pinMode(8,OUTPUT);

        pinMode(9,OUTPUT);

        pinMode(10,OUTPUT);

        pinMode(11,OUTPUT);

        pinMode(12,OUTPUT);

}

void loop() {

        for(int i=7;i<13;i++){

                digitalWrite(i,HIGH);

                delay(1000);

                digitalWrite(i,LOW);

        }

        for(int i=12;i>6;i--) {

                digitalWrite(i,HIGH);

                delay(1000);

                digitalWrite(i,LOW);

        }

}

         (2)Mixly程序

        3.程序测试

        (1)程序测试;

        (2)实验结果

        4.重复实验步骤2-3要求:重新编写源程序,实现2种以上不同的LED灯流水效果,并通过功能测试。

        Arduino IDE程序

void setup(){

  pinMode(7, OUTPUT);

  pinMode(8, OUTPUT);

  pinMode(9, OUTPUT);

  pinMode(10, OUTPUT);

}

void loop(){

  digitalWrite(7,HIGH);

  delay(1000);

  digitalWrite(7,LOW);

  digitalWrite(8,HIGH);

  delay(1000);

  digitalWrite(8,LOW);

  digitalWrite(9,HIGH);

  delay(1000);

  digitalWrite(9,LOW);

  digitalWrite(10,HIGH);

  delay(1000);

  digitalWrite(10,LOW);

}

5.4实验结果 

        结果:在本次实验中,实验1中亮灯结果为依次亮灯,实现逐个点亮LED、等待1秒熄灭。实验2的结果为一次亮灯,只亮前四个灯。

        反思:首先,通过本此实验我更加熟练地使用Arduino IDE软件,以及通过Arduino IDE软件来编译代码控制Arduino微控制板,编译所需要的源代码控制微控制板,其次,在本次实验中,实验1中亮灯结果为依次亮灯,实现逐个点亮LED、等待1秒熄灭。实验2的结果为一次亮灯,只亮前四个灯。最后,希望下次继续努力学习,再接再厉。

        作品:

 

5.5思考题

1.实现流水灯控制的重点是什么?需要注意什么?

  • 13
    点赞
  • 94
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张小花-Soleil

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值