arduino光敏传感器控制led亮灭代码
时间: 2024-09-08 14:02:33 浏览: 100
在Arduino中,你可以使用光敏传感器(如LM358或LDR)配合LED来创建一个简单的亮度控制系统。这里有一个基本的示例代码,它会在光线强时LED亮,光线弱时LED灭:
```cpp
// 定义必要的硬件连接
const int lightSensorPin = A0; // 光敏传感器连接到A0口
const int ledPin = 13; // LED连接到数字 pin 13
void setup() {
Serial.begin(9600); // 打开串行通信用于调试
pinMode(lightSensorPin, INPUT); // 设置光敏传感器为输入模式
pinMode(ledPin, OUTPUT); // 设置LED为输出模式
}
void loop() {
int sensorValue = analogRead(lightSensorPin); // 获取光敏传感器值
float lux = map(sensorValue, 0, 1023, 0, 4095); // 将模拟值映射到0-4095范围,对应于实际光照强度
if (lux > 2000) { // 当光照度大于某个阈值(例如,2000Lux)
digitalWrite(ledPin, HIGH); // LED点亮
Serial.println("Light is bright, LED on");
} else {
digitalWrite(ledPin, LOW); // LED熄灭
Serial.println("Light is dim, LED off");
}
delay(100); // 每隔一段时间检测一次
}
```
在这个例子中,`analogRead()`函数获取光敏传感器的电压信号,然后通过`map()`函数转换为光照强度值。如果光照强度超过预设阈值,就让LED亮起,反之则关闭。
阅读全文