public double GetValueV(L502Ch _channel, LCard502Pars _parsLCard502Pars, ref bool _ret) { if (IsStarted) { _ret = false; return(0); } double[] buf = new double[1]; LoadSettings(_parsLCard502Pars, new L502Ch[] { _channel }); _ret = !CheckError(hnd.AsyncGetAdcFrame(L502.ProcFlags.VOLT, 1000, buf)); pr("GetValueV=" + buf.ToString()); return(buf[0]); }
private void btnAsyncAdcFrame_Click(object sender, EventArgs e) { if (hnd != null) { /* устанавливаем параметры модуля */ lpcie.Errs err = setupParams(); if (err != lpcie.Errs.OK) { MessageBox.Show(X502.GetErrorString(err), "Ошибка настройки параметров АЦП", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (err == lpcie.Errs.OK) { UInt32 lch_cnt = hnd.LChannelCount; /* Создаем массив для приема количества отсчетов, равному количеству * логических каналов */ double[] adc_data = new double[lch_cnt]; err = hnd.AsyncGetAdcFrame(X502.ProcFlags.VOLT, 1000, adc_data); if (err != lpcie.Errs.OK) { MessageBox.Show(X502.GetErrorString(err), "Ошибка приема кадра АЦП", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { /* выводим результат */ edtLCh1_Result.Text = adc_data[0].ToString("F7"); if (lch_cnt >= 2) { edtLCh2_Result.Text = adc_data[1].ToString("F7"); } else { edtLCh2_Result.Text = ""; } if (lch_cnt >= 3) { edtLCh3_Result.Text = adc_data[2].ToString("F7"); } else { edtLCh3_Result.Text = ""; } } } } }