Mercurial > hg > fxanalyse
changeset 47:1d3cd8260cbb
Uniform N3 measurement code to N1 and N2
author | Daniele Nicolodi <daniele.nicolodi@obspm.fr> |
---|---|
date | Wed, 10 Oct 2012 13:12:46 +0200 |
parents | 6503feae1809 |
children | 70980f27e1a4 |
files | FXAnalyse.c |
diffstat | 1 files changed, 26 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/FXAnalyse.c Wed Oct 10 12:27:29 2012 +0200 +++ b/FXAnalyse.c Wed Oct 10 13:12:46 2012 +0200 @@ -53,14 +53,6 @@ double Ndiv = 8.0; enum { - N_MEASUREMENT_STEP_0, - N_MEASUREMENT_STEP_1, - N_MEASUREMENT_STEP_2, - N_MEASUREMENT_STEP_3, - N_MEASUREMENT_STEP_4, -}; - -enum { N_MEASUREMENT_NONE, N_MEASUREMENT_INIT, N_MEASUREMENT_SLOPE, @@ -1053,11 +1045,11 @@ switch (Measuring_3) { - case N_MEASUREMENT_STEP_0: + case N_MEASUREMENT_NONE: // not measuring N3 break; - case N_MEASUREMENT_STEP_1: + case N_MEASUREMENT_INIT: // init SetCtrlVal(MainPanel, PANEL_DDS4, FrequDDS4); @@ -1069,11 +1061,11 @@ // record current DDS3 frequency GetCtrlVal(MainPanel, PANEL_DDS3, &FrequencyDDS3Init); - // step 1 done - Measuring_3 = N_MEASUREMENT_STEP_2; + // next step + Measuring_3 += 1; break; - case N_MEASUREMENT_STEP_2: + case N_MEASUREMENT_SLOPE: // slope measurement if (settling > 0) { @@ -1096,9 +1088,6 @@ Moy_slope_3 = 0.0; Slope_slope_3 = 0.0; - // step 2 done - Measuring_3 = N_MEASUREMENT_STEP_3; - // frep positive step SetCtrlVal(MainPanel, PANEL_DDS4, FrequDDS4 + DeltakHz_3 * 1000); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 4, FrequDDS4 + DeltakHz_3 * 1000); @@ -1106,12 +1095,24 @@ double fDDS3 = FrequencyDDS3Init + N3/N1 * Ndiv * DeltakHz_3 * 1000; SetCtrlVal(MainPanel, PANEL_DDS3, fDDS3); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 3, fDDS3); + // allow counter to settle settling = 3; + + // next step + Measuring_3 += 1; } break; + + case N_MEASUREMENT_ADJUST_FREQ_PLUS: + case N_MEASUREMENT_ADJUST_FREQ_MINUS: + // adjust DDS frequency to keep beatnote within the bandpass filter + + // next step + Measuring_3 += 1; + break; - case N_MEASUREMENT_STEP_3: + case N_MEASUREMENT_FREP_PLUS: // frep positive step if (settling > 0) { @@ -1129,9 +1130,6 @@ n_3 = 0; t3_3 = utc; - // step 3 done - Measuring_3 = N_MEASUREMENT_STEP_4; - // frep negative step SetCtrlVal(MainPanel, PANEL_DDS4, FrequDDS4 - DeltakHz_3 * 1000); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 4, FrequDDS4 - DeltakHz_3 * 1000); @@ -1139,13 +1137,17 @@ double fDDS3 = FrequencyDDS3Init - N3/N1 * Ndiv * DeltakHz_3 * 1000; SetCtrlVal(MainPanel, PANEL_DDS3, fDDS3); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 3, fDDS3); + // allow counter to settle settling = 3; + + // next step + Measuring_3 += 1; } break; - case N_MEASUREMENT_STEP_4: + case N_MEASUREMENT_FREP_MINUS: // frep negative step if (settling > 0) { @@ -1171,15 +1173,15 @@ Frepminus_3 = 0.0; Frepplus_3 = 0.0; - // step 4 done - Measuring_3 = N_MEASUREMENT_STEP_0; - // back to nominal frep SetCtrlVal(MainPanel, PANEL_DDS4, FrequDDS4); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 4, FrequDDS4); // back to initial DDS3 frequency SetCtrlVal(MainPanel, PANEL_DDS3, FrequencyDDS3Init); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 3, FrequencyDDS3Init); + + // done + Measuring_3 = N_MEASUREMENT_NONE; } break; }