#include <Servo.h>
#include <LiquidCrystal_I2C.h>
#define buzzer 7
#define PIN_TRIG 4
#define PIN_ECHO 3
Servo myservo;
int potpin = 0;
int val;
LiquidCrystal_I2C lcd(0x27,16,2);
byte Simbol_derajat = B11011111;
void setup()
{
pinMode(buzzer, OUTPUT);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
myservo.attach(2);
lcd.init();
lcd.backlight();
}
void loop()
{
//tone(buzzer, val, 1000);
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
// Read the result:
int duration = pulseIn(PIN_ECHO, HIGH);
val = duration / 58;
lcd.setCursor(0,0);
lcd.print("Jarak : " + String(val) + " ");
if(val <= 200)
{
tone(buzzer, 1000, 1000);
myservo.write(0);
lcd.setCursor(0,1);
lcd.print("Derajat : 0");
lcd.write(Simbol_derajat);
lcd.print(" ");
delay(15);
}
else
{
noTone(buzzer);
myservo.write(90);
lcd.setCursor(0,1);
lcd.print("Derajat : 90");
lcd.write(Simbol_derajat);
lcd.print(" ");
delay(15);
}
}