Arduino开发声光控照明灯photocellPin +soundPin 程序
时间: 2024-02-09 14:13:25 浏览: 63
好的,以下是一个简单的 Arduino 声光控照明灯程序,使用光敏电阻和声音传感器检测环境光和声音强度,并控制 LED 灯的亮灭:
```c++
int photocellPin = A0; // 光敏电阻输入引脚
int soundPin = A1; // 声音传感器输入引脚
int ledPin = 13; // LED 输出引脚
int photocellThreshold = 500; // 光敏电阻阈值
int soundThreshold = 200; // 声音传感器阈值
void setup() {
pinMode(ledPin, OUTPUT); // 设置 LED 输出引脚为输出模式
Serial.begin(9600); // 打开串口输出
}
void loop() {
int photocellValue = analogRead(photocellPin); // 读取光敏电阻输入值
int soundValue = analogRead(soundPin); // 读取声音传感器输入值
// 如果环境光强度低于阈值并且声音强度高于阈值,则点亮 LED 灯
if (photocellValue < photocellThreshold && soundValue > soundThreshold) {
digitalWrite(ledPin, HIGH); // 点亮 LED 灯
Serial.println("LED ON"); // 输出调试信息
} else {
digitalWrite(ledPin, LOW); // 关闭 LED 灯
Serial.println("LED OFF"); // 输出调试信息
}
delay(100); // 延迟 100 毫秒,避免频繁读取传感器值造成干扰
}
```
在上面的程序中,我们首先定义了光敏电阻输入引脚 `photocellPin`、声音传感器输入引脚 `soundPin` 和 LED 输出引脚 `ledPin`。然后定义了光敏电阻阈值 `photocellThreshold` 和声音传感器阈值 `soundThreshold`,用于判断环境光和声音强度是否达到控制 LED 灯的条件。
在 `setup()` 函数中,我们将 LED 输出引脚设置为输出模式,并打开串口输出以便调试。
在 `loop()` 函数中,我们首先读取光敏电阻和声音传感器的输入值,然后根据阈值判断是否需要点亮 LED 灯。如果需要,就将 LED 输出引脚设置为高电平,点亮 LED 灯,并输出调试信息;否则将 LED 输出引脚设置为低电平,关闭 LED 灯,并输出调试信息。最后延迟 100 毫秒,避免频繁读取传感器值造成干扰。
希望这个程序对你有帮助!
阅读全文