用arduino写一个直流电机风扇其中用超声波传感器模块离风扇距离小于10厘米风扇关闭
时间: 2024-05-02 13:18:57 浏览: 194
以下是一个基本的代码示例,可以让你开始使用超声波传感器模块来控制直流电机风扇。请注意,本代码仅用于示范,并且可能需要根据你的具体硬件和需求进行调整。
```
// 设置超声波传感器引脚
#define trigPin 9
#define echoPin 10
// 设置风扇引脚
#define fanPin 5
// 设置最小距离
#define minDistance 10
void setup() {
// 初始化串口
Serial.begin(9600);
// 设置超声波传感器引脚为输出
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
// 设置风扇引脚为输出
pinMode(fanPin, OUTPUT);
}
void loop() {
// 发送一个10微秒的脉冲来触发超声波传感器
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// 读取超声波传感器返回的脉冲宽度,计算出距离
long duration = pulseIn(echoPin, HIGH);
int distance = duration * 0.034 / 2;
// 如果距离小于最小距离,关闭风扇
if (distance < minDistance) {
digitalWrite(fanPin, LOW);
Serial.println("Fan off");
} else {
digitalWrite(fanPin, HIGH);
Serial.println("Fan on");
}
// 等待一段时间,以便传感器有时间重新计算距离
delay(100);
}
```
阅读全文