public void saveSettings() { ad4360_configuration cfg = new ad4360_configuration(buildControlWord(), buildNCounterWord(), buildRCounterWord()); Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); config.Sections.Remove("ad4360_settings"); config.Sections.Add("ad4360_settings", cfg); config.Save(ConfigurationSaveMode.Full); }
public void readSettings() { ad4360_configuration configData = ConfigurationManager.GetSection("ad4360_settings") as ad4360_configuration; if ((configData.control_word & ad4360.ASYNCHRONOUS_POWER_DOWN) != 0) { bnAsyncPowerDown.Checked = true; } else if ((configData.control_word & ad4360.SYNCHRONOUS_POWER_DOWN) != 0) { bnSyncPowerDown.Checked = true; } else { bnPowerNormal.Checked = true; } corePowerLevel.SelectedIndex = (configData.control_word >> ad4360.CORE_POWER_LEVEL) & ad4360.CORE_POWER_LEVEL_MASK; currentSetting1.SelectedIndex = (configData.control_word >> ad4360.CURRENT_SETTING_1) & ad4360.CURRENT_SETTING_MASK; currentSetting2.SelectedIndex = (configData.control_word >> ad4360.CURRENT_SETTING_2) & ad4360.CURRENT_SETTING_MASK; if ((configData.control_word & ad4360.CONTROL_LATCH_CP_GAIN_CURRENT_SETTING_2) != 0) { bnCurrentSetting2.Checked = true; } else { bnCurrentSetting1.Checked = true; } bnCPThreeState.Checked = (configData.control_word & ad4360.CHARGE_PUMP_OUTPUT_THREE_STATE) != 0; if ((configData.control_word & ad4360.PHASE_DETECTOR_POLARITY_POSITIVE) != 0) { bnPhaseDetPolPos.Checked = true; } else { bnPhaseDetPolNeg.Checked = true; } bnCounterReset.Checked = (configData.control_word & ad4360.COUNTER_RESET) != 0; bnMuteTillLockDetect.Checked = (configData.control_word & ad4360.MUTE_TIL_LOCK_DETECT) != 0; outPowerLevel.SelectedIndex = (configData.control_word >> ad4360.OUTPUT_POWER_LEVEL) & ad4360.OUTPUT_POWER_LEVEL_MASK; muxoutControl.SelectedIndex = (configData.control_word >> ad4360.MUXOUT) & ad4360.MUXOUT_MASK; bandSelClockDiv.SelectedIndex = (configData.r_counter_word >> ad4360.BAND_SELECT_CLOCK_DIVIDER) & ad4360.BAND_SELECT_CLOCK_DIVIDER_MASK; antiBLPW.SelectedIndex = (configData.r_counter_word >> ad4360.ANTI_BACKLASH_PULSE_WIDTH) & ad4360.ANTI_BACKLASH_PULSE_WIDTH_MASK; if ((configData.r_counter_word & ad4360.LOCK_DETECT_PRECISION_FIVE_CYCLES) != 0) { bnFiveCycles.Checked = true; } else { bnThreeCycles.Checked = true; } rCounterValue.Text = ((configData.r_counter_word >> ad4360.R_COUNTER) & ((1 << ad4360.R_COUNTER_BITS) - 1)).ToString(); nCounterValue.Text = ((configData.n_counter_word >> ad4360.B_COUNTER) & ((1 << ad4360.B_COUNTER_BITS) - 1)).ToString(); }