最近在学习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. HoloLens再添一应用领域!Microsoft和Trimble联手开启设施管理新篇章!
  2. 学IT技术几个好的网站
  3. Implement strStr()
  4. 《数据库SQL实战》获取所有员工当前的manager
  5. 修改Ubuntu主机名
  6. 【状压DP】剑之修炼(jzoj 2130)
  7. linux图形界面装mysql_ubuntu 安装图形界面
  8. JQuer实战第一讲:验证用户名是否可用
  9. 好系统教你如何禁用或删除启动应用程序以加速Windows
  10. GeoTools——shp转geojson
  11. VectorDraw(CAD) web library 9.9 Crack
  12. 如何用程序哄老婆开心
  13. 全国三级城市联动 js版
  14. HDU6080(很水的计算几何+floyd)
  15. 工业设备数字孪生白皮书
  16. Incapsula reese84 分析与破解
  17. java注册账号_Java实现简单登录注册账号操作
  18. java读取pdf总结
  19. Excel取消工作簿密码【忘记工作簿密码的解决方法】
  20. 南京林业大学计算机专升本,专转本之南京林业大学

热门文章

  1. 我是一个Dubbo数据包...
  2. qq飞车手游早上会服务器维护吗,QQ飞车手游3月23日新版本更新问题一览[图]
  3. vbox与vmware的选择
  4. k线图的几点外汇知识解析
  5. 变声录音软件哪个好?实用软件分享
  6. 网页分享到微信后不能从朋友圈打开
  7. append()函数的用法
  8. 中文短文本分类实例十二-HAN(Hierarchical Attention Networks for Document Classification)
  9. 在嵌入式设备运行Rust/bluer蓝牙简单应用
  10. 计算机 金融好的专业学校,2017年考研热门专业金融学的院校排名