友情提示:680元/半年,儿童学编程,就上码丁实验室。
你将学到什么
1、你将学到如何设置输入针脚
2、你将学到如何读取数字针脚值
3、你将学到如何 使用if进行选择
数字输入:
最常见的按钮
串联电阻
电路图
接下来我们需要使用这个按钮来让arduino uno的板载LED(连接在数字13号针脚)亮一秒当按钮按下的时候。
导图
程序代码
文字代码:
int LED = 13;
int BUTTON = 2;
void setup() {
// put your setup code here, to run once:
pinMode(LED,OUTPUT);//LED设置为输出模式
pinMode(BUTTON,INPUT);//按钮设置成输入模式
}
void loop() {
// put your main code here, to run repeatedly:
if(digitalRead(BUTTON)==HIGH)
{
digitalWrite(LED,HIGH);//点亮LED
delay(1000);//等待一秒
digitalWrite(LED,LOW);//熄灭LED
}
}
当按钮被按下的时候,数字2号针脚连接在了5V上,使用digitRead()函数来读取数字针脚2的电压,这个函数返回的值不是HIGH(针脚的电压接近5V)就是LOW(针脚的电压接近0V)。
使用if判断:
使用if ,我们可以让arduino根据不同的条件执行不同的代码,如上例中,如果条件为真(针脚读到的电压为HIGH),也就是按钮被按下,那么if下面大括号里面的代码才会被执行。
判断按钮是否被按下(digitalRead(BUTTON))使用的是双等号(==),是一种比较运算符。
不等于为!=
更多的选择 if-then-else:
非此即彼
添加了else
文字代码:
int LED = 13;
int BUTTON = 2;
void setup() {
// put your setup code here, to run once:
pinMode(LED,OUTPUT);//LED设置为输出模式
pinMode(BUTTON,INPUT);//按钮设置成输入模式
}
void loop() {
// put your main code here, to run repeatedly:
if(digitalRead(BUTTON)==HIGH)
{
digitalWrite(LED,HIGH);//点亮LED
}
else
{
digitalWrite(LED,LOW);//熄灭LED
}
}
如果if条件不为真则跳过if下面的大括号里的代码,转而执行else下面大括号里的代码(熄灭LED)。
如果条件多于两个,可以这样写:
多个条件