[Ik heb wat meer experimenteren op dit onderwerp in dit: Ible]
Het is niet moeilijk om te gebruiken een een LED als een sensor op de Arduino. Zomaar een LED met de anode (positieve = long-leg) in analoge poort 0 en de kathode (negatieve = korte been) in GND (massa).
Ook kun je een LED te reageren op de sensor met de anode in haven 13 en de kathode in GND. (u kunt ook kijken naar de LED al op de Arduino board).
Verschillende kleuren voor LEDs zal beter of slechter effect hebben, zo experiment mee.
Dan upload het volgende schema (programma):
Dit programma is enkel gemaakt om te experimenteren met een LED als een licht-sensor.
int geleid = 13; VOID Setup {}
int basis = 0;
int sens = 0;
int x = 0;
int y = 0;
int totaal = 0;
int totaal1 = 0;
pinMode led (, uitvoer);
}
void loop { / / hier doen we 50 lezingen als u wilt instellen van de sensoren
voor (x = 0 x < 50; x ++) {}
Sens = analogRead(0);
totaal = totaal1 + sens; totaal1 = totaal;
}
Sens = totaal / x; / / verdelen de 50 lezingen door 50 weer
totaal = 0;
totaal1 = 0;
basis = sens-20; / / instelling gevoeligheid - nu het reageren zal als de LED 20 lager is dan de instelling hierboven is
voor (y = 0; y < 1000; y ++) { / / na elke 1000 tests zal het programma de heeft geleid tot het omgaan met veranderende licht reset
voor (x = 0 x < 50; x ++) { / / 50 lezingen om te zien of de sensor in het donker
sens = analogRead(0);
totaal = totaal1 + sens;
totaal1 = totaal;
delay(10); }
Sens = totaal / x;
Als (sens < basis) / / testen is het lampje was in het donker
digitalWrite (geleid, hoog); / / schakelen de led in haven 13 of op het bord als de sensor geleide 20 donkerder dan nu dan in de instelling was
anders
digitalWrite (led, laag); draaien als niet
totaal = 0;
totaal1 = 0;
delay(10); } }