Elektronikprojekt Grupp 13 / Mbed OS test_fft_grp13

Dependencies:   mbed-dsp

Fork of mbed-os-example-blinky by Elektronikprojekt Grupp 13

main.cpp

Committer:
deeza
Date:
2017-04-05
Revision:
51:837137ab83ed
Parent:
50:8ce5ed8e208b
Child:
52:d5c59769e1de

File content as of revision 51:837137ab83ed:

#include "mbed.h"
#include "complex.h"
#include "fft.h"

Serial pc(USBTX, USBRX);

DigitalOut led1(LED1);

// State machine
int    STATE;
//const int NONE     = -1;
const int IDLE  = 0;
const int LISTEN = 1;
const int CALC  = 2;
const int SEND   = 3;
const int CALC_ERROR = 4;
//const int WAIT     = 9;

// main() runs in its own thread in the OS
int main() {
    
   /* 
    STATE = IDLE;
    while (true) {
        switch (STATE) {
            
            case IDLE:
            //code here
            STATE = LISTEN; //next state
            break;
            
            case LISTEN:
            //code here
            break;
            
            case CALC:
            //code here
            break; 

            case CALC_ERROR:
            //code here
            break;
            
            case SEND:
            // code here
            break;   
            }
    }*/
    
    //testar complexa tal addering, verkar funka.
    complex c1 = complex(1,2);
    complex c2 = complex(2,3);
    complex c3 = c1 + c2;
    pc.printf("hello \n");
 
 //...Inside your signal processing function
   //   Allocate memory for signal data
   complex *pSignal = new complex[1024];
   //...Fill signal array with data
   //   Apply FFT
   CFFT::Forward(pSignal, 1024);
   //...Utilize transform result
   //   Free memory
   delete[] pSignal;
 
 
 
}


//Calculating distanse between sound and camera
double calcDis(double t, double v){
    double s = t*v;
    return s;
    
}
//Calculating angle in radians, D distanse between mic1 and mic2
double calcAng(double s, double D){
    double ang = asin(s/D);
    return ang;
}

//Presuming the input value is temp as a nuber and humidity as procent
double speedofsound(double temp, double hum){
    //Calculations done in Matlab

    double speed = 331.1190 + 0.6016*temp + 0.0126*hum;

    return speed;
}