Skip to Content


Ultrasonic Sensor & LCD I2C | Automatic Distance Measurement





-CODE

//Ultrasonic Sensor Distance Measurement 

// تحديد البن المتصل بـ TRIG
const int trigPin = 9;

// تحديد البن المتصل بـ ECHO
const int echoPin = 10;

// متغير لتخزين زمن رجوع الموجة
long duration;

// متغير لتخزين المسافة
float distance;

void setup() {

  // جعل TRIG مخرج
  pinMode(trigPin, OUTPUT);

  // جعل ECHO مدخل
  pinMode(echoPin, INPUT);

  // تشغيل Serial Monitor
  Serial.begin(9600);

}

void loop() {

  // التأكد من أن TRIG في وضع LOW
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);

  // إرسال نبضة لمدة 10 ميكروثانية
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // قراءة زمن رجوع الموجة
  duration = pulseIn(echoPin, HIGH);

  // حساب المسافة بالسنتيمتر
  distance = duration * 0.0343 / 2;

  // طباعة المسافة
  Serial.print("Distance = ");
  Serial.print(distance);
  Serial.println(" cm");

  delay(200);

}

//Ultrasonic Sensor Distance Measurement  lcd i2c

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

const int trigPin = 9;
const int echoPin = 10;

long duration;
float distance;

void setup() {

  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);

  lcd.init();
  lcd.backlight();

}

void loop() {

  // إرسال نبضة
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);

  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);

  digitalWrite(trigPin, LOW);

  // قراءة الزمن
  duration = pulseIn(echoPin, HIGH);

  // حساب المسافة
  distance = duration * 0.0343 / 2;

  // عرض البيانات على الشاشة
  lcd.clear();

  lcd.setCursor(0, 0);
  lcd.print("Distance:");

  lcd.setCursor(0, 1);
  lcd.print(distance, 1); // رقم عشري واحد
  lcd.print(" CM");

  delay(200);

}




-CIRCUIT DIAGRAM





-COMPONENTS

• Arduino Uno R3 

https://www.gravityelectronic.com/shop/arduino-uno-r3-clone-original-chips-cable-30-cm-14248 

• LCD 16x2 I2C

 Module https://www.gravityelectronic.com/shop?search=LCD%2016x2%20I2C

 • Breadboard (830 Points) 

https://www.gravityelectronic.com/shop/breadboard-830-point-not-split-power-rails-13419 

• Ultrasonic Sensor HC-SR04

 https://www.gravityelectronic.com/shop?search=HC-SR04

• Jumper Wires

 https://www.gravityelectronic.com/shop/jumper-wires



-LIBRARY

https://github.com/johnrickman/LiquidCrystal_I2C