Arduino IDE Coding
int trigPin = 9;
int echoPin = 10;
int button = 2;
int greenLed = 6;
int redLed = 7;
long duration;
int distance;
bool measuring = false;
int lastButtonState = HIGH;
void setup()
{
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(button, INPUT_PULLUP);
pinMode(greenLed, OUTPUT);
pinMode(redLed, OUTPUT);
Serial.begin(9600);
digitalWrite(greenLed, LOW);
digitalWrite(redLed, HIGH);
}
void loop()
{
int buttonState = digitalRead(button);
if(buttonState == LOW && lastButtonState == HIGH)
{
measuring = !measuring;
if(measuring == true)
{
Serial.println("Measurement Started");
digitalWrite(greenLed, HIGH);
digitalWrite(redLed, LOW);
}
else
{
Serial.println("Measurement Stopped");
Serial.print("Final Length = ");
Serial.print(distance);
Serial.println(" cm");
digitalWrite(greenLed, LOW);
digitalWrite(redLed, HIGH);
}
delay(300);
}
lastButtonState = buttonState;
if(measuring == true)
{
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
Serial.print("Length = ");
Serial.print(distance);
Serial.println(" cm");
delay(500);
}
}