KOD PROGRAMU 🤣 :
#include <Servo.h> //Biblioteka odpowiedzialna za serwa
#define guzik 8
int swiatlo = 0;
int pozycja = 0;
int najciem = 0;
int najjas = 900;
int najciemp = 0;
int najjasp = 900;
Servo serwomechanizm; //Tworzymy obiekt, dzięki któremu możemy odwołać się do serwa
void setup()
{
serwomechanizm.attach(11); //Serwomechanizm podłączony do pinu 9
Serial.begin (9600);
Serial.println ("Aby skalibrować wcisnij guzik");
pinMode (guzik, INPUT_PULLUP);
}
void loop()
{
swiatlo = analogRead(A5);
pozycja = map (swiatlo, najciem, najjas, 180, 0);
serwomechanizm.write(pozycja); //Wykonaj ruch
if (digitalRead (guzik) == LOW) {
Serial.println ("Rozpoczales kalibracje.");
delay (300);
Serial.println ("Ustaw najmniejsze oswietlenie i wcisnij guzik.");
while (digitalRead (guzik) == HIGH) {delay (25);}
najciemp = analogRead(A5);
Serial.println ("Zapisano :)");
delay (300);
Serial.println ("Teraz ustaw najjasniejsze oswietlenie i wcisnij guzik.");
while (digitalRead (guzik) == HIGH) {delay (25);}
najjasp = analogRead(A5);
Serial.println ("Zapisano :)");
delay (300);
if (najciemp > najjasp) {
Serial.println ("Co ty robisz losiu!?");
Serial.println ("Najciemniejsze oswietlenie jest jasniejsze od najjasniejszego!");
delay (300);
Serial.println ("Kalibracja zakonczona niepowodzeniem :(");
}
else {
Serial.println ("Kalibracja zakonczona powodzeniem!");
najciem = najciemp;
najjas = najjasp;
}
Serial.println ("Aby skalibrowac jeszcze raz wcisnij guzik");
}
delay(100);
}