Arduino入门:按钮升级(按一下按钮,LED亮,再按一下,LED熄灭)

按钮升级(按一下按钮,LED亮,再按一下,LED熄灭)

一、成果展示

二、实现方法与解析
首先,让我们按图连接电路:Arduino入门:按钮升级(按一下按钮,LED亮,再按一下,LED熄灭)_第1张图片
代码如下

int button = 2;
int led = 13;
boolean change = false;    //通过按钮来改变change的值

void setup()
{
    pinMode(button, INPUT_PULLUP);
    pinMode(led, OUTPUT);
}

void loop()
{
      while( digitalRead(button) == HIGH ){}
      /*用来暂停程序,保持led的当前状态,按一下按钮退出循环。*/
       if( change == true )
       {
             digitalWrite(led, LOW);
               change = !change;   
        }
        else
        {
        digitalWrite(led, HIGH);
          change = !change;
        }
delay(600) ; 
/*这一步至关重要,如果没有delay来延迟一段时间的话,按钮会失灵,
因为loop循环得很快,你在按下按钮的瞬间,程序首先会退出while循环,
然后执行了很多次loop里的程序,所以在你松开按钮时我们不确定loop
运行的循环是亮着的LED还是熄灭的LED*/
}

OK,that’s over.

你可能感兴趣的:(arduino,arduino)