int a; // εδώ θα κρατάμε την τιμή που διαβάζουμε από τον φωτοαντιστάτη
float b; // εδώ θα αποθηκεύουμε την τάση που έχει ο φωτοαντιστάτης στα άκρα του
float c; // εδώ θα αποθηκεύουμε την τιμή της αντίστασης του φωτοαντιστάτη
int d; // εδώ θα αποθηκεύσουμε την τιμή-όριο πάνω από την οποία θα ανάβουμε το
void setup() {
Serial.begin(9600); // ξεκινάμε το σειριακό μόνιτορ του Arduino IDE
d=500; // τιμή πάνω από την οποία θα ανάβουμε το LED
pinMode(6, OUTPUT); // το πιν 6 θα είναι ή ΕΞΟΔΟΣ που θα συνδέσουμε το LED
}
void loop() {
a=analogRead(A0); // διάβασε την αναλογική είσοδο A0 και βάλε την τιμή στην a
Serial.print("Τιμή: "); // απεικόνισε την τιμή της a στο σειριακό μόνιτορ του Arduino IDΕ Serial.print(a);
Serial.print("\t");
b=a*5.0/1023; // υπολόγισε την τιμή της τάσης στα άκρα του φωτοαντιστάτη
Serial.print("Τάση: ");
Serial.print(b); // απεικόνισε την τιμή της τάσης
Serial.print(" V \t");
c=b*10.0/(5-b); // υπολόγισε την αντίσταση του φωτοαντιστάτη σε kΩ
Serial.print(c);
Serial.println(" kΩ");
If(a>d) // αν η τιμή του a είναι μεγαλύτερη από το d (όριο)
{digitalWrite(6, HIGH); // άναψε το LED }
// αλλιώς
else {
digitalWrite(6, LOW); // σβήσε το LED
delay(500); // περίμενε εδώ 0,5 δευτερόλεπτο
}
}
Σχόλια
Δημοσίευση σχολίου