/// <summary> /// 参数构造函数(使用枚举参数构造) /// </summary> /// <param name="baud">波特率</param> /// <param name="par">奇偶校验位</param> /// <param name="sBits">停止位</param> /// <param name="dBits">数据位</param> /// <param name="name">串口号</param> public MySerialPort(string name, SerialPortBaudRates baud, Parity par, SerialPortDataBits dBits, StopBits sBits) { _portName = name; _baudRate = baud; _parity = par; _dataBit = dBits; _stopBit = sBits; _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 MySerialPort(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); _dataBit = (SerialPortDataBits)Enum.Parse(typeof(SerialPortDataBits), dBits); _stopBit = (StopBits)Enum.Parse(typeof(StopBits), sBits); _comPort.DataReceived += new SerialDataReceivedEventHandler(comPort_DataReceived); _comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived); }
/// <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(); }
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"); }