失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > arduino两个个开关控制多个灯程序_arduino通过开关控制led灯代码理解(适合所有开关类型)...

arduino两个个开关控制多个灯程序_arduino通过开关控制led灯代码理解(适合所有开关类型)...

时间:2023-12-19 12:28:16

相关推荐

arduino两个个开关控制多个灯程序_arduino通过开关控制led灯代码理解(适合所有开关类型)...

arduino通过开关控制led灯代码理解(适合所有开关类型)

发布时间:-05-03 10:17,

浏览次数:1376

, 标签:

arduino

led

方法一

const int LED=13; //声明变量 LED灯接在13针脚; const int BUTTON=7; //声明变量,按钮接在第7针脚; int

val=0; //声明变量,用来存储按钮返回值HIGH或者LOW; int val_old=0;

//声明变量,存储上一次按钮返回值;比对val和val_old的值,来判断按钮是按下还是抬起 //val==LOW && val_old==HIGHT

抬起状态;val==HIGH && val_old==LOW 按下状态; int state=0;//0 off,1 on 声明变量,起到中转的作用,小技巧;

void setup() //初始化; { pinMode(LED,OUTPUT); //定义LED灯输入模式; pinMode(BUTTON,INPUT);

//定义BUTTON为输出模式; } void loop() { val=digitalRead(BUTTON);//读取数字针脚的值; if

((val==HIGH) && (val_old==LOW))//比较前一次和现在的按钮返回的值, //只有现在按下按钮这个状态下,才改变state的值 {

state=1-state; } if((val==LOW && val_old==HIGH)) //去抖的作用,一般10-15ms; { delay(10

); } val_old=val;//把现在按钮返回的值赋予val_old; if(state==1)//控制灯开关; {

digitalWrite(LED,HIGH); }else { digitalWrite(LED,LOW); } }

方法二(使用了内部上拉电阻)

// 按键控制LED灯开关,使用内部上拉电阻; const int LED = 13; const int BUTTON = 7; boolean

state =false;//声明led灯的状态,默认是关的; void setup { pinMode(LED,OUTPUT);

pinMode(BUTTON,INPUT_PULLUP);//按钮接内部上拉电阻; } void loop { while

(digitalRead(BUTTON) == HIGH){}//模拟:等待开关被按下; //因为使用了上拉电阻,未按下 //之前,按钮一直保持着高电平。

//直到按钮被按下,条件为假,跳出 //循环,执行下边的语句。 if(state = true)//判断:如果灯的状态是亮,则熄灭它,然后将状态

//标记为灭(使用了取反的技巧);否则,如果灯的 //状态是灭的,则点亮它,然后将状态标记为亮(使用取反); { digitalWrite(LED,LOW);

state = !state;//标记灯的当前状态 } else { digitalWrite(LED,HIGH); state = !state;

//标记灯的当前状态 } delay(500); }

如果觉得《arduino两个个开关控制多个灯程序_arduino通过开关控制led灯代码理解(适合所有开关类型)...》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。