Esempio n. 1
0
        public ComPortClient(DeviceConfig _Config, IConnectionReport _ConnReport)
        {
            cfg        = _Config;
            ConnReport = _ConnReport;
            Parity p = Parity.None;

            switch (_Config.ParityBit)
            {
            case "Even":
                p = Parity.Even;
                break;

            case "Mark":
                p = Parity.Mark;
                break;

            case "None":
                p = Parity.None;
                break;

            case "Odd":
                p = Parity.Odd;
                break;

            case "Space":
                p = Parity.Space;
                break;
            }
            StopBits s = StopBits.One;

            switch (_Config.StopBit)
            {
            case "None":
                s = StopBits.None;
                break;

            case "One":
                s = StopBits.One;
                break;

            case "OnePointFive":
                s = StopBits.OnePointFive;
                break;

            case "Two":
                s = StopBits.Two;
                break;
            }

            port = new SerialPort(_Config.PortName, _Config.BaudRate, p, _Config.DataBits, s);
            if (_Config.Vendor.Equals("SMARTTAG"))
            {
                port.Handshake    = Handshake.None;
                port.RtsEnable    = true;
                port.ReadTimeout  = 5000;
                port.WriteTimeout = 5000;
            }
        }
Esempio n. 2
0
        public SocketClient(string IP, int Port, string Decription, IConnectionReport _tObj)
        {
            RmIp  = IP;
            SPort = Port;
            tObj  = _tObj;


            Desc = Decription;
        }
Esempio n. 3
0
        int RDataLen = 100;  //固定長度傳送資料~ 可以針對自己的需要改長度
        ///

        /// 構造函數
        ///
        ///
        ///
        public SocketClient(string ip, int port, IConnectionReport _ConnReport)
        {
            remoteHost = ip;
            remotePort = port;
            ConnReport = _ConnReport;

            socketDataArrival  = socketDataArrivalHandler;
            socketDisconnected = socketDisconnectedHandler;
        }
Esempio n. 4
0
        int RDataLen = 100;  //固定長度傳送資料~ 可以針對自己的需要改長度
        ///

        /// 構造函數
        ///
        ///
        ///
        public SocketClient(DeviceConfig _Config, IConnectionReport _ConnReport)
        {
            Config     = _Config;
            remoteHost = _Config.IPAdress;
            remotePort = _Config.Port;
            ConnReport = _ConnReport;

            socketDataArrival  = socketDataArrivalHandler;
            socketDisconnected = socketDisconnectedHandler;
        }
Esempio n. 5
0
        int RDataLen = 100;  //固定長度傳送資料~ 可以針對自己的需要改長度
        ///

        /// 構造函數
        ///
        ///
        ///
        public SocketClient(IController _Config, IConnectionReport _ConnReport)
        {
            Config     = _Config;
            remoteHost = _Config.GetIPAdress();
            remotePort = _Config.GetPort();
            ConnReport = _ConnReport;

            socketDataArrival  = socketDataArrivalHandler;
            socketDisconnected = socketDisconnectedHandler;
        }
Esempio n. 6
0
        public ComPortClient(DeviceConfig _Config, IConnectionReport _ConnReport)
        {
            cfg        = _Config;
            ConnReport = _ConnReport;
            Parity p = Parity.None;

            switch (_Config.ParityBit)
            {
            case "Even":
                p = Parity.Even;
                break;

            case "Mark":
                p = Parity.Mark;
                break;

            case "None":
                p = Parity.None;
                break;

            case "Odd":
                p = Parity.Odd;
                break;

            case "Space":
                p = Parity.Space;
                break;
            }
            StopBits s = StopBits.One;

            switch (_Config.StopBit)
            {
            case "None":
                s = StopBits.None;
                break;

            case "One":
                s = StopBits.One;
                break;

            case "OnePointFive":
                s = StopBits.OnePointFive;
                break;

            case "Two":
                s = StopBits.Two;
                break;
            }

            port = new SerialPort(_Config.PortName, _Config.BaudRate, p, _Config.DataBits, s);
        }
