hc-sr501代码
时间: 2023-07-02 16:11:36 浏览: 103
以下是 HC-SR501 人体红外传感器的 Arduino 代码示例:
```arduino
int ledPin = 13; // LED 灯连接到 Arduino 的 13 号引脚
int pirPin = 2; // HC-SR501 人体红外传感器连接到 Arduino 的 2 号引脚
void setup() {
pinMode(ledPin, OUTPUT); // 设置 LED 灯引脚为输出模式
pinMode(pirPin, INPUT); // 设置 HC-SR501 引脚为输入模式
Serial.begin(9600); // 打开串口,波特率为 9600
}
void loop() {
int pirStatus = digitalRead(pirPin); // 读取 HC-SR501 引脚的状态
if (pirStatus == HIGH) { // 如果检测到移动
digitalWrite(ledPin, HIGH); // 点亮 LED 灯
Serial.println("Motion detected!"); // 向串口输出信息
} else { // 如果没有检测到移动
digitalWrite(ledPin, LOW); // 关闭 LED 灯
Serial.println("Motion stopped."); // 向串口输出信息
}
delay(100); // 等待 100 毫秒,避免连续检测到移动
}
```
以上代码中,我们通过 `digitalRead()` 函数读取 HC-SR501 引脚的状态,如果检测到移动,就点亮 LED 灯,并向串口输出信息;如果没有检测到移动,就关闭 LED 灯,并向串口输出信息。在每次检测后,我们等待 100 毫秒,避免连续检测到移动。你可以将 `ledPin` 和 `pirPin` 分别连接到 Arduino 板上的数字引脚和 GND 引脚。
阅读全文