Xu ZHANG
/
DEBUG_10K
to junhao
main.cpp@0:1b13f03ce7eb, 2018-03-08 (annotated)
- Committer:
- xuzhang
- Date:
- Thu Mar 08 14:38:32 2018 +0000
- Revision:
- 0:1b13f03ce7eb
synthesis for 10k
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
xuzhang | 0:1b13f03ce7eb | 1 | #include "mbed.h" |
xuzhang | 0:1b13f03ce7eb | 2 | #include "detectors.h" |
xuzhang | 0:1b13f03ce7eb | 3 | #include "selection.h" |
xuzhang | 0:1b13f03ce7eb | 4 | #include "cal.h" |
xuzhang | 0:1b13f03ce7eb | 5 | #include <math.h> |
xuzhang | 0:1b13f03ce7eb | 6 | |
xuzhang | 0:1b13f03ce7eb | 7 | |
xuzhang | 0:1b13f03ce7eb | 8 | int main() { |
xuzhang | 0:1b13f03ce7eb | 9 | double Vin10k=3.3; |
xuzhang | 0:1b13f03ce7eb | 10 | double Rs=300;//ohm |
xuzhang | 0:1b13f03ce7eb | 11 | int typeSP=1;//type 1-series or 2-parallel |
xuzhang | 0:1b13f03ce7eb | 12 | double Ro=33;//ohm |
xuzhang | 0:1b13f03ce7eb | 13 | double f=10000;//Hz |
xuzhang | 0:1b13f03ce7eb | 14 | |
xuzhang | 0:1b13f03ce7eb | 15 | double pulse0=0;//measured quantity |
xuzhang | 0:1b13f03ce7eb | 16 | double angle=0;//measured quantity |
xuzhang | 0:1b13f03ce7eb | 17 | double Vo=0,Vo2=0,Vo3=0; |
xuzhang | 0:1b13f03ce7eb | 18 | |
xuzhang | 0:1b13f03ce7eb | 19 | double z=0; |
xuzhang | 0:1b13f03ce7eb | 20 | |
xuzhang | 0:1b13f03ce7eb | 21 | double Zx=0;//result |
xuzhang | 0:1b13f03ce7eb | 22 | double Rx=0,Cx=0; |
xuzhang | 0:1b13f03ce7eb | 23 | |
xuzhang | 0:1b13f03ce7eb | 24 | VAddr(10); |
xuzhang | 0:1b13f03ce7eb | 25 | //RAddr(2); |
xuzhang | 0:1b13f03ce7eb | 26 | wait (0.5); |
xuzhang | 0:1b13f03ce7eb | 27 | pulse0=countPulse0(); |
xuzhang | 0:1b13f03ce7eb | 28 | Vo=peakDetector(); |
xuzhang | 0:1b13f03ce7eb | 29 | |
xuzhang | 0:1b13f03ce7eb | 30 | |
xuzhang | 0:1b13f03ce7eb | 31 | /*wait (2); |
xuzhang | 0:1b13f03ce7eb | 32 | printf("wait\n\r"); |
xuzhang | 0:1b13f03ce7eb | 33 | pulse0=countPulse0Debug(); |
xuzhang | 0:1b13f03ce7eb | 34 | Vo=peakDetectorDebug ();*/ |
xuzhang | 0:1b13f03ce7eb | 35 | |
xuzhang | 0:1b13f03ce7eb | 36 | angle=pwToAngle(pulse0); |
xuzhang | 0:1b13f03ce7eb | 37 | z= cal_z(Vin10k,Vo,Rs); |
xuzhang | 0:1b13f03ce7eb | 38 | printf("ave Vo=%0.3f\n\r",Vo); |
xuzhang | 0:1b13f03ce7eb | 39 | printf("ave-pulse0=%0.3f\n\r",pulse0); |
xuzhang | 0:1b13f03ce7eb | 40 | printf("angle_measure=%0.3f",angle); |
xuzhang | 0:1b13f03ce7eb | 41 | |
xuzhang | 0:1b13f03ce7eb | 42 | |
xuzhang | 0:1b13f03ce7eb | 43 | cal_Zx (z,angle,f,typeSP,Ro,&Zx,&Cx,&Rx); |
xuzhang | 0:1b13f03ce7eb | 44 | printf("|Zx|measured=%0.3lf ohm\n\r",Zx); |
xuzhang | 0:1b13f03ce7eb | 45 | |
xuzhang | 0:1b13f03ce7eb | 46 | if (typeSP==1) printf("in series\n\r"); |
xuzhang | 0:1b13f03ce7eb | 47 | else if (typeSP==2) printf("in parallel\n\r"); |
xuzhang | 0:1b13f03ce7eb | 48 | else printf("wrong type series/paralle?\n\r"); |
xuzhang | 0:1b13f03ce7eb | 49 | |
xuzhang | 0:1b13f03ce7eb | 50 | printf("Rx_measured=%0.6lf nF\n\r",Cx*1e9); |
xuzhang | 0:1b13f03ce7eb | 51 | printf("Cx_measured=%0.3lf ohm\n\r",Rx); |
xuzhang | 0:1b13f03ce7eb | 52 | printf("\n\r"); |
xuzhang | 0:1b13f03ce7eb | 53 | } |