Arduino—按钮控制LED

按钮控制LED

实验元件:

  • LED灯一个
  • 按钮开关一个
  • 电阻两个
  • UNO 实验套装(UNO R3控制板、USB数据线、面包板、跳线)
  • LED灯一个

元件介绍:

按钮开关

我们用的按钮开关一共4个引脚分别为1、2、3、4如下图,其中1和2引脚始终相连(以下我们称它为A脚);3和4引脚始终相连(以下我们叫它B脚),当按钮按下时,A脚和B脚连接,不按按钮情况它们不连接。

电路图:

实验原理图:

首先我们要将LED正极连接到UNO 控制板数字引脚13,负极通过电阻欧连接到GND;然后将按钮的A脚连接到UNO 控制板5V引脚,将B脚接到数字引脚12,再将B脚通过电阻接GND;这样我们的电路就搭建完成。
Arduino—按钮控制LED_第1张图片

实验连接图:
Arduino—按钮控制LED_第2张图片这是按下按钮后的图

Arduino代码:

/*
按键控制 LED
按键控制LED的关闭与开启
按一下按钮,LED灯亮,再次按一下按钮,LED灭
*/

#define LED 13       //定义LED引脚为13
#define BUTTON 12    //定义按钮开关引脚为12
int val = 0;        //变量val用来储存按钮状态
int old_val = 0;    //暂存val变量的上一个时间单位

int state = 0;       //0表示LED关闭,1表示打开

void setup(){
  pinMode(LED, OUTPUT);     //设定LED引脚为输出状态
  pinMode (BUTTON,INPUT);   //设定按钮引脚为输入状态
}

void loop(){
  val = digitalRead(BUTTON); //读取按钮状态并储存
  //检查按钮的变化情况
  if((val == HIGH)&&(old_val == LOW)){
    state =1-state;
    delay(40);              //延时简单抗抖动
  }
  old_val = val;            //val下载已经是旧的了,让我们暂存一下

  if (state == 1){
    digitalWrite(LED,HIGH);  //开启LED灯
  }else{
    digitalWrite(LED,LOW);   //关闭LED灯
  }
}

本文内容为本人学习操作 Arduino 按钮控制LED时的总结,若有错误之处,请多多包涵。

你可能感兴趣的:(Arduino—按钮控制LED)