Elektronikprojekt Grupp 13 / Mbed OS test_fft_grp13

Dependencies:   mbed-dsp

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

Committer:
deeza
Date:
Wed Mar 29 15:47:30 2017 +0000
Revision:
46:5ad0d78d045e
Parent:
45:b1b431753adc
Child:
47:b9abb45fde85
tillst?nd

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jonathan Austin 0:2757d7abb7d9 1 #include "mbed.h"
Jonathan Austin 0:2757d7abb7d9 2
Jonathan Austin 0:2757d7abb7d9 3 DigitalOut led1(LED1);
Jonathan Austin 0:2757d7abb7d9 4
deeza 44:7f2c1e8d0761 5 // State machine
deeza 44:7f2c1e8d0761 6 int STATE;
deeza 44:7f2c1e8d0761 7 const int NONE = -1;
deeza 46:5ad0d78d045e 8 const int IDLE_LISTEN = 0;
deeza 46:5ad0d78d045e 9 const int CALC_DELTA_T = 1;
deeza 46:5ad0d78d045e 10 const int CALC_DELTA_S = 2;
deeza 46:5ad0d78d045e 11 const int CALC_DELTA_PHI = 3;
deeza 46:5ad0d78d045e 12 const int SEND = 4;
deeza 44:7f2c1e8d0761 13 const int WAIT = 9;
deeza 44:7f2c1e8d0761 14
Jonathan Austin 1:846c97078558 15 // main() runs in its own thread in the OS
Jonathan Austin 0:2757d7abb7d9 16 int main() {
deeza 46:5ad0d78d045e 17 STATE = IDLE_LISTEN;
Jonathan Austin 0:2757d7abb7d9 18 while (true) {
deeza 44:7f2c1e8d0761 19 switch (STATE) {
deeza 44:7f2c1e8d0761 20
deeza 46:5ad0d78d045e 21 case IDLE_LISTEN:
deeza 46:5ad0d78d045e 22 //code here
deeza 46:5ad0d78d045e 23 STATE = CALC_DELTA_T
deeza 44:7f2c1e8d0761 24 break;
deeza 44:7f2c1e8d0761 25
deeza 46:5ad0d78d045e 26 case CALC_DELTA_T:
deeza 44:7f2c1e8d0761 27 //code here
deeza 44:7f2c1e8d0761 28 break;
deeza 46:5ad0d78d045e 29
deeza 46:5ad0d78d045e 30 case CALC_DELTA_S:
deeza 46:5ad0d78d045e 31 //code here
deeza 46:5ad0d78d045e 32 break;
deeza 44:7f2c1e8d0761 33
deeza 46:5ad0d78d045e 34 case CALC_DELTA_PHI:
deeza 46:5ad0d78d045e 35 // code here
deeza 46:5ad0d78d045e 36 break;
deeza 46:5ad0d78d045e 37
deeza 46:5ad0d78d045e 38 case SEND:
deeza 46:5ad0d78d045e 39 // code here
deeza 46:5ad0d78d045e 40 break;
deeza 46:5ad0d78d045e 41
deeza 44:7f2c1e8d0761 42 }
Jonathan Austin 0:2757d7abb7d9 43 }
Jonathan Austin 0:2757d7abb7d9 44 }
KlaraBengtsson 39:c92c150c0dd2 45 //Calculating distanse between sound and camera
KlaraBengtsson 37:3bc968f47d9b 46 double calcDis(double t, double v){
KlaraBengtsson 37:3bc968f47d9b 47 double s = t*v;
KlaraBengtsson 37:3bc968f47d9b 48 return s;
KlaraBengtsson 37:3bc968f47d9b 49
KlaraBengtsson 37:3bc968f47d9b 50 }
KlaraBengtsson 39:c92c150c0dd2 51 //Calculating angle in radians, D distanse between mic1 and mic2
KlaraBengtsson 37:3bc968f47d9b 52 double calcAng(double s, double D){
KlaraBengtsson 37:3bc968f47d9b 53 double ang = asin(s/D);
KlaraBengtsson 37:3bc968f47d9b 54 return ang;
KlaraBengtsson 37:3bc968f47d9b 55 }
KlaraBengtsson 37:3bc968f47d9b 56
NicklasNp 38:0eceb5feddc4 57 //Presuming the input value is temp as a nuber and humidity as procent
NicklasNp 38:0eceb5feddc4 58 double speedofsound(double temp, double hum){
NicklasNp 38:0eceb5feddc4 59 //Calculations done in Matlab
NicklasNp 43:d3f8e93d85f0 60
NicklasNp 41:b34a65881a45 61 double speed = 331.1190 + 0.6016*temp + 0.0126*hum;
NicklasNp 43:d3f8e93d85f0 62
NicklasNp 38:0eceb5feddc4 63 return speed;
NicklasNp 38:0eceb5feddc4 64 }