private void button4_Click(object sender, EventArgs e)
        {
            int nGpibAddr = 0;
            int error     = 0;

            nGpibAddr = (Int32)GPIBNum.Value;
            string strResource = "GPIB0::" + nGpibAddr + "::INSTR"; // GPIB1 to GPIB0

            if (button4.Text == "打开")                               //用户要连接N3300A
            {
                error = N3300A_Driver.Connect_N3300A(strResource);
                if (error < 0)
                {
                    CCommonFuncs.ShowHintInfor(eHintInfoType.error, "N3300A连接失败!");
                    button4.Text = "打开";
                }
                else
                {
                    button4.Text = "关闭";
                }
            }
            else//断开万用表
            {
                N3300A_Driver.Close();
                button4.Text = "打开";
            }
        }
        public void bgWork_doWork(object sender, DoWorkEventArgs e)
        {
            int    error;
            double reVolValue  = 0;
            double reEleValue  = 0;
            double ResistValue = (double)resistValue.Value;
            int    circleNum   = (int)CycNums.Value;

            bgWork.ReportProgress(10);
            #region 执行N3300A指令

            error = N3300A_Driver.Reset();
            error = N3300A_Driver.CLS();
            error = N3300A_Driver.SetWorkMode();
            if (error < 0)
            {
                MessageBox.Show("命令出错!");
                return;
            }
            error = N3300A_Driver.SetElectProtect();
            if (error < 0)
            {
                MessageBox.Show("命令出错!");
                return;
            }
            error = N3300A_Driver.SetStartProtectfeature();
            if (error < 0)
            {
                MessageBox.Show("命令出错!");
                return;
            }
            error = N3300A_Driver.SelectResistanceRange();
            if (error < 0)
            {
                MessageBox.Show("命令出错!");
                return;
            }
            error = N3300A_Driver.SetResistanceLevel(ResistValue);
            if (error < 0)
            {
                MessageBox.Show("命令出错!");
                return;
            }
            error = N3300A_Driver.SetOpenInput();
            if (error < 0)
            {
                MessageBox.Show("命令出错!");
                return;
            }
            #endregion


            for (int i = 0; i < circleNum; i++)
            {
                error = N3300A_Driver.GetVoltageValue(ref reVolValue, ref reEleValue);
                if (error >= 0)
                {
                    yVol[i] = reVolValue;
                    yEle[i] = reEleValue;
                    // chart1.Series[0].Points.AddXY(i, reVolValue, reEleValue);
                    if (circleNum >= 100)
                    {
                        bgWork.ReportProgress(40);
                    }
                    else
                    {
                        bgWork.ReportProgress(i);
                    }
                }
                else
                {
                    MessageBox.Show("命令出错!");
                    return;
                }
            }
        }