public SerialPort()
 {
     this.baudRate = 0x2580;
     this.dataBits = 8;
     this.stopBits = System.IO.Ports.StopBits.One;
     this.portName = "COM1";
     this.encoding = System.Text.Encoding.ASCII;
     this.decoder = System.Text.Encoding.ASCII.GetDecoder();
     this.maxByteCountForSingleChar = System.Text.Encoding.ASCII.GetMaxByteCount(1);
     this.readTimeout = -1;
     this.writeTimeout = -1;
     this.receivedBytesThreshold = 1;
     this.parityReplace = 0x3f;
     this.newLine = "\n";
     this.readBufferSize = 0x1000;
     this.writeBufferSize = 0x800;
     this.inBuffer = new byte[0x400];
     this.oneChar = new char[1];
 }
Ejemplo n.º 2
0
 public SerialPort(string portName, int baudRate, System.IO.Ports.Parity parity, int dataBits, System.IO.Ports.StopBits stopBits)
 {
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Set default ranges for all the parameters.
        /// </summary>
        private void SetDefaultValues()
        {
            // Get the port options
            List<string> portOptions = SerialOptions.PortOptions;

            // Set a COMM port option if one is available
            if (portOptions.Count <= 0)
            {
                Port = "";
            }
            else
            {
                Port = portOptions[0];
            }
            BaudRate = DEFAULT_BAUD;
            DataBits = DEFAULT_DATA_BITS;
            Parity = DEFAULT_PARITY;
            StopBits = DEFAULT_STOP_BITS;
        }
Ejemplo n.º 4
0
        private void Form1_Load(object sender, EventArgs e)
        {
            string[] Param;
            this.Text += Application.ProductVersion;

            Properties.Settings.Default.drv            = clFacilities.PreparaDrv(Application.StartupPath);
            Properties.Settings.Default.drvProgramData = clFacilities.PreparaDrv(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\" + Application.ProductName);

            string drvServer;

            drvServer = clFacilities.getDrvServer(Properties.Settings.Default.drv + "Config.xml");
            if (drvServer.Equals(""))
            {
                drvServer = clFacilities.PreparaDrv(clFacilities.getDrvServer(Properties.Settings.Default.drvProgramData + "Config.xml"));
            }

            #region CONFIG.XML
            clXML  xml = new clXML(drvServer + "database\\dlls");
            clXML  xml2 = new clXML(drvServer + "database\\dlls");
            string txt1, txt2 = "";

            // verifica se a data do config.xml instalado é <> do que o do usuário, se sim, copia por cima o arquivo
            txt1 = xml2.getValue("Comum", "ATUALIZADOEM", Properties.Settings.Default.drv + "Config.xml");
            txt2 = xml.getValue("Comum", "ATUALIZADOEM", Properties.Settings.Default.drvProgramData + "Config.xml");
            if (txt1 != txt2 || txt2.Equals(""))
            {
                // cria a pasta
                try {
                    Directory.CreateDirectory(Properties.Settings.Default.drvProgramData);
                    // se o arquivo ainda não existe, então só copia o novo
                    if (!File.Exists(Properties.Settings.Default.drvProgramData + "Config.xml"))
                    {
                        File.Copy(Properties.Settings.Default.drv + "Config.xml", Properties.Settings.Default.drvProgramData + "Config.xml", true);
                    }
                    else
                    {
                        // como o arquivo já existe, então copia somente as chaves dentro de comum que contiverem o atributo de obrigatório
                        string Key   = "ATUALIZADOEM";
                        string Value = "";
                        List <KeyValuePair <string, string> > Attribs;
                        // já grava a primeira informação que é a data
                        xml.setValue("Comum", Key, txt1);
                        xml.setKeyAttrib("Comum", Key, "required", "1");
                        while (xml2.getNextNodeValueAndAttribs("Comum", ref Key, out Value, out Attribs))
                        {
                            try {
                                // don't change value if exists
                                xml.getValue("Comum", Key);
                                if (xml.getLastErrorInfo.hasError)
                                {
                                    xml.setValue("Comum", Key, Value);
                                }
                                // change value even if it exists but only if has attributes
                                foreach (KeyValuePair <string, string> item in Attribs)
                                {
                                    xml.setValue("Comum", Key, Value);
                                    xml.setKeyAttrib("Comum", Key, item.Key, item.Value);
                                }
                            } catch { }
                        }
                        xml.saveFile("");
                    }
                } catch (Exception ex) {
                    MessageBox.Show(ex.Message.ToString(), "Erro ao copiar arquivo de definições!");
                    this.Dispose();
                    return;
                }
            }
            xml2.Dispose();
            #endregion

            // pega a localização do servidor de banco de dados
            Properties.Settings.Default.drvServer       = clFacilities.PreparaDrv(xml.getValue("Comum", "drvServer", Properties.Settings.Default.drvProgramData + "Config.xml"));
            Properties.Settings.Default.drvDB           = clFacilities.PreparaDrv(xml.getValue("Comum", "drvDB", Properties.Settings.Default.drvProgramData + "Config.xml"));
            Properties.Settings.Default.drvDatabase     = clFacilities.PreparaDrv(xml.getValue("Comum", "drvDataBase", Properties.Settings.Default.drvProgramData + "Config.xml"));
            Properties.Settings.Default.drvMicrosigaTXT = clFacilities.PreparaDrv(xml.getValue("Comum", "drvMicrosigaTXT", Properties.Settings.Default.drvProgramData + "Config.xml"));

            Properties.Settings.Default.commPort     = xml.getValue("Comum", "CommPort", Properties.Settings.Default.drvProgramData + "Config.xml");
            Properties.Settings.Default.commSettings = xml.getValue("Comum", "CommSettings", Properties.Settings.Default.drvProgramData + "Config.xml");
            if (Properties.Settings.Default.commPort.isEmpty())
            {
                Properties.Settings.Default.commPort = "COM1";
            }
            if (Properties.Settings.Default.commSettings.isEmpty())
            {
                Properties.Settings.Default.commSettings = "9600,n,8,1";
            }

            if (!(txt1 = xml.getValue("Comum", "limitIntegralSUFIX1")).isEmpty())
            {
                Properties.Settings.Default.limitIntegralSUFIX1 = int.Parse(txt1);
            }
            if (!(txt1 = xml.getValue("Comum", "limitIntegralSUFIX2")).isEmpty())
            {
                Properties.Settings.Default.limitIntegralSUFIX2 = int.Parse(txt1);
            }
            if (!(txt1 = xml.getValue("Comum", "limitIntegralTAG1")).isEmpty())
            {
                Properties.Settings.Default.limitIntegralTAG1 = int.Parse(txt1);
            }
            if (!(txt1 = xml.getValue("Comum", "limitIntegralTAG2")).isEmpty())
            {
                Properties.Settings.Default.limitIntegralTAG2 = int.Parse(txt1);
            }
            if (!(txt1 = xml.getValue("Comum", "limitTagTAG1")).isEmpty())
            {
                Properties.Settings.Default.limitTagTAG1 = int.Parse(txt1);
            }
            if (!(txt1 = xml.getValue("Comum", "limitTagTAG2")).isEmpty())
            {
                Properties.Settings.Default.limitTagTAG2 = int.Parse(txt1);
            }
            //Properties.Settings.Default.clearTML = bool.Parse(xml.getValue("Comum", "clearTML"));

            xml.Dispose();
            getConfigData(); // get all restrictions and remote configurations for this software

            txtBarCode.Enabled = DBLayer.Connect(Properties.Settings.Default.drvDB + "PRODUCT.mdb");

            Model.comm = new RSComm.cRSComm(Properties.Settings.Default.drvDatabase + "dlls");
            Model.comm.dataReceived += Comm_dataReceived;
            Model.comm.timeOutEvent += Comm_timeOutEvent;
            Param = Properties.Settings.Default.commSettings.Split(',');
            System.IO.Ports.StopBits sb = System.IO.Ports.StopBits.None;
            System.IO.Ports.Parity   pt = System.IO.Ports.Parity.None;
            switch (Param[3])
            {
            case "0": sb = System.IO.Ports.StopBits.None; break;

            case "1": sb = System.IO.Ports.StopBits.One; break;

            case "2": sb = System.IO.Ports.StopBits.Two; break;
            }
            switch (Param[1])
            {
            case "n": pt = System.IO.Ports.Parity.None; break;

            case "e": pt = System.IO.Ports.Parity.Even; break;

            case "o": pt = System.IO.Ports.Parity.Odd; break;
            }
            RSComm.sErrorInfo sError = Model.comm.openPort(Properties.Settings.Default.commPort, int.Parse(Param[0]), int.Parse(Param[2]), sb, 5000, false, false, Encoding.UTF8, System.IO.Ports.Handshake.None, pt);
            if (sError.hasError)
            {
                MessageBox.Show(sError.errorMsg + "\r\n" + sError.exceptionMsg, "Serial port invalid!" + Properties.Settings.Default.commPort);
                //Application.Exit();
                //return;
            }
            Model.comm.closePort(); // keep it closed and free to use by another applications

            txtBarCode.Tag = "";

            Model.refreshRestr(true);

            // examples to test
            // B1V201531, B1V290001   INTEGRAL
            // B1V201963    REMOTE SENSOR
        }
Ejemplo n.º 5
0
 //-------------------------------------------------------------------------------
 /// <summary>
 /// Обработчик события выбора количества стоп-бит
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void comboBoxStopBits_SelectedIndexChanged(object sender, EventArgs e)
 {
     ComboBox cb = sender as ComboBox;
     _StopBits = (System.IO.Ports.StopBits)Enum.Parse(typeof(System.IO.Ports.StopBits),
         (String)cb.SelectedItem);
     return;
 }
Ejemplo n.º 6
0
        public void SerialPortInit()
        {
            foreach (string s in System.IO.Ports.SerialPort.GetPortNames())
            {
                com_port_cb.Items.Add(s);
            }
            com_port_cb.SelectedIndex = 0;
            com_port_name_idx         = 0;
            com_port_name_val         = com_port_cb.SelectedItem.ToString();

            baud_rate_val     = 921600;
            baud_rate_tb.Text = baud_rate_val.ToString();

            data_bits_cb.Items.Add(5);
            data_bits_cb.Items.Add(6);
            data_bits_cb.Items.Add(7);
            data_bits_cb.Items.Add(8);
            data_bits_cb.Items.Add(9);
            data_bits_cb.SelectedIndex = 3;
            data_bits_idx = 3;
            int.TryParse(data_bits_cb.GetItemText(data_bits_cb.SelectedItem), out data_bits_val);

            stop_bits_cb.Items.Add(0);
            stop_bits_cb.Items.Add(1);
            stop_bits_cb.Items.Add(2);
            stop_bits_cb.Items.Add(1.5);
            stop_bits_cb.SelectedIndex = 1;
            stop_bits_idx = 1;
            int.TryParse(stop_bits_cb.GetItemText(stop_bits_cb.SelectedItem), out int temp);
            stop_bits_val = (System.IO.Ports.StopBits)Enum.ToObject(typeof(System.IO.Ports.StopBits), temp);

            parity_cb.Items.Add("none");
            parity_cb.Items.Add("even");
            parity_cb.Items.Add("odd");
            parity_cb.Items.Add("mark");
            parity_cb.Items.Add("space");
            parity_cb.SelectedIndex = 0;
            parity_idx = 0;
            int.TryParse(parity_cb.GetItemText(parity_cb.SelectedItem), out temp);
            parity_val = (System.IO.Ports.Parity)Enum.ToObject(typeof(System.IO.Ports.Parity), temp);

            Microsoft.Win32.RegistryKey key;
            try
            {
                key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Target Emulator " + app_num.ToString()).OpenSubKey(port_setting_names[0]);
                int.TryParse(key.GetValue(port_setting_names[1]).ToString(), out int idx);
                com_port_cb.SelectedIndex = idx;
                com_port_name_idx         = idx;
                com_port_name_val         = com_port_cb.SelectedItem.ToString();
                baud_rate_tb.Text         = key.GetValue(port_setting_names[2]).ToString();
                int.TryParse(key.GetValue(port_setting_names[3]).ToString(), out idx);
                data_bits_cb.SelectedIndex = idx;
                int.TryParse(key.GetValue(port_setting_names[4]).ToString(), out idx);
                stop_bits_cb.SelectedIndex = idx;
                int.TryParse(key.GetValue(port_setting_names[5]).ToString(), out idx);
                parity_cb.SelectedIndex = idx;
            }
            catch
            {
            }
        }
Ejemplo n.º 7
0
        public bool Open(string SerialName, int BaudRate, int dataBis, System.IO.Ports.Parity Pority, System.IO.Ports.StopBits StopBits)
        {
            try
            {
                mySerialPort.PortName = SerialName;
                mySerialPort.BaudRate = BaudRate;
                mySerialPort.DataBits = dataBis;
                mySerialPort.Parity   = Pority;
                mySerialPort.StopBits = StopBits;

                //mySerialPort.PortName = SerialName.Split('(')[1].Split(')')[0];
                if (!mySerialPort.IsOpen)
                {
                    mySerialPort.Open();
                }

                return(true);
            }
            catch (Exception ex)
            {
                //mySerialPort.Close();
                return(false);
            }
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Overload Constructor
        /// </summary>
        /// <param name="SerialPortNumber"></param>
        /// <param name="SerialBaudRate"></param>
        /// <param name="SerialDataBits"></param>
        /// <param name="SerialParity"></param>
        /// <param name="SerialStopBits"></param>
        /// <param name="IntercharacterDelay"></param>
        public clsDiagnostics(int SerialPortNumber, long SerialBaudRate, System.IO.Ports.Parity SerialParity, int SerialDataBits, System.IO.Ports.StopBits SerialStopBits, int IntercharacterDelay, System.Windows.Forms.RichTextBox TerminalWindow)
        {
            m_iCommPortNumber = SerialPortNumber;
            m_lCommBaudRate   = SerialBaudRate;
            m_pCommParity     = SerialParity;
            m_iCommDataBits   = SerialDataBits;
            m_sCommStopBits   = SerialStopBits;

            m_iIntercharacterDelay = IntercharacterDelay;

            m_serport = new System.IO.Ports.SerialPort();
            // m_tTerminalWindow = TerminalWindow;
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Overload Constructor
        /// </summary>
        /// <param name="SerialPortNumber"></param>
        /// <param name="SerialBaudRate"></param>
        /// <param name="SerialDataBits"></param>
        /// <param name="SerialParity"></param>
        /// <param name="SerialStopBits"></param>
        /// <param name="IntercharacterDelay"></param>
        public clsSLM(int SerialPortNumber, long SerialBaudRate, System.IO.Ports.Parity SerialParity, int SerialDataBits, System.IO.Ports.StopBits SerialStopBits, int IntercharacterDelay)
        {
            m_iCommPortNumber = SerialPortNumber;
            m_lCommBaudRate   = SerialBaudRate;
            m_pCommParity     = SerialParity;
            m_iCommDataBits   = SerialDataBits;
            m_sCommStopBits   = SerialStopBits;

            m_iIntercharacterDelay = IntercharacterDelay;

            m_serport = new System.IO.Ports.SerialPort();
        }
Ejemplo n.º 10
0
 public void Open(string portName, int baudRate, System.IO.Ports.Parity portParity, int portDataBits, System.IO.Ports.StopBits portStopBits, System.IO.Ports.Handshake portHandshake, int timeOut, Encoding dataEncoding)
 {
     Open(portName, baudRate);
 }
Ejemplo n.º 11
0
 // CONSTRUCTORS -- Pass the Buck
 public SimpleSerial(string portName, int baudRate, System.IO.Ports.Parity parity, int dataBits, System.IO.Ports.StopBits stopBits)
     : base(portName, baudRate, parity, dataBits, stopBits)
 {
 }
Ejemplo n.º 12
0
        private void sendSerialData(string p_strCOMPort, int p_intBaudRate, System.IO.Ports.Parity p_objParitySetting, int p_intDataBits, System.IO.Ports.StopBits p_objStopBits, byte[] p_bteDataToSend)
        {
            System.IO.Ports.SerialPort l_objSwitcherSerialPort = new System.IO.Ports.SerialPort(p_strCOMPort, p_intBaudRate, p_objParitySetting, p_intDataBits, p_objStopBits);

            try
            {
                //Since the manual had a hex message, I tried to follow an example found here: https://web.archive.org/web/20130709121945/http://msmvps.com/blogs/coad/archive/2005/03/23/SerialPort-_2800_RS_2D00_232-Serial-COM-Port_2900_-in-C_2300_-.NET.aspx
                //If this does not work, try sending the text values instead (like the projector lift)
                l_objSwitcherSerialPort.Open();
                l_objSwitcherSerialPort.Write(p_bteDataToSend, 0, 10);
            }
            catch (Exception e) { throw e; }
            finally { l_objSwitcherSerialPort.Close(); }
        }
Ejemplo n.º 13
0
        /// <summary>
        /// For Sending Direct Commands from the UI
        /// </summary>
        /// <param name="p_strCOMPort"></param>
        /// <param name="p_intBaudRate"></param>
        /// <param name="p_objParitySetting"></param>
        /// <param name="p_intDataBits"></param>
        /// <param name="p_objStopBits"></param>
        /// <param name="p_bteDataToSend"></param>
        private void sendSerialData(string p_strCOMPort, int p_intBaudRate, System.IO.Ports.Parity p_objParitySetting, int p_intDataBits, System.IO.Ports.StopBits p_objStopBits, string p_bteDataToSend)
        {
            System.IO.Ports.SerialPort l_objSwitcherSerialPort = new System.IO.Ports.SerialPort(p_strCOMPort, p_intBaudRate, p_objParitySetting, p_intDataBits, p_objStopBits);

            try
            {
                l_objSwitcherSerialPort.Open();
                l_objSwitcherSerialPort.Write(p_bteDataToSend);
            }
            catch (Exception e) { throw e; }
            finally { l_objSwitcherSerialPort.Close(); }
        }
Ejemplo n.º 14
0
 public Profile(string name, int baudRate, System.IO.Ports.Parity parity, int dataBits, System.IO.Ports.StopBits stopBits, string defaultPath, string defaultPort)
 {
     this.name        = name;
     this.baudRate    = baudRate;
     this.parity      = parity;
     this.dataBits    = dataBits;
     this.stopBits    = stopBits;
     this.defaultPath = defaultPath;
     this.defaultPort = defaultPort;
 }