广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    Arduino 控制流水灯

    来源:网络收集  点击:  时间:2025-02-13
    【导读】:
    学习任何一种单片机的时候开始都是对LED的控制,学习Arduino也不例外,之前我们控制过一个LED,使用按键控制LED,这次是给大家分享使用Arduino控制多个LED实现多种闪烁效果的经验,希望帮助到大家。工具/原料moreArduino 实验套件(Arduino UNO控制器,面包板,跳线,USB数据线)5mm 发光二极管 红色 * 2 个、黄色 * 2 个、绿色 * 2 个470欧姆直插电阻 * 6 个方法/步骤1/9分步阅读

    准备实验需要用到的硬件,如图所示:

    2/9

    如下图所示进行硬件的连接,此步我们先不连接发光二极管,只需将Arduino UNO控制器连接到电脑

    3/9

    将下列程序复制到Arduino IDE中,如下图所示:

    int LED1=8;

    int LED2=9;

    int LED3=10;

    int LED4=11;

    int LED5=12;

    int LED6=13;

    int n;

    void setup()

    { //设置各个引脚的初始状态

    for(n=8;n=13;n++)

    {

    pinMode(n, OUTPUT);

    }

    }

    void loop()

    {

    turn1();//顺序点亮,顺序熄灭

    clean(); //灭掉所有灯

    turn2();//6灯齐闪

    clean();//灭掉所有灯

    turn3();

    clean();//灭掉所有灯

    }

    void turn1() //顺序点亮,顺序熄灭

    {

    for(n=8;n=13;n++)

    {

    digitalWrite(n,HIGH);

    delay(300);

    }

    for(n=8;n=13;n++)

    {

    digitalWrite(n,LOW);

    delay(300);

    }

    }

    void turn2()//6灯齐闪3次

    { for(int x=0;x=2;x++)

    {

    for(n=8;n=13;n++)

    {

    digitalWrite(n,HIGH);

    }

    delay(300);

    for(n=8;n=13;n++)

    {

    digitalWrite(n,LOW);

    }

    delay(300);

    }

    }

    void turn3()//两个两个一起闪3次

    {

    for(int x=0;x=2;x++)

    {

    digitalWrite(8,HIGH);

    digitalWrite(9,HIGH);

    for(n=10;n=13;n++){

    digitalWrite(n,LOW);

    }

    delay(300);

    digitalWrite(10,HIGH);

    digitalWrite(11,HIGH);

    digitalWrite(8,LOW);

    digitalWrite(9,LOW);

    digitalWrite(12,LOW);

    digitalWrite(13,LOW);

    delay(300);

    digitalWrite(12,HIGH);

    digitalWrite(13,HIGH);

    for(n=8;n=11;n++){

    digitalWrite(n,LOW);

    }

    delay(300);

    }

    }

    void clean()

    { for(n=8;n=13;n++)

    {

    digitalWrite(n,LOW);

    }

    delay(300);

    }

    4/9

    如图所示,选择正确的板卡型号和端口,将程序上传到控制器中。

    5/9

    如图所示,程序上传无误的情况下 Arduino IDE 软件会显示如下结果

    6/9

    按照下图中的电路,进行实验硬件的连接

    7/9

    实验效果如图所示:程序中turn1()函数作用是使6个LED顺序点亮,再顺序熄灭;turn2()函数作用使6个LED一齐闪烁频率为300ms;turn3()函数作用是两两灯闪烁;clean()函数熄灭6只LED,6个LED发光二极管会循环执行几种效果,直到Arduino UNO 控制器断电为止。

    8/9

    代码回顾:

    (1)for(n=8;n=13;n++) 循环语句

    for循环开头有3个部分:(初始化;条件;增量计数){//语句}

    “初始化”只在循环开始执行一次。每次循环,都会检测一次条件;如果条件为真,则执行语句和“增量计数”,之后再检测条件。当条件为假时,循环终止。

    (2)void turn1()

    声明功能函数,声明后,可以在loop()语句中调用。

    在程序中的位置如下图所示:

    9/9

    为了方便大家实验,防止在复制代码的时候出现错误,特将代码和电路图

    Fritzing源文件上传至网盘供大家下载学习。下载地址:

    http://pan.baidu.com/s/1nuSL9Mx,打开链接后,如图所示,点击下载即可

    注意事项

    如果经验帮到您,就给我投一票吧!谢谢~

    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_1239186.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-06 10:14:29  耗时:0.023
    0.0229s