先简单介绍下Arduino的库函数去哪里看
这个是Arduino的官网网址
然后
查找Arduino库函数的方法就先介绍到这里
接下来就是接线
VCC接单片机的5V,GND接单片机的GND,IN接单片机的D8口(这里可以接其他IO口,IO口就就是输入输出的英文首字母)。
IN接我们的D8口,继电器是低电平导通,因为我们接的是常开端,所以电灯是没有电的,只有闭合才会有电,当我们输出低电平,常开端闭合,电灯就可以亮了。代码非常简单,只有2行。
void setup() {
// put your setup code here, to run once:
pinMode(D8, OUTPUT); //把D8引脚设置引脚为输出引脚
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(D8, LOW);//让D8这个引脚输出低电平
}
这样子很没有意思,只是灯亮,那还不如直接接通电源,但是加个震动传感器就不一样了。
接线如图
当震动传感器受到震动之后,传感器的DO口会输出一个低电平,我们这里DO就接到单片机的D7口,这个时候,我们的单片机去读取这个电平的信号,我们用if else去判断,如果单片机的D7口收到一个低电平,证明受到震动,所以我们的D8输出一个低电平(这里0代表低电平,所以判断a等不等于0),继电器吸合,所以灯就亮了。
代码如下:
void setup() {
// put your setup code here, to run once:
pinMode(D8, OUTPUT); //设置引脚为输出引脚
pinMode(D7, INPUT); //设置引脚为输出引脚
}
void loop() {
// put your main code here, to run repeatedly:
int a = digitalRead(D7);
if(a == 0)
{
digitalWrite(D8, LOW);
delay(1000);//让灯亮之后延时1000毫秒,这个函数的作用是延时,如果想延时2秒就输入2000
}
else
{
digitalWrite(D8, HIGH);
}
}
视频效果:
QQ视频20221114173837
我们还可以加个遥控,进行遥控点灯,接线如下
绿色的那个是遥控接受器,当我们按下A,遥控接收器的D0会发出一个高电平,D0我们接单片机的D6口,我们去读D6这个引脚,如果是高电平(注意,这里是高电平),我们点亮灯。
代码如下:
void setup() {
// put your setup code here, to run once:
pinMode(D8, OUTPUT); //设置引脚为输出引脚
pinMode(D7, INPUT); //设置引脚为输出引脚
pinMode(D6, INPUT); //设置引脚为输出引脚
}
void loop() {
// put your main code here, to run repeatedly:
int a = digitalRead(D7);
int b = digitalRead(D6);
if(a == 0|b == 1)
{
digitalWrite(D8, LOW);
delay(1000);
}
else
{
digitalWrite(D8, HIGH);
}
}
视频: