using System; using System.Collections.Generic; using System.IO.Ports; using System.Linq; using System.Text; using System.Threading.Tasks; using HslCommunication.LogNet; namespace WIDESEAWCS_Communicator { /// /// 通讯接口 /// public abstract class BaseSerialPortCommunicator : IDisposable { /// /// 构造函数 /// protected BaseSerialPortCommunicator() { } /// /// 日志记录实例对象 /// public abstract ILogNet LogNet { get; } /// /// 设备名称 /// public abstract string Name { get; } /// /// 获取当前通讯器是否已连接到PLC。 /// public abstract bool IsConnected { get; } /// /// /// public abstract int ReadCount { get; } /// /// /// public abstract bool IsReadToEnd { get; } /// /// /// public abstract SerialPort SerialPort { get; set; } /// /// 连接到PLC。 /// /// 如果连接成功则返回true,否则返回false。 public abstract bool Connect(); /// /// 断开与工业设备的连接。 /// /// 如果成功断开连接则返回true,如果已经是断开状态则返回false。 public abstract bool Disconnect(); /// /// /// public abstract string SerialPortName { get; } /// /// /// public abstract List Buffers { get; } /// /// 将缓冲区中的数据转换为字符串 /// /// /// public abstract string ToString(Encoding encoding); /// /// /// public abstract void Write(byte[] data); /// /// /// /// public abstract void Write(string data); /// /// /// /// public abstract void Write(string data, string endStr); /// /// 释放对象资源的接口。 /// public abstract void Dispose(); } }