materialen: Arduino board
(1) LED
(1) analoge sensor (een fotocel zal doen)
(1) 10K ohm weerstand
(1) 270 ohm weerstand
hook-up draad
Pak van de batterij van 9 volt
De code:
Deze constanten niet gewijzigd:
Const int sensorPin = A0; PIN waarop de sensor is aangesloten
Const int ledPin = 9; PIN die is gekoppeld aan de LED
variabelen:
int sensorValue = 0; de waarde van de sensor
int sensorMin = 1023; minimale sensor waarde
int sensorMax = 0; maximale sensor waarde
VOID Setup {}
LED aan het begin van de periode van de kalibratie inschakelen:
pinMode (13, OUTPUT);
digitalWrite (13, hoge);
kalibreren tijdens de eerste vijf seconden
terwijl (millis() < 10) {}
sensorValue = analogRead(sensorPin);
record de waarde van de maximale sensor
Als (sensorValue > sensorMax) {}
sensorMax = sensorValue;
}
record de waarde van de minimale sensor
Als (sensorValue < sensorMin) {}
sensorMin = sensorValue;
}
}
het signaal van het einde van de periode van de kalibratie
digitalWrite (13, laag);
}
void loop {}
Lees de sensor:
sensorValue = analogRead(sensorPin);
de kalibratie van toepassing op de sensorgegevens
sensorValue = kaart (sensorValue, sensorMin, sensorMax, 0, 255);
in geval valt de sensor-waarde buiten het bereik gezien tijdens de kalibratie
sensorValue = beperken (sensorValue, 0, 255);
vervagen de LED met behulp van de geijkte waarde:
analogWrite (ledPin, sensorValue);
}