private void Start()
        {
            var error = string.Empty;

            config = SerialPortConfigurer.Instance.ReadConfig(out error);
            if (config == null)
            {
                config = new SerialPortConfig();
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Write SerialPortConfig to config file.
        /// </summary>
        /// <param name="config">Config of serialport.</param>
        /// <returns>succeed?</returns>
        public bool WriteConfig(SerialPortConfig config)
        {
            try
            {
#if UNITY_5_3_OR_NEWER
                var configJson = JsonUtility.ToJson(config);
#else
                var configJson = JsonMapper.ToJson(config);
#endif
                if (DirectoryUtility.RequireDirectory(ConfigPath))
                {
                    File.WriteAllText(ConfigPath, configJson);
                    return(true);
                }
            }
            catch (Exception ex)
            {
                LogUtility.LogError("Write serialport config to file exception: {0}\r\n{1}", ex.Message, ex.StackTrace);
            }

            return(false);
        }
        /// <summary>
        /// Write SerialPortConfig to config file.
        /// </summary>
        /// <param name="config">Config of serialport.</param>
        /// <param name="error">Error message.</param>
        /// <returns>succeed?</returns>
        public bool WriteConfig(SerialPortConfig config, out string error)
        {
            error = string.Empty;
            try
            {
#if UNITY_5_3_OR_NEWER
                var configJson = JsonUtility.ToJson(config);
#else
                var configJson = JsonMapper.ToJson(config);
#endif
                if (DirectoryUtility.RequirePath(ConfigPath, out error))
                {
                    File.WriteAllText(ConfigPath, configJson);
                    return(true);
                }
            }
            catch (Exception ex)
            {
                error = ex.Message;
            }

            LogUtility.LogError("Write serialport config to file exception: {0}", error);
            return(false);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Initialize serialport.
        /// </summary>
        /// <returns>Initialize serialport use config file succeed?</returns>
        public bool InitializeSerialPort()
        {
            //Read config and initialize serialport.
            config = SerialPortConfigurer.Instance.ReadConfig();
            var isReadConfig = true;

            if (config == null)
            {
                isReadConfig = false;
                config       = new SerialPortConfig();
                LogUtility.LogWarning("Initialize serialport: Read config is failed, serialport will initialize with default config.");
            }

            serialPort = new SerialPort(config.portName, config.baudRate, config.parity, config.dataBits, config.stopBits)
            {
                ReadBufferSize  = config.readBufferSize,
                ReadTimeout     = config.readTimeout,
                WriteBufferSize = config.writeBufferSize,
                WriteTimeout    = config.writeTimeout
            };

            //Initialize read and write thread.
            readThread = new Thread(ReadBytesFromBuffer)
            {
                IsBackground = true
            };
            writeThread = new Thread(WriteBytesToBuffer)
            {
                IsBackground = true
            };

            //Initialize bytes array.
            readBytes  = new byte[config.readCount];
            writeBytes = new byte[config.writeCount];
            return(isReadConfig);
        }