Example #1
0
        /// <summary>
        /// 默认构造函数
        /// </summary>
        public SerialPortUtil()
        {
            _portName = "COM1";
            _baudRate = SerialPortBaudRates.BaudRate_9600;
            _parity   = Parity.None;
            _dataBits = SerialPortDatabits.EightBits;
            _stopBits = StopBits.One;

            comPort.DataReceived  += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }
Example #2
0
        /// <summary>
        /// 参数构造函数(使用枚举参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public SerialPortUtil(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits)
        {
            _portName = name;
            _baudRate = baud;
            _parity   = par;
            _dataBits = dBits;
            _stopBits = sBits;

            comPort.DataReceived  += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }
Example #3
0
        /// <summary>
        /// 参数构造函数(使用字符串参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public Controller(string name, string baud, string par, string dBits, string sBits)
        {
            _portName = name;
            _baudRate = (SerialPortBaudRates)Enum.Parse(typeof(SerialPortBaudRates), baud);
            _parity   = (Parity)Enum.Parse(typeof(Parity), par);
            _dataBits = (SerialPortDatabits)Enum.Parse(typeof(SerialPortDatabits), dBits);
            _stopBits = (StopBits)Enum.Parse(typeof(StopBits), sBits);

            _port.DataReceived  += DataReceived;
            _port.ErrorReceived += ErrorReceived;
        }
Example #4
0
        /// <summary>
        /// 参数构造函数(使用字符串参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public SerialPortUtil(string name, string baud, string par, string dBits, string sBits)
        {
            _portName = name;
            _baudRate = (SerialPortBaudRates)Enum.Parse(typeof(SerialPortBaudRates), baud);
            _parity   = (Parity)Enum.Parse(typeof(Parity), par);
            _dataBits = (SerialPortDatabits)Enum.Parse(typeof(SerialPortDatabits), dBits);
            _stopBits = (StopBits)Enum.Parse(typeof(StopBits), sBits);

            comPort.DataReceived  += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }
Example #5
0
        /// <summary>
        /// 参数构造函数(使用枚举参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public Controller(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits)
        {
            _portName = name;
            _baudRate = baud;
            _parity   = par;
            _dataBits = dBits;
            _stopBits = sBits;

            _port.DataReceived  += DataReceived;
            _port.ErrorReceived += ErrorReceived;
        }
Example #6
0
        /// <summary>
        /// 默认构造函数
        /// </summary>
        public Controller()
        {
            _portName = "COM4";
            _baudRate = SerialPortBaudRates.BaudRate_115200;
            _parity   = Parity.None;
            _dataBits = SerialPortDatabits.EightBits;
            _stopBits = StopBits.One;

            _port.DataReceived  += DataReceived;
            _port.ErrorReceived += ErrorReceived;
        }
Example #7
0
        public static byte EndByte = 0x23;//string End = "#";
        /// <summary>
        /// 使用枚举构造
        /// </summary>
        /// <param name="frm"></param>
        /// <param name="name"></param>
        /// <param name="baud"></param>
        /// <param name="par"></param>
        /// <param name="dbits"></param>
        /// <param name="sbits"></param>
        public api(Form1 frm, string name, SerialPortBaudRates baud,
                   Parity par, SerialPortDatabits dbits, StopBits sbits)
        {
            _portName = name;
            _baudRate = baud;
            _parity   = par;
            _dataBits = dbits;
            _stopBits = sbits;
            _frm      = frm;

            _frm.serialPort1.DataReceived  += new SerialDataReceivedEventHandler(_serial_DataReceived);
            _frm.serialPort1.ErrorReceived += new SerialErrorReceivedEventHandler(_serial_Error);
        }
Example #8
0
        private void btnStop_Click(object sender, EventArgs e)
        {
            try
            {
                if (_serial == null)
                {
                    try
                    {
                        string portname             = this.cbox0PortName.Text;
                        SerialPortBaudRates rate    = (SerialPortBaudRates)Enum.Parse(typeof(SerialPortBaudRates), this.cbox1BaudRate.Text);
                        Parity             parity   = (Parity)Enum.Parse(typeof(Parity), cbox3Parity.Text);
                        SerialPortDatabits dataBits = (SerialPortDatabits)Enum.Parse(typeof(SerialPortDatabits), cbox2DataBits.Text);
                        StopBits           stopBits = (StopBits)Enum.Parse(typeof(StopBits), cbox4StopBits.Text);

                        _serial = new api(this, portname, this.cbox1BaudRate.Text, cbox3Parity.Text, cbox2DataBits.Text, cbox4StopBits.Text);

                        _serial.DataReceived += new DataReceivedEventHandler(_serial_DataReceived);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                        _serial = null;
                        throw;
                    }

                    if (!isOpened)
                    {
                        _serial.OpenPort();
                        btnStop.Text = "断开";
                    }
                    else
                    {
                        _serial.ClosePort();
                        _serial = null;

                        btnStop.Text = "连接";
                    }

                    isOpened             = !isOpened;
                    this.btnSend.Enabled = isOpened;

                    this.lblmsg0.Text = isOpened ? "已连接" : "未连接";
                }
            }
            catch (Exception ex)
            {
                this.lblmsg0.Text = ex.Message;
                MessageBox.Show(ex.Message);
            }
        }
