to junhao

Dependencies:   mbed

Revision:
0:1b13f03ce7eb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Mar 08 14:38:32 2018 +0000
@@ -0,0 +1,53 @@
+#include "mbed.h"
+#include "detectors.h"
+#include "selection.h"
+#include "cal.h"
+#include <math.h>
+
+
+int main() {
+    double Vin10k=3.3;
+    double Rs=300;//ohm
+    int typeSP=1;//type 1-series or 2-parallel
+    double Ro=33;//ohm
+    double f=10000;//Hz
+     
+    double  pulse0=0;//measured quantity
+    double angle=0;//measured quantity
+    double Vo=0,Vo2=0,Vo3=0;
+    
+    double z=0;
+    
+    double Zx=0;//result
+    double Rx=0,Cx=0;
+  
+    VAddr(10);
+    //RAddr(2);
+    wait (0.5);
+    pulse0=countPulse0();
+    Vo=peakDetector();
+    
+    
+    /*wait (2);
+    printf("wait\n\r");
+    pulse0=countPulse0Debug();
+    Vo=peakDetectorDebug ();*/
+ 
+    angle=pwToAngle(pulse0);
+    z= cal_z(Vin10k,Vo,Rs);
+    printf("ave Vo=%0.3f\n\r",Vo);
+    printf("ave-pulse0=%0.3f\n\r",pulse0);
+    printf("angle_measure=%0.3f",angle);
+    
+
+    cal_Zx (z,angle,f,typeSP,Ro,&Zx,&Cx,&Rx);
+    printf("|Zx|measured=%0.3lf ohm\n\r",Zx);
+    
+    if (typeSP==1) printf("in series\n\r");
+    else  if (typeSP==2) printf("in parallel\n\r");
+    else     printf("wrong type series/paralle?\n\r");
+    
+    printf("Rx_measured=%0.6lf nF\n\r",Cx*1e9);
+    printf("Cx_measured=%0.3lf ohm\n\r",Rx);
+    printf("\n\r");
+}