arduino——按键灯(笔记)

作者: 猛犸象和剑齿虎 | 来源:发表于2020-01-13 21:08 被阅读0次
    初次接触这个电路图时,有些晕头转向,一直考虑并联串联的关系。 image.png

    实际上一接线顿时就明白了,这根本就是两趟电路,一趟接的5V的电连接一个比较大的电阻,另一个数字信号发出接上一个小电阻,通过大电阻的按键控制LED灯的开关。(当然在板的内部其实是有联系的)

    材料准备

    arduino 板1块,按键开关1个,LED灯1个,10KR电阻一个,250R电阻一个,导线若干。

    接线按上图接线即可。

    实际效果

    代码部分

    const int buttonPin =2;//定义按键频道
    const int ledPin=13;//定义灯的频道
    int buttonState =0;//定义按键的状态为0(关)
    
    void setup() 
    {
    
    pinMode(ledPin,OUTPUT);//设置灯的信号和输出模式
    pinMode(buttonPin,INPUT); //设置按键的信号和输出模式
    }
    
    void loop() 
    {
    
    buttonState = digitalRead(buttonPin);//按键状态等于数字信号读取的2号信道的状态,当然此刻是0或者说是LOW
      if(buttonState == HIGH)
      {
        digitalWrite(ledPin,HIGH);//按下按键灯就亮
        }
       else
       {
        digitalWrite(ledPin,LOW);
      }
    }
    

    实际效果

    GIF.gif

    修改电路图用arduino板内部的上拉电阻来控制灯的亮灭。

    image.png

    修改代码

    const int buttonPin =2;
    const int ledPin=13;
    int buttonState =0;
    
    void setup() 
    {
    
    pinMode(ledPin,OUTPUT);
    pinMode(buttonPin,INPUT_PULLUP); 
    }
    
    void loop() 
    {
    
    buttonState = digitalRead(buttonPin);
      if(buttonState == HIGH)
      {
        digitalWrite(ledPin,HIGH);
        }
       else
       {
        digitalWrite(ledPin,LOW);
      }
    }
    

    效果是一样的不同的是LED灯是常亮的,按下按键会灭掉。

    升级

    按一下按键灯亮,再按一下灯灭。

    接线方式

    与第一种一样。

    代码部分

    int buttonPin =2;
    int ledPin=13;
    boolean ledState = false;//定义灯的状态为假
    boolean buttonState =true;//定义按键的状态为真
    
    void setup() 
    {
    
    pinMode(ledPin,OUTPUT);
    pinMode(buttonPin,INPUT_PULLUP); 
    }
    
    void loop() 
    {
    while (digitalRead(buttonPin) == HIGH){//while循环如果按键频道读取为真时循环
      if(ledState == true)//判断灯的状态为真时
      {
        digitalWrite(ledPin,LOW);//灯灭
        ledState = !ledState;//更改灯的状态,第一次变成假
        }
       else
       {
        digitalWrite(ledPin,HIGH);//灯亮
        ledState = !ledState;//更改灯的状态,第一次变成假
      }
      delay(500);//延迟很重要,不然系统运行速度过快按键可能失灵
    }
    }
    

    运行效果

    GIF.gif

    相关文章

      网友评论

        本文标题:arduino——按键灯(笔记)

        本文链接:https://www.haomeiwen.com/subject/cqbnactx.html