Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Wire.h>
- #include <LiquidCrystal_I2C.h>
- LiquidCrystal_I2C lcd(16, 2);
- const byte Echo = 2;//kaki ultrasonik
- const byte Trig = 3;//kaki ultrasonik
- long duration;
- int distance;
- int jarak;
- String line1, line2;
- unsigned long old_time;
- const unsigned long tinggi_tabung = 15000;
- float baca_tinggi_tabung;
- void setup() {
- Serial.begin(9600);
- lcd.autoAddress();
- lcd.begin();
- pinMode(Echo, INPUT);
- pinMode(Trig, OUTPUT);
- }
- void loop() {
- if( millis() - old_time >= 250 ){
- get_data();
- old_time = millis();
- }
- }
- void baca_sensor(int trigPin, int echoPin){
- digitalWrite(trigPin, LOW);
- delayMicroseconds(2);
- digitalWrite(trigPin, HIGH);
- delayMicroseconds(10);
- digitalWrite(trigPin,LOW);
- duration = pulseIn(echoPin, HIGH);
- distance = duration * 0.034/2;
- }
- void get_data(){
- baca_sensor(Trig,Echo);
- jarak = distance;
- baca_tinggi_tabung = tinggi_tabung - (float)jarak/100;
- line1 = String("Jarak: ") + jarak + " cm";
- line2 = String("Tinggi: ") + String(baca_tinggi_tabung,2) + " m";
- lcd.clear();
- lcd.setCursor(0,0);
- lcd.print(line1);
- lcd.setCursor(0,1);
- lcd.print(line2);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement