Εξοπλισμός
1 Arduino UNO 1 Photoresistor 6 Καλώδια
1 Breadboard 1 Resistor 10 KΩ
1 LED 1 Resistor 220 KΩ
Εξήγηση του κώδικα
Αυτός ο κώδικας χρησιμοποιείται για να διαβάσει την τιμή του photoresistor που είναι συνδεδεμένο στην είσοδο Α0 του Arduino και να ελέγξει την κατάσταση ενός LED που είναι συνδεδεμένο στην έξοδο 13 του Arduino, βάσει της διαβαθμισμένης τιμής της αντίστασης.
Στην αρχή του κώδικα, δηλώνονται δύο σταθερές μεταβλητές. Η μια αντιστοιχεί στον αριθμό του ακροδέκτη στον οποίο είναι συνδεδεμένη η photoresistor (A0), και η άλλη αντιστοιχεί στον αριθμό του ακροδέκτη στον οποίο είναι συνδεδεμένο το LED (13).
Στη συνέχεια, στη συνάρτηση loop(), η συνάρτηση analogRead() χρησιμοποιείται για να διαβάσει την τιμή της αντίστασης που είναι συνδεδεμένη στον ακροδέκτη pResistor. Η διαβαθμισμένη τιμή της αντίστασης αποθηκεύεται στη μεταβλητή value.
Έπειτα, με τη χρήση της συνάρτησης Serial.print() εμφανίζεται η διαβαθμισμένη τιμή της αντίστασης στο παράθυρο της σειριακής κονσόλας.
Επίσης, χρησιμοποιείται μια συνθήκη if για να ελέγξει εάν η διαβαθμισμένη τιμή της αντίστασης είναι μεγαλύτερη από 600. Εάν είναι, τότε το LED που είναι συνδεδεμένο στον ακροδέκτη ledPin θα είναι σβηστό. Εάν η τιμή της αντίστασης είναι μικρότερη ή ίση του 600, τότε το LED θα είναι αναμμένο. Αυτό επιτυγχάνεται με τη χρήση των συναρτήσεων digitalWrite() για την αλλαγή της κατάστασης του LED.
Τέλος, ο κώδικας πραγματοποιεί με μια μικρή καθυστέρηση για 1 δευτερόλεπτο (μέσω της συνάρτησης delay(1000)), πριν επανέλθει στην αρχή της λειτουργίας “loop” και επαναλαμβάνει τις ίδιες ενέργειες.