异步事件触发操作无疑是最快的,但其逻辑复杂,调试困难不适合于新手或小型软件; 现提供一种简单的代码实现,欢迎优化.
一. 串口初始化
private SerialPort serialPort;
private object seriaLocker = new object();
/// <summary>
/// 开启串口
/// </summary>
/// <param name="PortName">com口:如com1</param>
/// <param name="BaudRate">波特率</param>
/// <param name="StopBits">停止位(0 None,1 One,1.5 OnePointFive ,2 Two;默认1位)</param>
/// <param name="DataBits">数据位</param>
/// <param name="Parity">校验位(0 无校验,1 奇校验,2 偶校验;默认无校验)</param>
/// <returns> true 串口打开成功 ; false 串口打开失败</returns>
public bool OpenCom(string PortName, int BaudRate, string StopBits, int DataBits, int Parity,bool isRTS)
{
bool success = false;
serialPort = new SerialPort();
try
{
//com口
serialPort.PortName = PortName;
//波特率
serialPort.BaudRate = BaudRate;
//停止位
if (StopBits == "0")