三个档位控制的小风扇。一个停止档位,剩下三个分别为低速,中速和高速档位。
# 部署
1.开关Button1-Button4
分别连接到OSEPP UNO的A0-A4
引脚。
2.LED1-LED3
分别连接到OSEPP UNO的13-11
号引脚。
3.马达小风扇INA
连接到OSEPP UNO的3
号引脚。
连线图
# 程序搭建
- oseppBlock程序
- Arduino程序
void setup()
{
//button1
pinMode(A0, INPUT); //定义开关1
//button2
pinMode(A1, INPUT); //定义开关2
//button3
pinMode(A2, INPUT); //定义开关3
//button4
pinMode(A3, INPUT); //定义开关4
//led1
pinMode(13, OUTPUT); //定义LED1
//led2
pinMode(12, OUTPUT); //定义LED2
//led3
pinMode(11, OUTPUT); //定义LED3
//fan1
pinMode(3, OUTPUT); //定义风扇引脚
pinMode(5, OUTPUT);
}
void loop()
{
if (digitalRead(A0) == LOW) //如果开关1按下
{
analogWrite(3, 0); //风扇停止运行
analogWrite(5, 0);
digitalWrite(13, LOW); //LED1熄灭
digitalWrite(12, LOW); //LED2熄灭
digitalWrite(11, LOW); //LED3熄灭
}
else if (digitalRead(A1) == LOW) //如果开关2按下
{
analogWrite(3, 50); //风扇低速运行
analogWrite(5, 0);
digitalWrite(13, HIGH); //LED1点亮
digitalWrite(12, LOW); //LED2熄灭
digitalWrite(11, LOW); //LED3熄灭
}
else if (digitalRead(A2) == LOW) //如果开关3按下
{
analogWrite(3, 120); //风扇中速运行
analogWrite(5, 0);
digitalWrite(13, HIGH); //LED1点亮
digitalWrite(12, HIGH); //LED1点亮
digitalWrite(11, LOW); //LED3熄灭
}
else if (digitalRead(A3) == LOW) //如果开关4按下
{
analogWrite(3, 255); //风扇高速运行
analogWrite(5, 0);
digitalWrite(13, HIGH); //LED1点亮
digitalWrite(12, HIGH); //LED1点亮
digitalWrite(11, HIGH); //LED1点亮
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# 运行结果
Button2
按下风扇低速同时点亮1个LED,Button3
按下风扇中速同时点亮2个LED,Button4
按下风扇高速同时点亮3个LED,Button1
按下风扇停止同时LED熄灭。
# 操作视频
← 超声波模块-测距 综合应用-音乐律动灯 →