Ultrasonic.cpp 738 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. Ultrasonic.cpp - Library for HC-SR04 Ultrasonic Ranging Module.library
  3. http://www.aliexpress.com/store/226959
  4. */
  5. #include <Arduino.h>
  6. #include "Ultrasonic.h"
  7. Ultrasonic::Ultrasonic(int TP, int EP)
  8. {
  9. pinMode(TP,OUTPUT);
  10. pinMode(EP,INPUT);
  11. Trig_pin=TP;
  12. Echo_pin=EP;
  13. }
  14. long Ultrasonic::Timing()
  15. {
  16. digitalWrite(Trig_pin, LOW);
  17. delayMicroseconds(2);
  18. digitalWrite(Trig_pin, HIGH);
  19. delayMicroseconds(10);
  20. digitalWrite(Trig_pin, LOW);
  21. duration = pulseIn(Echo_pin,HIGH);
  22. return duration;
  23. }
  24. long Ultrasonic::Ranging(int sys)
  25. {
  26. Timing();
  27. distacne_cm = duration /29 / 2 ;
  28. distance_inc = duration / 74 / 2;
  29. if (sys)
  30. return distacne_cm;
  31. else
  32. return distance_inc;
  33. }