/*
* Rechnet Schwebungs-Frequenzen f in Geschwindigkeiten v um.
* f_radar = 10.5 GHz
*/


#include <FreqMeasure.h>
//input pin Arduino Uno: 8
const int MC = 1; // Zahl der Messungen, über die gemittelt wird
const float thres = 0.3; // Ignoriere Geschwindigkeiten < thres
const float f2v = 0.05131; // Umrechnung Frequenz -> km/h

double csum=0;
int ccount=0;

void setup() {
Serial.begin(57600);
Serial.println("Zeit (ms); Geschwindigkeit (km/h)");
FreqMeasure.begin();
}

void loop1(){
  if (FreqMeasure.available()) {
  Serial.println(FreqMeasure.countToFrequency(FreqMeasure.read()));
    }
  }

void loop() {
  float vkmh;
  if (FreqMeasure.available()) {
    // average several reading together
    csum += FreqMeasure.read();
    ++ccount;
    if (ccount >= MC) {
      float frequency = FreqMeasure.countToFrequency(csum / ccount);
      vkmh = frequency * f2v;
      if (vkmh> thres){
        Serial.print(millis());
        Serial.print("; ");
        Serial.println(frequency*f2v);
      }
      csum = 0;
      ccount = 0;
    }
  }
}
