Arduino控制灯与蜂鸣器
最近在学习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控制灯与蜂鸣器相关推荐
- Arduino LED灯随着蜂鸣器音乐闪烁
Arduino LED灯随着蜂鸣器音乐闪烁 所需组件: 开发板 面包板 LED灯 蜂鸣器 连接线 示意图: 接线方式: 3脚蜂鸣器: 1.GND接开发板的一个地口 2.VCC线接5V开发板5v电源 3 ...
- arduino控制点阵屏与蜂鸣器_数字制造讲义08-Arduino声音应用2
数字制造讲义01-成为数字世界的建造者 数字制造讲义02-Arduino入门 数字制造讲义03-电路基础 数字制造讲义04-负责输入和输出的智能元件 数字制造讲义05-软硬件数据通信 数字制造讲义06 ...
- arduino控制点阵屏与蜂鸣器_还在为遥控项目发愁?Arduino遥控套装解决你的所有问题(下)...
最近想做点遥控的小玩具,所以一直在寻找一款实用的开发板(最好是兼容Arduino的,因为我只会玩arduino,对于其他单片机编程烧写什么的一概不知道...),所以苦苦寻找了许久,然后发现了下面两款板 ...
- Arduino控制RGB灯(WS2812B)
Arduino控制RGB灯 RGB灯.WS2812B介绍 软件准备 程序代码 功能演示 后续 RGB灯.WS2812B介绍 RGB灯是以三原色共同交集成像,此外,也有蓝光LED配合黄色荧光 粉,以及紫 ...
- 乐博机器人Arduino周五班级,入门课程,碰撞开关控制灯闪烁
Arduino 碰撞开关控制灯的闪烁 Arduino 碰撞开关控制灯的闪烁在 int led123456789 = 13; int pengZhuang =2; int zhuangtai =0;// ...
- Arduino控制WS2812灯带(灯环)
设计者:STCode(公众号同名) Arduino控制WS2812灯带(灯环) 1) WS2812灯 WS2812灯带 WS2812灯环 WS2812是一个集控制电路与发光电路于一体的智能外空LED光 ...
- 控制LED灯和蜂鸣器的按键实验
按键实验 描述 用到的相关寄存器 GPIO IDR ODR RCC 确定位置 LED灯 蜂鸣器 按键 程序及分析 不支持连续按 视频展示 支持连续按 视频展示 总结 描述 本喵这次介绍的实验是按键实验 ...
- LabVIEW控制Arduino流水灯(基础篇—3)
目录 1.实验目的 2.实验环境 3.程序设计 4.实验演示 1.实验目的 利用LIAT中的数字I/O函数库,通过LabVIEW控制Arduino Uno控制板上多个管脚上LED灯,实现依次点亮,依次 ...
- 秒上手!使用Arduino控制基于WS2812B的LED灯条
使用Arduino控制基于WS2812B的LED灯条 一.材料准备 硬件部分 1. Arduino UNO R3 开发板 2. 基于WS2812B的LED灯条 3. 杜邦线若干 软件部分 1. Ard ...
最新文章
- HoloLens再添一应用领域!Microsoft和Trimble联手开启设施管理新篇章!
- 学IT技术几个好的网站
- Implement strStr()
- 《数据库SQL实战》获取所有员工当前的manager
- 修改Ubuntu主机名
- 【状压DP】剑之修炼(jzoj 2130)
- linux图形界面装mysql_ubuntu 安装图形界面
- JQuer实战第一讲:验证用户名是否可用
- 好系统教你如何禁用或删除启动应用程序以加速Windows
- GeoTools——shp转geojson
- VectorDraw(CAD) web library 9.9 Crack
- 如何用程序哄老婆开心
- 全国三级城市联动 js版
- HDU6080(很水的计算几何+floyd)
- 工业设备数字孪生白皮书
- Incapsula reese84 分析与破解
- java注册账号_Java实现简单登录注册账号操作
- java读取pdf总结
- Excel取消工作簿密码【忘记工作簿密码的解决方法】
- 南京林业大学计算机专升本,专转本之南京林业大学
热门文章
- 我是一个Dubbo数据包...
- qq飞车手游早上会服务器维护吗,QQ飞车手游3月23日新版本更新问题一览[图]
- vbox与vmware的选择
- k线图的几点外汇知识解析
- 变声录音软件哪个好?实用软件分享
- 网页分享到微信后不能从朋友圈打开
- append()函数的用法
- 中文短文本分类实例十二-HAN(Hierarchical Attention Networks for Document Classification)
- 在嵌入式设备运行Rust/bluer蓝牙简单应用
- 计算机 金融好的专业学校,2017年考研热门专业金融学的院校排名