Junhao Zhang
/
DEBUG_10K
AFSD
Fork of DEBUG_10K by
main.cpp
- Committer:
- junhaozhang
- Date:
- 2018-03-22
- Revision:
- 2:d93488b7eec5
- Parent:
- 1:2967e2507d52
File content as of revision 2:d93488b7eec5:
#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=15;//ohm double f=10000;//Hz 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"); 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); wait (0.5); pulse0=countPulse0(); Vo=peakDetector(); 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.3lf\n\r",(double)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("Cx_measured=%0.6lf nF\n\r",Cx*1e9); printf("Rx_measured=%0.3lf ohm\n\r",Rx); printf("wait 2s\n\r"); wait (2); pulse0=countPulse0(); Vo=peakDetector(); 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\n\r",angle); cal_Zx (z,angle,f,typeSP,Ro,&Zx,&Cx,&Rx); printf("|Zx|measured=%0.3lf ohm\n\r",Zx); printf("Cx_measured=%0.6lf nF\n\r",Cx*1e9); printf("Rx_measured=%0.3lf ohm\n\r",Rx); printf("\n\r"); }