如何用按钮来控制LED灯,Arduino按钮控制风扇变档

如何用按钮来控制LED灯
上次写了一个关于最基础的LED灯的教程,因为在生活中,我们常常用到按钮 。今天,所以,我将教大家来做一个很简单的通过按钮来控制LED灯的开关
按钮模块
首先就是接线,这个接线是输出传感器是输入,所以说就要接数字端(这就考虑到一个好的判断方法,模拟引脚是输入设备——例如:声音传感器,显示屏,火焰传感器;数字引脚是输出设备——例如:LED灯,超声波,风扇模块 。
那么我们就要接线了,首先找到按钮模块,接线到数字端,同时要注意你插的是几号 。像我就插到了1号(习惯而已,不需要太注重);然后再插上LED灯,LED灯就需要在数字引脚接了 。
同样选择我们的arduinouno主控板,在拓展里面
然后我们就开始编程 。
然后我们就开始判断
当按钮等于1这个值时
LED灯就亮
当按钮等于0这个值时
否则就灭
(这就用到了如果否则语句)
最后点击选择主板,最后上传查看效果即可 。
Arduino按钮控制风扇变档使用按键(PUSHBUTTON)控制LED灯号的开关,当按键被按下时打开LED灯号,按键放开时关闭LED灯号 。
材料
Arduino的主板×1
LED×1
按钮或开关开关×1
10K电阻×1
面包板×1
单心线X N
接线
把LED接到PIN13,长脚(阳极)接到PIN13,短脚(阴极)接到GND;
按钮一支脚接到+5 V;
PIN2接到按钮的另一支脚,同一支脚位接一个10K的电阻连到GND;
源码如下:
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);
}
说明:
L01?L02:定义按键与LED的脚位,按键接在PIN2码,而LED接在PIN13;
L16:读取按键的状态并保存到buttonState变数里;
L20?L26:这支程式的目的是按下按键时要打开LED灯号,放开按键时要关闭的LED灯号,因此,假如buttonState为高,代表按键状态是按下(压制)的,此时要打开LED,反之,假如buttonState为低,代表按键状态是放开的,此时要关闭LED 。
注:这支是Arduino的内建的程序,点选
File > Examples > 2.Digital > Button
就可以找到 。
树莓派按键控制led灯python上一次学习了用树莓派控制一个led灯 。
那么如何用按键来控制led灯呢?
就是说有一个按键,我们按下的时候led灯亮起,再按一次led灯关闭
如此往复呢?
首先我们在13号引脚那里连接一个上拉电阻,然后再连接开关,如下图 。
在这种情况下,我们用11号引脚控制led灯 。
程序如下 。
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11,GPIO.OUT)
GPIO.setup(13,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
led=True
while True:
while (GPIO.input(13)==GPIO.HIGH):
pass
else:
led= not led
pass
if led:
GPIO.output(11,GPIO.HIGH)
pass
else:
GPIO.output(11,GPIO.LOW)
pass
pass
在这里可以看到 。但是程序不是很健壮,原因是我们没有消抖 。

推荐阅读