V dnešní lekci se podíváme na fotorezistor. Fotorezistor je součástka, která nám umožní zjistit množství světla v okolí. V našem případě funguje tak, že čím nižší světlo je v okolí, tím vyšší číslo nám součástka pošle.
Fotorezistor je připojen přes analogový pin (v našem případě A0
). Díky tomu nám může posílat číslo, které reprezentuje množství světla.
V následujícím kódu si od našeho fotorezistoru získáme každých 200 milisekund číslo a to vypíšeme do konzole:
#define photorezistor A0 // Definování toho, že fotorezistor máme na pinu A0
void setup() {
Serial.begin(9600); // Spuštění konzole s rychlostí 9600 baudů
pinMode(photorezistor, INPUT); // Nastavení pinu s fotorezistorem jako vstup (Arduino bude číst z tohoto pinu)
}
void loop() {
int light = analogRead(photorezistor); // Přečtění výstupu z fotorezistoru a uložení do proměnné typu int (číslo)
Serial.print("světlo: "); // Vypsání textu "světlo: "
Serial.println(light); // Vypsání hodnoty proměnné light a ukončení řádku
delay(200); // Vyčkání 200 milisekund
}
Nyní, s těmito znalostmi, udělejte program, který rozsvítí led diody na EduShieldu (zelená je na pinu 13, žlutá na pinu 17, červená na pinu 16) tak, že pokud zakryjeme fotorezistor, bude Edushield svítit červeně, pokud bude mít trochu světla, bude svítít žlutě a pokud na něj přímo posvítíte (například telefonem), bude svítit zeleně.
Nezapomeňte váš kód odevzdat do Google učebny: https://classroom.google.com/c/NTkwMDUxNjcyMjUy/a/Njc3OTY0NTk5NDAw/details