to junhao

Dependencies:   mbed

Revision:
0:1b13f03ce7eb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/detectors.cpp	Thu Mar 08 14:38:32 2018 +0000
@@ -0,0 +1,72 @@
+#include "mbed.h"
+#include "detectors.h"
+//count low level time PLL phase comparator output
+//320 counts => 50us  
+DigitalIn  counter_input(p8);
+
+
+double countPulse0 (void)
+{   
+    int counter=0;
+    double ave=0;
+    int i;
+    for (i=0;i<10;i=i+1){
+        while (counter_input==0){;}
+        while (counter_input==1){;}
+        do { counter+=1;}
+        while(counter_input==0) ;    
+        }
+    ave=counter/10;
+    return ave;
+    }
+double countPulse0Debug (void)
+{   
+    int counter=0;
+    int sum=0;
+    int i;
+    double ave;
+    for (i=0;i<10;i=i+1){
+        counter=0;
+        while (counter_input==0){;}
+        while (counter_input==1){;}
+        do { counter+=1;}
+        while(counter_input==0) ;    
+        sum=sum+counter;
+        printf("pulse0 10kHz[%d]=%d\n\r", i, counter);
+        }
+        ave=sum/10;
+        printf("avepulse0 10kHz=%0.3f\n\r", ave);
+        return ave;
+    }
+
+//peak detector output voltage
+AnalogIn percentpeak(p20);
+
+double peakDetector (void)
+{
+    double sum=0,ave=0;
+    int i=0;
+    for (i=0;i<10;i=i+1){
+        sum=sum+3.3* percentpeak;
+        }
+    ave=sum/10;
+    return ave;        
+    }
+
+double peakDetectorDebug (void)
+{
+    double   peak10k[10]={0};
+    double sum=0,ave=0;
+    int i=0;
+    for (i=0;i<10;i=i+1){
+        peak10k[i]=3.3* percentpeak;
+        printf("peak10k[i]=%0.3lf\n\r",peak10k[i]);
+        }
+    sum=0;
+    for (i=0;i<10;i=i+1){
+        sum=peak10k[i]+sum;
+        }
+    ave=sum/10;
+    printf("avePeak10k=%0.3lf\n\r",ave);
+    return ave;        
+    }
\ No newline at end of file