Example #9
0
        /// <summary>
        /// 参数构造函数(使用枚举参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public SerialPortUtil(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits)
        {
            this._portName = name;
            this._baudRate = baud;
            this._parity   = par;
            this._dataBits = dBits;
            this._stopBits = sBits;

            this.comPort = new SerialPort(this._portName, (int)this._baudRate, this._parity, (int)this._dataBits, this._stopBits)
            {
                WriteTimeout = 3000, ReadTimeout = 3000, ReceivedBytesThreshold = 1
            };

            this.comPort.DataReceived  += comPort_DataReceived;
            this.comPort.ErrorReceived += comPort_ErrorReceived;
        }
Example #10
0
        /// <summary>
        /// 参数构造函数(使用枚举参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        /// <param name="sameCount">连续相同重量次数</param>
        /// <param name="minWeight">最小重量起</param>
        /// <param name="errLimit">误差范围</param>
        public void InitScale(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits, int sameCount, decimal minWeight, decimal errLimit)
        {
            //串口设置
            _portName = name;
            _baudRate = baud;
            _parity   = par;
            _dataBits = dBits;
            _stopBits = sBits;

            //计算重量
            _sameCount  = sameCount;
            _minWeight  = minWeight;
            _errorLimit = errLimit;

            comPort.DataReceived  += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }
Example #11
0
 public SerialPortUtil(string name, string baud, string par, string dBits, string sBits)
 {
     this.ReceiveEventFlag            = false;
     this.EndByte                     = 0x23;
     this.string_0                    = "COM1";
     this.serialPortBaudRates_0       = SerialPortBaudRates.BaudRate_57600;
     this.parity_0                    = System.IO.Ports.Parity.None;
     this.stopBits_0                  = System.IO.Ports.StopBits.One;
     this.serialPortDatabits_0        = SerialPortDatabits.EightBits;
     this.serialPort_0                = new SerialPort();
     this.string_0                    = name;
     this.serialPortBaudRates_0       = (SerialPortBaudRates)Enum.Parse(typeof(SerialPortBaudRates), baud);
     this.parity_0                    = (System.IO.Ports.Parity)Enum.Parse(typeof(System.IO.Ports.Parity), par);
     this.serialPortDatabits_0        = (SerialPortDatabits)Enum.Parse(typeof(SerialPortDatabits), dBits);
     this.stopBits_0                  = (System.IO.Ports.StopBits)Enum.Parse(typeof(System.IO.Ports.StopBits), sBits);
     this.serialPort_0.DataReceived  += new SerialDataReceivedEventHandler(this.serialPort_0_DataReceived);
     this.serialPort_0.ErrorReceived += new SerialErrorReceivedEventHandler(this.serialPort_0_ErrorReceived);
 }
Example #12
0
 public SerialPortUtil()
 {
     this.ReceiveEventFlag            = false;
     this.EndByte                     = 0x23;
     this.string_0                    = "COM1";
     this.serialPortBaudRates_0       = SerialPortBaudRates.BaudRate_57600;
     this.parity_0                    = System.IO.Ports.Parity.None;
     this.stopBits_0                  = System.IO.Ports.StopBits.One;
     this.serialPortDatabits_0        = SerialPortDatabits.EightBits;
     this.serialPort_0                = new SerialPort();
     this.string_0                    = "COM1";
     this.serialPortBaudRates_0       = SerialPortBaudRates.BaudRate_9600;
     this.parity_0                    = System.IO.Ports.Parity.None;
     this.serialPortDatabits_0        = SerialPortDatabits.EightBits;
     this.stopBits_0                  = System.IO.Ports.StopBits.One;
     this.serialPort_0.DataReceived  += new SerialDataReceivedEventHandler(this.serialPort_0_DataReceived);
     this.serialPort_0.ErrorReceived += new SerialErrorReceivedEventHandler(this.serialPort_0_ErrorReceived);
 }
Example #13
0
        /// <summary>
        /// 默认构造函数
        /// </summary>
        public SerialPortUtil()
        {
            _portName = "COM3";
            _baudRate = SerialPortBaudRates.BaudRate_9600;
            _parity = Parity.None;
            _dataBits = SerialPortDatabits.EightBits;
            _stopBits = StopBits.One;

            comPort.DataReceived += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }
Example #14
0
        /// <summary>
        /// 参数构造函数(使用字符串参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public SerialPortUtil(string name, string baud, string par, string dBits, string sBits)
        {
            _portName = name;
            _baudRate = (SerialPortBaudRates)Enum.Parse(typeof(SerialPortBaudRates), baud);
            _parity = (Parity)Enum.Parse(typeof(Parity), par);
            _dataBits = (SerialPortDatabits)Enum.Parse(typeof(SerialPortDatabits), dBits);
            _stopBits = (StopBits)Enum.Parse(typeof(StopBits), sBits);

            comPort.DataReceived += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }
Example #15
0
        private StopBits _stopBits = StopBits.One; //停止位

        #endregion Fields

        #region Constructors

        /// <summary>
        /// 参数构造函数(使用枚举参数构造)
        /// </summary>
        /// <param name="baud">波特率</param>
        /// <param name="par">奇偶校验位</param>
        /// <param name="sBits">停止位</param>
        /// <param name="dBits">数据位</param>
        /// <param name="name">串口号</param>
        public SerialPortUtil(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits)
        {
            _portName = name;
            _baudRate = baud;
            _parity = par;
            _dataBits = dBits;
            _stopBits = sBits;

            comPort.DataReceived += new SerialDataReceivedEventHandler(comPort_DataReceived);
            comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);
        }