第一步 定义了一个串口基类
/// <summary>
/// 串口基类
/// </summary>
public abstract class HardwareBase
{
public delegate void DataReceivedHander(object sender, SerialDataReceivedEventArgs e);
public event DataReceivedHander DataReceived;
/// <summary>
/// 发送命令
/// </summary>
/// <param name="text"></param>
public abstract void Write(string text);
/// <summary>
/// 读串口数据
/// </summary>
/// <returns></returns>
public abstract byte[] Read();
/// <summary>
/// 打开串口
/// </summary>
public abstract void Open();
}
第二 写了个串口类
public class SerialPortEx:HardwareBase
{
SerialPort serial = null;
/// <summary>
/// 构造初始化串口
/// </summary>
/// <param name="portName"></param>
/// <param name="baudRate"></param>
/// <param name="parity"></param>
/// <param name="dataBits"></param>
/// <param name="stopBits"></param>
public SerialPortEx(string portName, int baudRate, Parity parity, int dataBits, StopBits stopBits)
{
serial = new SerialPort(portName, baudRate, parity, dataBits, stopBits);
}
/// <summary>
/// 写串口数据
/// </summary>
/// <param name="text"></param>
public override void Write(string text)
{
try
{
serial.Write(text);