Biblioteca para uso do ultrassom HC-SR04

Dependents:   Sonar-HC-SR04 CarrinhoLabirinto Nucleo_Us_ticker_20160803 ProjetoSO ... more

Revision:
0:d1d7bb1c1f6c
Child:
1:56b2ae08c35e
Child:
3:12d6d751f4fc
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HCSR04.h	Thu Feb 05 19:00:51 2015 +0000
@@ -0,0 +1,64 @@
+#ifndef HCSR04_H
+#define HCSR04_H
+
+#include "mbed.h"
+
+
+
+/** Sonar HC-SR04 example.
+ * @code
+ * #include "mbed.h"
+ * #include "HCSR04.h"
+ *
+ * DigitalOut myled(LED1);
+ * Serial pc(USBTX,USBRX);     
+ *
+ * HCSR04 sonar(PTB0, PTD3);
+ *
+ * int main() {
+ *     while(1) {
+ *         printf("Distancia detectada pelo sensor Frente %.2f cm \n", sonar.echo()); 
+ *         wait_ms(1000);
+ *     }
+ * }
+ *
+ * @endcode
+*/
+
+class HCSR04 {    
+    public:    
+        /** Constructor, create HC_SR04 instance 
+          *
+          * @param trigger TRIG pin
+          * @param echo ECHO pin
+          */
+        HCSR04(PinName trigger, PinName echo);
+ 
+        /** Faz uma leitura do sonar
+          * 
+          * @returns Tempo do pulso echo em microsegundos*/
+        float readEcho(void);
+        
+        /** Mede a distância em centímetros "cm" 
+          *
+          *@returns Distância em cm
+          */
+        float getCm(void);
+        
+        /** Mede a distência em polegadas "in" 
+          *
+          *@returns Distência em in*/
+        float getIn(void);
+        
+    private:
+        float tdist;        //Leitura do tempo transcorrido
+        float distcm;       //
+        float distin;   
+        
+        DigitalOut _t;      //Configuração do pino de Trigger  
+        DigitalIn _e;       //Configuração do pino de Echo
+        Timer _tempo;
+        
+};
+
+#endif
\ No newline at end of file