Ultrasonic HC-SR04 Ultraschall als Abstandsmessgerät mit LED’s

 

/*
 * HCSR04Ultrasonic/examples/UltrasonicDemo/UltrasonicDemo.pde
 *
 * SVN Keywords
 * ----------------------------------
 * $Author: cnobile $
 * $Date: 2011-09-17 02:43:12 -0400 (Sat, 17 Sep 2011) $
 * $Revision: 29 $
 * ----------------------------------
 */

#include <Ultrasonic.h>

#define TRIGGER_PIN  12
#define ECHO_PIN     13

Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN);

void setup()
  {
  Serial.begin(9600);
   pinMode(2, OUTPUT);
   pinMode(3, OUTPUT);
   pinMode(4, OUTPUT);
   pinMode(5, OUTPUT);
   pinMode(6, OUTPUT);
   pinMode(7, OUTPUT);
   pinMode(8, OUTPUT);
   pinMode(9, OUTPUT);
   pinMode(10, OUTPUT);
   pinMode(11, OUTPUT);
  }

void loop()
  {
  float cmMsec, inMsec;
  long microsec = ultrasonic.timing();

  cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM);
  inMsec = ultrasonic.convert(microsec, Ultrasonic::IN);
  Serial.print("MS: ");
  Serial.print(microsec);
  Serial.print(", CM: ");
  Serial.print(cmMsec);
  Serial.print(", IN: ");
  Serial.println(inMsec);

  if ((cmMsec) < 10)  { digitalWrite(11, HIGH); }
  if ((cmMsec) > 10)  { digitalWrite(11, LOW);  }
  if ((cmMsec) < 20)  { digitalWrite(10, HIGH); }
  if ((cmMsec) > 20)  { digitalWrite(10, LOW);  }
  if ((cmMsec) < 30)  { digitalWrite(9, HIGH);  }
  if ((cmMsec) > 30)  { digitalWrite(9, LOW);   }
  if ((cmMsec) < 40)  { digitalWrite(8, HIGH);  }
  if ((cmMsec) > 40)  { digitalWrite(8, LOW);   }
  if ((cmMsec) < 50)  { digitalWrite(7, HIGH);  }
  if ((cmMsec) > 50)  { digitalWrite(7, LOW);   }
  if ((cmMsec) < 60)  { digitalWrite(6, HIGH);  }
  if ((cmMsec) > 60)  { digitalWrite(6, LOW);   }
  if ((cmMsec) < 70)  { digitalWrite(5, HIGH);  }
  if ((cmMsec) > 70)  { digitalWrite(5, LOW);   }
  if ((cmMsec) < 80)  { digitalWrite(4, HIGH);  }
  if ((cmMsec) > 80)  { digitalWrite(4, LOW);   }
  if ((cmMsec) < 90)  { digitalWrite(3, HIGH);  }
  if ((cmMsec) > 90)  { digitalWrite(3, LOW);   }
  if ((cmMsec) < 100) { digitalWrite(2, HIGH);  }
  if ((cmMsec) > 100) { digitalWrite(2, LOW);   }

  delay(100);
  }

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.