Z-Lab/Arduino_Grundlagen/05_Lichtsensor/05_Lichtsensor.ino

32 lines
1.4 KiB
C++

// Arduino Grundkurs des Z-Lab Bruchsal.
// Dies ist Übung 5: Ein Lichtsensor (analoger Sensor)
// Eine ausführliche Beschreibung mit Erklärungen findest du hier:
// https://git.digital-infinity.de/DigitalInfinity/Z-Lab/src/branch/main/Arduino_Grundlagen/05_Lichtsensor
// Dort findest du auch eine Skizze für die Verkabelung
// Hier legen wir fest, wo der Sensor angeschlossen werden soll, nämlich am Port A0
int sensorPin = A0;
// für die Anzeige verwenden wir wieder die LED auf dem Arduino
int ledPin = LED_BUILTIN;
// Und zum Speichern der Helligkeit brauchen wir eine Variable, die eine Zahl (int wie Integer, also eine Ganzzahl ohne Vorzeichen - wie eine natürliche Zahl) speichern kann
int sensorWert = 0;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
// analogRead liest die aktuelle Helligkeit vom Lichtsensor
// Der Lichtsensor gibt eine Zahl zwischen 0 (für ganz dunkel) und 1000 (für ganz hell) zurück
sensorWert = analogRead(sensorPin);
// jetzt schalten iwr die LED ein
digitalWrite(ledPin, HIGH);
// Dann warten wir...
// Wir warten so lange, wie der Lichtsensor gesagt hat, dass es hell ist
// Also wenn es heller ist warten wir länger, weil die Zahl, die der Lichtsensor zurückgegeben hat größer ist
// Wenn es dunkler ist warten wir kürzer, weil die Zahl, die zurückgegeben wurde kleiner ist
delay(sensorWert);
digitalWrite(ledPin, LOW);
delay(sensorWert);
}