Arduino爱好者

 找回密码
 立即注册

QQ登录

只需一步,快速开始

123
返回列表 发新帖
楼主: eagler8

[经验] 【Arduino】108种传感器模块系列实验(56)---8路LED跑马灯模块

[复制链接]
发表于 2019-10-15 22:30 | 显示全部楼层
谢谢大师指导
 楼主| 发表于 2019-10-16 06:32 | 显示全部楼层

早上好,谢谢许多鼓励
 楼主| 发表于 2020-2-29 14:18 | 显示全部楼层
按键控制跑马灯


[mw_shl_code=arduino,true]/*
  【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
  实验五十六:8路LED跑马灯模块
  程序之四:按键控制跑马灯
*/

int buttonPin = 2 ;   // 定义按键引脚
int BASE = 6;        // 定义第一个LED引脚
int NUM = 8;         // LED 的总数
int val;

void setup()
{
  Serial.begin(9600);
  pinMode(buttonPin, INPUT);
  for (int i = BASE; i < BASE + NUM; i ++)
  {
    pinMode(i, OUTPUT);   // 设定LED引脚为输出引脚
  }
}

void loop()
{
  liangdeng();            // 循环亮灯子程序
  delay(200);             // 每次循环间隔时间
  miedeng();              // LED全灭子程序
}

void liangdeng()
{
  for (int i = BASE; i < BASE + NUM; i ++)
  {
    digitalWrite(i, LOW);  //设定LED引脚逐个输出高电平逐个点亮
    val = digitalRead(buttonPin);   // 储存按键变换量
    if (val == HIGH)          //判断是否按下按键,弱已按下按键跳出当前循环
    {
      val = HIGH;
      break;
    }
    delay(200);        //延时
  }
}

void miedeng()
{
  for (int i = BASE; i < BASE + NUM; i ++)
  {
    digitalWrite(i, HIGH);    //设定LED引脚逐个输出低电平逐个点亮
  }
}[/mw_shl_code]
 楼主| 发表于 2021-6-14 19:01 | 显示全部楼层
  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
  3.   实验五十六:8路LED跑马灯模块
  4.   程序之四:按键控制跑马灯
  5. */

  6. int buttonPin = 2 ;   // 定义按键引脚
  7. int BASE = 6;        // 定义第一个LED引脚
  8. int NUM = 8;         // LED 的总数
  9. int val;

  10. void setup()
  11. {
  12.   Serial.begin(9600);
  13.   pinMode(buttonPin, INPUT);
  14.   for (int i = BASE; i < BASE + NUM; i ++)
  15.   {
  16.     pinMode(i, OUTPUT);   // 设定LED引脚为输出引脚
  17.   }
  18. }

  19. void loop()
  20. {
  21.   liangdeng();            // 循环亮灯子程序
  22.   delay(200);             // 每次循环间隔时间
  23.   miedeng();              // LED全灭子程序
  24. }

  25. void liangdeng()
  26. {
  27.   for (int i = BASE; i < BASE + NUM; i ++)
  28.   {
  29.     digitalWrite(i, LOW);  //设定LED引脚逐个输出高电平逐个点亮
  30.     val = digitalRead(buttonPin);   // 储存按键变换量
  31.     if (val == HIGH)          //判断是否按下按键,弱已按下按键跳出当前循环
  32.     {
  33.       val = HIGH;
  34.       break;
  35.     }
  36.     delay(200);        //延时
  37.   }
  38. }

  39. void miedeng()
  40. {
  41.   for (int i = BASE; i < BASE + NUM; i ++)
  42.   {
  43.     digitalWrite(i, HIGH);    //设定LED引脚逐个输出低电平逐个点亮
  44.   }
  45. }
复制代码


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino爱好者

GMT+8, 2022-12-9 14:14 , Processed in 0.065826 second(s), 13 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表