T-Bad
Hectopat
Daha fazla
- Cinsiyet
- Erkek
- Meslek
- Mühendis
Arkadaşlar Arduino ile sıvı seviye belirlemesi yapan bir devre yapmak istiyorum. Fakat ya kurduğum devrede ya da yazdığım kodda bir sıkıntı olduğu için LCD ekranda yazmasını istediğim yazılarda hep böyle bir sorun var. Anlaşılması için videoyu ve kodu aşağıya bırakıyorum. Video:
Kod;
Kod:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define trig 7
#define led 5
#define echo 6
#define buzzer 8
float uzaklik;
float sure;
float litre;
float referance =1.845;
int minx = -1;
int maxx = 3;
LiquidCrystal_I2C lcd(0x27,16,2);
void setup() {
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
pinMode (trig, OUTPUT);
pinMode (echo, INPUT);
pinMode (buzzer, OUTPUT);
pinMode (led, OUTPUT);
}
void loop() {
digitalWrite(trig, LOW);
delayMicroseconds(5);
digitalWrite(trig, HIGH);
delayMicroseconds (10);
digitalWrite(trig, LOW);
sure = pulseIn(echo, HIGH);
uzaklik= sure/29.1/2;
litre= uzaklik1111/1000;
delay(500);
litre= referance- litre;
if(litre<= maxx && litre>= minx);
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("DEPO SU SEVIYESI");
lcd.setCursor(5,1);
lcd.print(litre);
lcd.setCursor(10,1);
lcd.print("Litre");
delay(1000);
}
if(litre>=1.40);
{
lcd.clear();
lcd.setCursor(3,0);
lcd.print("DIKKAT");
lcd. setCursor(2,1);
lcd.print("DEPO DOLU");
digitalWrite(led, HIGH);
digitalWrite(buzzer, HIGH);
delay(500);
digitalWrite(led, LOW);
digitalWrite(buzzer, HIGH);
delay(500);
}
if(litre<=0);
{
lcd.clear();
lcd.setCursor(3,0);
lcd.print("DIKKAT");
lcd.setCursor(2,1);
lcd.print("DEPO BOS");
delay(700);
}
return loop();
{
lcd. clear();
}
}
Son düzenleyen: Moderatör: