Arduino制作跑马灯

简介: Arduino制作跑马灯

Arduino制作跑马灯

目标一:

设计跑马灯(从左到右,从右到左依次闪烁)

线路图:

相关代码:

void setup() {
  int i;    //定义数据类型,设置输出引脚
    for (i=2;i<=5;i++){
      pinMode(i,OUTPUT);   //数字化脚位,指定输入输出
    } 
}
void loop() {              
    F1();      //F1子程序
    delay(1000);    
    F2();
    delay(1000);   
}
void F1()     //led从左往右依次点亮,从右到左依次熄灭
{
  int j;
  for(j=2;j<=5;j++)
  {
    digitalWrite(j,HIGH); //2-5号引脚为低电平,使灯一起亮
    delay(200);
  }
   for(j=5;j>=2;j--)
  {
    digitalWrite(j,LOW);  //2-5号引脚为高电平,使灯一起灭
    delay(200);
  }
}
void F2()     //led从右往左依次点亮,从左到右依次熄灭
{  
  int j;
  for(j=5;j>=2;j--)
  {
    digitalWrite(j,HIGH);
    delay(200);
  }
   for(j=2;j<=5;j++)
  {
    digitalWrite(j,LOW);
    delay(200);
  }
}

效果图:

目标二:

使用按钮,实现两种走马灯模式的切换

线路图:

相关代码:

const int buttonPin = 7;  //按钮引起电平改变的输入引脚
void setup() {
  int i;    //定义数据类型,设置输出引脚
    for (i=2;i<=5;i++){
      pinMode(i,OUTPUT);   //数字化脚位,指定输入输出
    } 
}
void loop() {              
    if(digitalRead(buttonPin)==HIGH)// F1子程序
    {
    F1();      
    delay(1000);    
    }
    else  //F2子程序
    {
    F2();
    delay(1000);  
    }
}
void F1()     //led从左往右依次点亮,从右到左依次熄灭
{
  int j;
  for(j=2;j<=5;j++)
  {
    digitalWrite(j,HIGH); //2-5号引脚为低电平,使灯一起亮
    delay(200);
  }
   for(j=5;j>=2;j--)
  {
    digitalWrite(j,LOW);  //2-5号引脚为高电平,使灯一起灭
    delay(200);
  } 
}
void F2()     //led从右往左依次点亮,从左到右依次熄灭
{
  int j;
  for(j=5;j>=2;j--)
  {
    digitalWrite(j,HIGH);
    delay(200);
  }
   for(j=2;j<=5;j++)
  {
    digitalWrite(j,LOW);
    delay(200);
  } 
}

效果图:

相关文章
|
Web App开发 数据安全/隐私保护
Chrome谷歌浏览器密码数据导出与导入管理(实现数据无缝同步)
Chrome谷歌浏览器密码数据导出与导入管理(实现数据无缝同步)
1380 0
|
Oracle 关系型数据库 Linux
Virtualbox上安装Linux系统(CentOS7)(图文超详细)
Virtualbox上安装Linux系统(CentOS7)(图文超详细)
5002 1
|
容器
基于Arduino的植物浇水系统
基于Arduino的植物浇水系统
263 0
|
8月前
|
传感器 存储 iOS开发
【HarmonyOS NEXT调试全攻略】设备连接+运行环境一站式指南
本文提供HarmonyOS调试全面指南,涵盖设备连接与运行环境配置。包括模拟器操作、真机调试方法,及环境配置、功能模拟、故障排除等内容。核心覆盖Win/Mac双平台配置、真机级功能模拟、50+故障解决技巧等,助开发者高效调试。适合教育科普学习,错误之处欢迎指出。
|
机器学习/深度学习 数据可视化 算法
alteryx是什么
【6月更文挑战第23天】alteryx是什么
654 4
|
监控 Devops Linux
推荐类似宝塔的开源面板工具
本文介绍了几款类似于宝塔面板的开源服务器管理工具,包括Websoft9、1Panel、Webmin和Cockpit。这些工具在易用性、功能性和安全性方面各有千秋,能够满足不同用户的需求,从一键部署应用到高级服务器管理,提供了丰富的选择。
2063 1
推荐类似宝塔的开源面板工具
|
存储 安全 网络安全
POP3 协议在计算机网络中的优缺点
【8月更文挑战第19天】
630 0
POP3 协议在计算机网络中的优缺点
|
NoSQL Redis 数据库
Redis 从入门到精通之Redis事务实现原理
Redis 通过 MULTI 、 DISCARD 、 EXEC 和 WATCH 四个命令来实现事务功能,本章首先讨论使用 MULTI 、 DISCARD 和 EXEC 三个命令实现的一般事务,然后再来讨论带有 WATCH 的事务的实现。因为事务的安全性也非常重要,所以本章最后通过常见的 ACID 性质对 Redis 事务的安全性进行了说明
937 82
Redis 从入门到精通之Redis事务实现原理
|
内存技术 存储 Android开发
MCU最小系统电路设计(以STM32F103C8T6为例)-3
MCU最小系统电路设计(以STM32F103C8T6为例)
MCU最小系统电路设计(以STM32F103C8T6为例)-3
|
运维 Kubernetes 安全
评测文章:阿里云容器服务ACK
阿里云容器服务(Alibaba Cloud Container Service for Kubernetes,简称 ACK)是一个全托管的 Kubernetes 容器管理服务。它可以帮助企业在云上高效地部署、管理和扩展容器化应用。本文将详细评测 ACK 的功能、优势及其应用场景,帮助读者更好地理解和使用这一服务。