Esempio n. 7
0
        public DeviceController(DeviceConfig Config, IConnectionReport _ConnReport = null)
        {
            _Config    = Config;
            _Decoder   = new CommandConvert.CommandDecoder(_Config.Vendor);
            ConnReport = _ConnReport;

            switch (Config.ConnectionType)
            {
            case "Socket":
                conn = new TcpCommClient(Config, this);
                break;

            case "ComPort":
                conn = new ComPortClient(Config, this);
                break;
            }

            this.Name         = _Config.DeviceName;
            this.Status       = "";
            this._IsConnected = false;
        }
Esempio n. 8
0
        int RDataLen = 100;  //固定長度傳送資料~ 可以針對自己的需要改長度
        ///

        /// 構造函數
        ///
        ///
        ///
        public SocketClient(IConnectionReport _ConnReport)
        {
            ConnReport         = _ConnReport;
            socketDataArrival  = socketDataArrivalHandler;
            socketDisconnected = socketDisconnectedHandler;
        }
Esempio n. 9
0
 public ComPortClient(IConnectionReport _ConnReport)
 {
     ConnReport = _ConnReport;
     port       = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
 }
Esempio n. 10
0
        public TcpCommClient(DeviceConfig _Config, IConnectionReport _ConnReport)
        {
            Config = _Config;

            ConnReport = _ConnReport;
        }
Esempio n. 11
0
 public SocketClient(string IP, int Port, IConnectionReport _ConnReport)
 {
     RmIp       = IP;
     SPort      = Port;
     ConnReport = _ConnReport;
 }
Esempio n. 12
0
        public TcpCommClient(IController _Config, IConnectionReport _ConnReport)
        {
            Config = _Config;

            ConnReport = _ConnReport;
        }
Esempio n. 13
0
        public ComPortClient(IController _Config, IConnectionReport _ConnReport)
        {
            cfg        = _Config;
            ConnReport = _ConnReport;
            Parity p;

            if (_Config.GetVendor().Equals("SMARTTAG8200"))
            {
                p = Parity.Mark;
            }
            else if (_Config.GetVendor().Equals("SMARTTAG8400"))
            {
                p = Parity.None;
            }
            else
            {
                p = Parity.None;
            }
            //switch (_Config.ParityBit)
            //{
            //    case "Even":
            //        p = Parity.Even;
            //        break;
            //    case "Mark":
            //        p = Parity.Mark;
            //        break;
            //    case "None":
            //        p = Parity.None;
            //        break;
            //    case "Odd":
            //        p = Parity.Odd;
            //        break;
            //    case "Space":
            //        p = Parity.Space;
            //        break;
            //}
            StopBits s = StopBits.One;

            //switch (_Config.StopBit)
            //{
            //    case "None":
            //        s = StopBits.None;
            //        break;
            //    case "One":
            //        s = StopBits.One;
            //        break;
            //    case "OnePointFive":
            //        s = StopBits.OnePointFive;
            //        break;
            //    case "Two":
            //        s = StopBits.Two;
            //        break;
            //}


            port = new SerialPort(_Config.GetPortName(), _Config.GetBaudRate(), p, 8, s);



            if (_Config.GetVendor().Equals("SMARTTAG8200"))
            {
                port.Handshake = Handshake.None;
            }
            else if (_Config.GetVendor().Equals("SMARTTAG8400"))
            {
                port.Handshake = Handshake.None;
            }
            else if (_Config.GetVendor().Equals("MITSUBISHI_PLC"))
            {
                port.DtrEnable = true;
                port.RtsEnable = true;
                //port.ReadTimeout = System.IO.Ports.SerialPort.InfiniteTimeout;
                port.ReadTimeout  = 5000;
                port.WriteTimeout = 5000;
            }
        }