Quang Trở LDR 5mm
LDR (Light Dependent Resistor) thay đổi điện trở theo cường độ ánh sáng: tối thì điện trở lớn (hàng trăm kΩ–MΩ), sáng thì nhỏ (vài kΩ). Ghép phân áp để đọc mức sáng bằng ADC, hoặc so ngưỡng để bật/tắt đèn.
Thông số kỹ thuật
| Điện trở khi sáng | ~5 ~ 20 kΩ |
| Điện trở khi tối | ~0.5 ~ 1 MΩ |
| Bước sóng nhạy đỉnh | ~540 nm |
| Công suất tối đa | ~100 mW |
| Điện áp tối đa | 150 V |
| Đường kính | 5 mm |
Kết nối (mạch phân áp)
3V3 ── LDR ──┬── R 10K ── GND
│
ADC pin
| Mạch | Arduino UNO | ESP32 |
|---|---|---|
| Điểm giữa | A0 | GPIO34 |
| Đầu LDR | 5V | 3V3 |
| Đầu R | GND | GND |
Đảo vị trí LDR và R sẽ đảo chiều tín hiệu (sáng → giá trị cao hay thấp).
Code mẫu
#define LDR_PIN 34
#define LED_PIN 2
const int NGUONG = 1500; // ngưỡng tối, chỉnh theo môi trường
void setup() {
Serial.begin(115200);
pinMode(LED_PIN, OUTPUT);
}
void loop() {
int sang = analogRead(LDR_PIN);
Serial.printf("Mức sáng: %d\n", sang);
digitalWrite(LED_PIN, sang < NGUONG ? HIGH : LOW); // tối thì bật đèn
delay(300);
}