private void btnConnect_Click(object sender, EventArgs e) { try { if (serial == null) { try { string portName = this.cmbPort.Text; SerialPortBaudRates baud = (SerialPortBaudRates)Enum.Parse(typeof(SerialPortBaudRates), cmbBaudRate.Text); SerialPortDatabit databit = (SerialPortDatabit)Enum.Parse(typeof(SerialPortDatabit), cmbDataBit.Text); Parity parity = (Parity)Enum.Parse(typeof(Parity), cmbParity.Text); StopBits stopBits = (StopBits)Enum.Parse(typeof(StopBits), cmbStopBit.Text); //使用枚举构造函数 //serial = new SerialPortUtil(portName, baud, parity, databit, stopBits); //使用字符串构造函数 serial = new SerialPortUtil(portName, cmbBaudRate.Text, cmbParity.Text, cmbDataBit.Text, cmbStopBit.Text); serial.DataReceived += serial_DataReceived; } catch (Exception ex) { MessageBox.Show(ex.Message); serial = null; return; } } if (!isOpen) { //打开串口通讯 serial.OpenPort(); btnConnect.Text = "断开"; //m_receiveT = new Thread(Receive); //m_receiveT.IsBackground = true; //m_receiveT.Start(); } else { serial.ClosePort(); //m_receiveT.Abort(); btnConnect.Text = "连接"; } isOpen = !isOpen; this.btnSend.Enabled = isOpen; this.labState.Text = isOpen ? "已连接" : "未连接"; } catch (Exception ex) { this.labState.Text = ex.Message; MessageBox.Show(ex.Message); } }
public void SetPortParas(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits) { comPort.PortName = name; comPort.BaudRate = int.Parse(baud.ToString()); comPort.Parity = par; comPort.DataBits = int.Parse(dBits.ToString()); comPort.StopBits = sBits; }
/// <summary> /// 默认构造函数 /// </summary> public SerialPortIo() { _portName = "COM1"; _baudRate = SerialPortBaudRates.BaudRate_9600; _parity = Parity.None; _dataBits = SerialPortDatabits.EightBits; _stopBits = StopBits.One; OpenPort(); }
/// <summary> /// 参数构造函数(使用字符串参数构造) /// </summary> /// <param name="baud">波特率</param> /// <param name="par">奇偶校验位</param> /// <param name="sBits">停止位</param> /// <param name="dBits">数据位</param> /// <param name="name">串口号</param> public SerialPortIo(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); OpenPort(); }
/// <summary> /// 参数构造函数(使用枚举参数构造) /// </summary> /// <param name="baud">波特率</param> /// <param name="par">奇偶校验位</param> /// <param name="sBits">停止位</param> /// <param name="dBits">数据位</param> /// <param name="name">串口号</param> public SerialPortIo(string name, SerialPortBaudRates baud, Parity par, SerialPortDatabits dBits, StopBits sBits) { _portName = name; _baudRate = baud; _parity = par; _dataBits = dBits; _stopBits = sBits; OpenPort(); }
/// <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); }
/// <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); }
/// <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; }
/// <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; }
/// <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; }
/// <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); }
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); }
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); } }
/// <summary> /// 默认构造函数 /// </summary> public MySerialPort( ) { _portName = "COM1"; _baudRate = SerialPortBaudRates.BaudRate_115200; _parity = Parity.None; _dataBit = SerialPortDataBits.EightBits; _stopBit = StopBits.One; _comPort.DataReceived += new SerialDataReceivedEventHandler(comPort_DataReceived); _comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived); //this._thrdDataMessageHandler = new Thread(ThrdDataMessageHandler); //this._thrdDataMessageHandler.IsBackground = true; //this._thrdDataMessageHandler.Start(); }
/// <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; }
public MySerialPort(string port, SerialPortBaudRates baud, SerialPortDataBits databits, Parity parity, StopBits stopbits) { this.MyPortName = port; this.MyBaudRates = baud; this.MyDataBits = databits; this.MyParity = parity; this.MyStopBits = stopbits; MserialPort.DataReceived += new SerialDataReceivedEventHandler(SerialPort_DataReceived); //将SerialPort_DataReceived方法委托到串口接收事件 MserialPort.ReceivedBytesThreshold = 1; ListDataFormat = new List <DataFormat>(); //直接使用这一句就可以将串口的编码改为GB2312 即可以使用中文发送 //serialPort.Encoding = System.Text.Encoding.GetEncoding("gb2312"); }
/// <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); }
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); }
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); }
/// <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); }
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); }