#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Ultrasonic.h>
LiquidCrystal_I2C lcd(0x27,16,2);
const int trigPin = 6;
const int echoPin = 7;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.println("Student: EMMANUEL M. REY");
Serial.println("Year and Section: BSABE-3B");
Serial.println("Student Number: 0221-1617");
Serial.println("------------------------------");
Serial.println("------------------------------");
Serial.println(" ");
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("EMMANUEL REY");
lcd.setCursor(0,1);
lcd.print("BSABE-3B");
delay(3000);
lcd.clear();
lcd.setCursor(3,0);
lcd.print("Distance");
lcd.setCursor(3,1);
lcd.print("Sensing...");
delay(3000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("cm: ");
}
void loop() {
// put your main code here, to run repeatedly:
for (int i = 0; i < 100; i++)
{
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, LOW);
float duration = pulseIn(echoPin, HIGH);
float distance = ((0.034/2) * duration);
Serial.println("Data Point: ");
Serial.println(i + 1);
Serial.println(":");
Serial.println("Distance: ");
Serial.println(distance);
Serial.println(" ");
Serial.println(" ");
Serial.println(" ");
lcd.setCursor(0,0);
lcd.print("Distance: ");
lcd.setCursor(10,0);
lcd.print(distance);
lcd.setCursor(0,1);
lcd.print("Unit: cm");
delay(1500);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Distance: ");
lcd.setCursor(10,0);
lcd.print(distance / 2.54);
lcd.setCursor(0,1);
lcd.print("Unit: in");
delay(1500);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Distance: ");
lcd.setCursor(10,0);
lcd.print(distance / 30.48);
lcd.setCursor(0,1);
lcd.print("Unit: ft");
delay(1500);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Distance: ");
lcd.setCursor(10,0);
lcd.print(distance * 10);
lcd.setCursor(0,1);
lcd.print("Unit: mm");
delay(1500);
lcd.clear();
}
}