long readUltrasonicDistance(int triggerPin, int echoPin) { pinMode(triggerPin, OUTPUT); // Clear the trigger digitalWrite(triggerPin, LOW); delayMicroseconds(2); // Sets the trigger pin to HIGH state for 10 microseconds digitalWrite(triggerPin, HIGH); delayMicroseconds(10); digitalWrite(triggerPin, LOW); pinMode(echoPin, INPUT); // Reads the echo pin, and returns the sound wave travel time in microseconds return pulseIn(echoPin, HIGH); } void setup() { Serial.begin(9600); pinMode(12, OUTPUT); pinMode(8, OUTPUT); pinMode(5, OUTPUT); } void loop() { Serial.println(0.01723 * readUltrasonicDistance(4, 3)); if (0.01723 * readUltrasonicDistance(4, 3) < 70) { digitalWrite(12, HIGH); digitalWrite(8, LOW); digitalWrite(5, LOW); } else { if (0.01723 * readUltrasonicDistance(4, 3) < 150) { digitalWrite(12, LOW); digitalWrite(8, HIGH); digitalWrite(5, LOW); } else { digitalWrite(12, LOW); digitalWrite(8, LOW); digitalWrite(5, HIGH); } } delay(10); // Delay a little bit to improve simulation performance } ---------------------------------------------------------- const int UltrasonikTrig1 = 11; const int UltrasonikEcho1 = 12; const int Indikator = 10; void setup() { Serial.begin(9600); pinMode(UltrasonikTrig1, OUTPUT); pinMode(UltrasonikEcho1, INPUT); pinMode(Indikator, OUTPUT); } long duration1; long cm1; void loop() { digitalWrite(UltrasonikTrig1, LOW); digitalWrite(UltrasonikTrig1, HIGH); delayMicroseconds(10); digitalWrite(UltrasonikTrig1, LOW); duration1 = pulseIn(UltrasonikEcho1, HIGH); cm1 = microsecondsKeCenti(duration1); Serial.print("Sensor 1 : "); Serial.print(cm1); Serial.print(" cm"); Serial.print(" || "); // if the distance less than 100 cm / 1 meter if (cm1 <= 100) { digitalWrite(Indikator, HIGH); } else { digitalWrite(Indikator, LOW); Serial.print(" Save"); } Serial.println(" || "); delay(100); } long microsecondsKeCenti(long microseconds) { return microseconds / 29 / 2; } ------------------------------------- #include const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2; LiquidCrystal lcd(rs, en, d4, d5, d6, d7); int inches = 0; float cm = 0; long readUltrasonicDistance(int triggerPin, int echoPin) { pinMode(triggerPin, OUTPUT); // Clear the trigger digitalWrite(triggerPin, LOW); delayMicroseconds(2); // Sets the trigger pin to HIGH state for 10 microseconds digitalWrite(triggerPin, HIGH); delayMicroseconds(10); digitalWrite(triggerPin, LOW); pinMode(echoPin, INPUT); return pulseIn(echoPin, HIGH); } void setup() { lcd.begin(16, 2); } void loop() { // measure the ping time in cm cm = 0.01723 * readUltrasonicDistance(7, 7); // set up the LCD's number of columns and rows: // Print a message to the LCD. lcd.print("Distance:"); lcd.setCursor(0, 1); lcd.print(cm); delay(1000); // Wait for 100 millisecond(s) lcd.clear(); }