Ejemplo n.º 1
0
        private string addressOrAlias;    // VISA identifier of the instrument

        // <METHODS>

        /// <summary>
        /// Connects to the instrument via selected connection method (interface)
        /// </summary>
        /// <param name="addressOrAlias">VISA address or alias of the instrument</param>
        /// <param name="connectionMode">Physical interface over which the connection is made</param>
        public virtual void Connect(string addressOrAlias, ConnectionModes connectionMode)
        {
            if (IsConnected)
            {
                Disconnect();
            }                                  // disconnect first

            this.addressOrAlias = addressOrAlias;
            switch (connectionMode)
            {
            case ConnectionModes.USB:
                dmm = new UsbSession(addressOrAlias);
                break;

            case ConnectionModes.TCPIP:
                dmm = new TcpipSession(addressOrAlias);
                break;

            case ConnectionModes.Serial:
                dmm = new SerialSession(addressOrAlias);
                break;

            case ConnectionModes.VXI:
                dmm = new VxiSession(addressOrAlias);
                break;

            default:
                break;
            }

            io = dmm.RawIO;
            dmm.TimeoutMilliseconds = Global.VISATimeout;
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Disconnect the instrument and free the connection resources
 /// </summary>
 public void Disconnect()
 {
     io = null;
     if (dmm != null)
     {
         dmm.Dispose();
     }
     dmm            = null;
     addressOrAlias = null;
 }