- 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 <LiquidCrystal.h>
- 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();
- }