四、按键控制LED灯亮灭

目标:用按键控制LED灯亮灭。

材料:

  1.SAGOO UNO 1块;

  2.按键模块 1块;

  3.杜邦线若干。

步骤:

  1.按照下图连接按键模块和UNO;

  SAGOO UNO引脚                                      按键模块引脚

    3V3  <------------------------------------>    V(电源)

    GND <------------------------------------>    G(电源)

 Digital Pin2  <------------------------------------>    S(信号)

实物连接图

  2.启动Arduino IDE软件,打开File->Examples->Digital->Button,编译并下载到UNO主板;

  

  3.默认UNO板上LED灯是亮的,按下按键LED灭,放开LED灯亮。

    演示视频:http://v.youku.com/v_show/id_XMTI4NjM2NTg0MA==.html

 

原理图:

          

代码:

  // constants won't change. They're used here to 

  // set pin numbers:
  const int buttonPin = 2; // the number of the pushbutton pin
  const int ledPin = 13; // the number of the LED pin

  // variables will change:
  int buttonState = 0; // variable for reading the pushbutton status

  void setup() {
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);
  // initialize the pushbutton pin as an input:
  pinMode(buttonPin, INPUT);
  }

  void loop(){
  // read the state of the pushbutton value:
  buttonState = digitalRead(buttonPin);

  // check if the pushbutton is pressed.
  // if it is, the buttonState is HIGH:
  if (buttonState == HIGH) {
  // turn LED on:
  digitalWrite(ledPin, HIGH);
  }
  else {
  // turn LED off:
  digitalWrite(ledPin, LOW);
  }
  } 

说明:

  硬件:UNO主板通过Digital Pin2读取按键模块的状态,当按键输出为高电平,点亮LED灯,反之,熄灭LED灯。按键模块默认输出高电平,按下按键输出低电平。

  软件: 

    const int buttonPin = 2;  --定义常量button为数字2;

    const int ledPin = 13;      -- 定义常量ledPin为数字13;

    int buttonState = 0;---定义引脚变量的默认状态为0;

    buttonState = digitalRead(buttonPin);--读数字脚2的状态值给变量buttonstate;

    /*----------------------------------------------------

    if...else...语句,判断按键状态并执行对应的动作

    -----------------------------------------------------*/

    if (buttonState == HIGH) {    
    // turn LED on:                      
    digitalWrite(ledPin, HIGH);    
    }                                        
    else {
    // turn LED off:
    digitalWrite(ledPin, LOW);   
    }

        

转载于:https://www.cnblogs.com/Sagoo/p/4652920.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值