const int trigPin= 9; // stała wartość
const int echoPin= 10;
const int czerwona = 11;
const int zolta = 12;
const int zielona = 13;
// zdefiniowanie typów dla ziennych ( duration i distance)
long duration; //zmienna przecinkowa
int distance;
void setup() {
pinMode(trigPin, OUTPUT); //ustawienie pinu trigPin jako wyjście
pinMode(echoPin, INPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(trigPin, LOW);//przypisanie wartości logicznej - resetowanie stanu
delayMicroseconds(2);// odczekaj dwie mikrosekundy
digitalWrite(trigPin, HIGH);//
delayMicroseconds(10);
digitalWrite(trigPin, LOW);//przypisanie wartości logicznej - resetowanie stanu
//Odczyt stanu echoPin, zwraca czas jaki przebywa fala dźwiękowa w mikrosekundach
//Przypisujemy ten czas do ziennej - duration
duration=pulseIn(echoPin, HIGH);
//Obliczenie prawidłowej odległości ( duration obejmuje odległośćw dwie strony)
distance= duration*0.034/2;
//Wydruk informacji na monitorze portu szeregowego oraz wyświetlaczu
Serial.print("Odleglosc: ");
Serial.println(distance);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
if(distance<=50){
digitalWrite(11, HIGH);
}else if(distance>50 && distance<=100){
digitalWrite(12, HIGH);
}else{digitalWrite(13, HIGH);
}
delay(1000); //czas od
}