最近在学习Arduino的简单器件组合
实验内容
按下按键,灯开始变换颜色,
当红灯亮了蜂鸣器响,蓝灯亮起时都不响

const int BLUE=11; //声明变量,蓝灯引脚接在第11针脚;
const int RED=12; //声明变量,红灯引脚接在第12针脚;
const int BUTTON=7;//声明变量,按钮接在第7针脚;
const int voice=10;//声明变量,声音接在第10针脚;
int val=0; //声明变量,用来存储按钮返回值HIGH或者LOW;
int val_old=0;//声明变量,存储上一次按钮返回值;比对val和val_old的值,来判断按钮是按下还是抬起//val==LOW && val_old==HIGHT 抬起状态;val==HIGH && val_old==LOW 按下状态;
int state=0;//0 off,1 on 声明变量,起到中转的作用,小技巧;
void setup() //初始化;
{pinMode(BLUE,OUTPUT); //定义LED灯输出模式;pinMode(RED,OUTPUT); //定义LED灯输出模式;pinMode(BUTTON,INPUT);//定义BUTTON为输入模式;pinMode(voice,OUTPUT);//定义VOICE为输出模式
}void loop(){val=digitalRead(BUTTON);//读取数字针脚的值;if((val==HIGH) && (val_old==LOW))//比较前一次和现在的按钮返回的值,//只有现在按下按钮这个状态下,才改变state的值{state=1-state;}if((val==LOW && val_old==HIGH)) //去抖的作用,一般10-15ms;{delay(10);}val_old=val;//把现在按钮返回的值赋予val_old;if(state==1)//控制灯开关;{digitalWrite(BLUE,HIGH);//如果蓝色亮起红色暗digitalWrite(RED,LOW);if(digitalRead(RED)==LOW)//红灯暗了则蜂鸣器不响digitalWrite(voice,LOW);delay(1000);//延迟1sdigitalWrite(BLUE,LOW);//如果蓝灯暗红灯亮digitalWrite(RED,HIGH);if(digitalRead(RED)==HIGH)//红灯亮了digitalWrite(voice,HIGH);//蜂鸣器响delay(1000);}else{digitalWrite(BLUE,LOW);//如果红蓝灯都不亮digitalWrite(RED,LOW);digitalWrite(voice,LOW);//蜂鸣器也不响}}

参考来源:https://blog.csdn.net/nkd50000/article/details/80176039

Arduino控制灯与蜂鸣器相关推荐

  1. Arduino LED灯随着蜂鸣器音乐闪烁

    Arduino LED灯随着蜂鸣器音乐闪烁 所需组件: 开发板 面包板 LED灯 蜂鸣器 连接线 示意图: 接线方式: 3脚蜂鸣器: 1.GND接开发板的一个地口 2.VCC线接5V开发板5v电源 3 ...

  2. arduino控制点阵屏与蜂鸣器_数字制造讲义08-Arduino声音应用2

    数字制造讲义01-成为数字世界的建造者 数字制造讲义02-Arduino入门 数字制造讲义03-电路基础 数字制造讲义04-负责输入和输出的智能元件 数字制造讲义05-软硬件数据通信 数字制造讲义06 ...

  3. arduino控制点阵屏与蜂鸣器_还在为遥控项目发愁?Arduino遥控套装解决你的所有问题(下)...

    最近想做点遥控的小玩具,所以一直在寻找一款实用的开发板(最好是兼容Arduino的,因为我只会玩arduino,对于其他单片机编程烧写什么的一概不知道...),所以苦苦寻找了许久,然后发现了下面两款板 ...

  4. Arduino控制RGB灯(WS2812B)

    Arduino控制RGB灯 RGB灯.WS2812B介绍 软件准备 程序代码 功能演示 后续 RGB灯.WS2812B介绍 RGB灯是以三原色共同交集成像,此外,也有蓝光LED配合黄色荧光 粉,以及紫 ...

  5. 乐博机器人Arduino周五班级,入门课程,碰撞开关控制灯闪烁

    Arduino 碰撞开关控制灯的闪烁 Arduino 碰撞开关控制灯的闪烁在 int led123456789 = 13; int pengZhuang =2; int zhuangtai =0;// ...

  6. Arduino控制WS2812灯带(灯环)

    设计者:STCode(公众号同名) Arduino控制WS2812灯带(灯环) 1) WS2812灯 WS2812灯带 WS2812灯环 WS2812是一个集控制电路与发光电路于一体的智能外空LED光 ...

  7. 控制LED灯和蜂鸣器的按键实验

    按键实验 描述 用到的相关寄存器 GPIO IDR ODR RCC 确定位置 LED灯 蜂鸣器 按键 程序及分析 不支持连续按 视频展示 支持连续按 视频展示 总结 描述 本喵这次介绍的实验是按键实验 ...

  8. LabVIEW控制Arduino流水灯(基础篇—3)

    目录 1.实验目的 2.实验环境 3.程序设计 4.实验演示 1.实验目的 利用LIAT中的数字I/O函数库,通过LabVIEW控制Arduino Uno控制板上多个管脚上LED灯,实现依次点亮,依次 ...

  9. 秒上手!使用Arduino控制基于WS2812B的LED灯条

    使用Arduino控制基于WS2812B的LED灯条 一.材料准备 硬件部分 1. Arduino UNO R3 开发板 2. 基于WS2812B的LED灯条 3. 杜邦线若干 软件部分 1. Ard ...

最新文章

  1. __stdcall详解
  2. kotlin 查找id_Kotlin程序查找Square区域
  3. iOS 自定义转场动画浅谈
  4. JDK 之 HttpClient(jdk11)
  5. Tree Restoration Gym - 101755F (并查集)
  6. Mac电脑Docker拉取Mysql报错?no matching manifest for linux/arm64/v8 in the manifest list entries
  7. 小米蓝牙音响驱动_拆解报告:小米无线充蓝牙音箱
  8. 使用paddlepaddle 进行人脸识别
  9. dependency-track 初始化源码解析
  10. 使用 Visual Studio 创建 .NET 控制台应用程序
  11. 应用实例之__get()魔术方法--ShuipFCMS的组件(Components)调用原理
  12. ArcGIS中.shp矢量文件和.lyr图层文件的区别
  13. Unity3D-摄像机详解
  14. 日语语法(四):形容词
  15. 资源宝分享wordpress主题后门检测清理技巧
  16. 《操作系统》--RR、进程同步、银行家算法及Clock算法复习题
  17. 小白之-----------shell脚本批量管理服务器
  18. 数据库-------关系数据库标准语言SQL
  19. spring boot接入微信小程序支付流程
  20. 视频教程-MVC+EF+LayUI框架的应用案例-软件设计

热门文章

  1. Excel编程——复制WorkSheet
  2. 学习笔记:MPI组通信全互换ALLTOALL
  3. 【Office】Word 批量替换换行符
  4. 最强神作!Crysis深度剖析与优化指南(18-25)
  5. 正整数如何分解质因数(C++)
  6. 2020年百度搜索算法规范(算法盘点)
  7. java找不到符号_java编译时找不到符号,怎么处理
  8. python-函数与作用域
  9. 吴恩达机器学习课后作业1.1——多变量线性回归(Linear regression with multiple variable)
  10. platformio使用记录