Ljus aktiveras LED
material: Arduino ombord
(1) LED
(1) analog sensor (fotocell gör)
(1) 10K ohm motstånd
(1) 270 ohms motstånd
Hook-up tråd
9 volts batteri
Koden:
Dessa konstanter inte kommer att ändra:
CONST int sensorPin = A0; PIN-kod som sensorn är kopplad till
CONST int ledPin = 9; PIN-kod som LED är kopplad till
variabler:
int sensorValue = 0; sensor värdet
int sensorMin = 1023; minsta sensorn värde
int sensorMax = 0; maximal sensor värde
void setup() {
Aktivera LED att signalera i början av perioden kalibrering:
pinMode (13, OUTPUT);
digitalWrite 13, hög.
kalibrera under de första fem sekunderna
samtidigt (millis() < 10) {
sensorValue = analogRead(sensorPin);
spela in maximal sensor värdet
om (sensorValue > sensorMax) {
sensorMax = sensorValue;
}
spela in minsta sensorn värdet
om (sensorValue < sensorMin) {
sensorMin = sensorValue;
}
}
slutet på perioden kalibrering
digitalWrite 13, låg.
}
void loop() {
Läs sensorn:
sensorValue = analogRead(sensorPin);
gälla den sensor behandlingen kalibrering
sensorValue = karta (sensorValue, sensorMin, sensorMax, 0, 255);
i fallet är sensor värdet utanför intervallet sett under kalibrering
sensorValue = begränsa (sensorValue, 0, 255);
Fade LED med hjälp av kalibrerade värdet:
analogWrite (ledPin, sensorValue);
}