TolpuddleSartre:
The code you posted won't work, and anyway you need to learn the difference between "millis()" and "micros()"
right now this is what im using
unsigned long WaterWait = 4000;
unsigned long Waterdelay =0;
unsigned long WaterWait2 = 10;
unsigned long WaterWait3 = 20;
unsigned long Waterdelay2 =0;
unsigned long Waterdelay3 =0;
int trig = 12;
int echo = 11;
void setup()
{
Serial.begin(9600);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
}
void loop()
{
if (millis() - Waterdelay > WaterWait) {
long t = 0, h = 0, hp = 0;
digitalWrite(trig, LOW);
if (micros() - Waterdelay2 > WaterWait2) {
digitalWrite(trig, HIGH);
if (micros() - Waterdelay3 > WaterWait3) {
digitalWrite(trig, LOW);
t = pulseIn(echo, HIGH);
h = t / 45;
h = h - 5; // offset correction
h = 35 - h; // water height, 0 - 50 cm
hp = 2.7 * h; // distance in %, 0-100 %
Waterdelay2 = millis();
Waterdelay3 = millis();
Waterdelay = millis();
Serial.print(F("The Water Level Is At "));
Serial.print(hp);
Serial.println(F("%"));
}
}
}
}