Created libraries2

Dependencies:   mbed ultrasonic

main.cpp

Committer:
VegardMidt
Date:
2015-04-21
Revision:
11:711c539b95b8
Parent:
9:74d372e08f41
Child:
12:086122072266

File content as of revision 11:711c539b95b8:

#include "mbed.h"
#include "ultrasonic.h"

PwmOut TX1(D9);                             // Use pin D9
DigitalOut TX2(D8);                         // Use pin D8
DigitalOut HVoff(D6);                       // Use pin D6
InterruptIn signal(D7);                     // Use pin D7
Timeout to1;
Timer t1;
Serial pc(SERIAL_TX, SERIAL_RX);

float previous = 1;

void TX1_send(){
    
    previous = 1;
    HVoff = 1;
    TX1.period(0.0000252);                  // Set the period of TX1 to 25.2us (39,682kHz)
    TX1.pulsewidth(0.0000116);              // Set the pulsewidth of TX1 to 11.6us (ON)
    wait(0.000300);                         // Waits 201.6us
    TX1 = 1;
    t1.reset();
    HVoff = 0;
    to1.attach(TX1_send,0.1);               // Sends for 1000us
    }


void signal_reciev(){
   float _time = t1.read();
    if (_time<0.006 && _time>0.0001){       // Reads only between 100cm and 1,7cm
    
    if (t1.read()>previous){
        pc.printf("check");
        }
    
    else{
        
        previous = _time;
        
        float cm = 0;
    
        
            cm = 34613*_time/2;                  // Calculate distance
            pc.printf("%f\r\n", cm);             // Prints distance
        }
        }
    }

int main() {
     
    t1.start();
    signal.fall(&signal_reciev);
    TX2 = 0;
    TX1_send(); 
    while(1);
    }