名空间:netMarketing.Transfer
功能:支持转换器的基础接口
功能详细说明:
凡是读写plc内存的功能都要实现这个接口。
本接口共有3种转换的机制
1. 对等转换,字节不需要颠倒,比如三菱PLC,Hsl通信协议
2. 颠倒转换,字节需要完全颠倒,比如西门子PLC
3. 以2字节为单位颠倒转换,比如Modbus协议
=============从byte数组取值============== /// 从缓存中提取出bool结果 bool TransBool( byte[] buffer, int index ); /// 从缓存中提取出bool数组结果 bool[] TransBool( byte[] buffer, int index, int length ); /// 从缓存中提取byte结果 byte TransByte( byte[] buffer, int index ); /// 从缓存中提取byte数组结果 byte[] TransByte( byte[] buffer, int index, int length ); /// 从缓存中提取short结果 short TransInt16( byte[] buffer, int index ); /// 从缓存中提取short数组结果 short[] TransInt16( byte[] buffer, int index, int length ); /// 从缓存中提取ushort结果 ushort TransUInt16( byte[] buffer, int index ); /// 从缓存中提取ushort数组结果 ushort[] TransUInt16( byte[] buffer, int index, int length ); /// 从缓存中提取int结果 int TransInt32( byte[] buffer, int index ); /// 从缓存中提取uint结果 uint TransUInt32( byte[] buffer, int index ); /// 从缓存中提取uint数组结果 uint[] TransUInt32( byte[] buffer, int index, int length ); /// 从缓存中提取long结果 long TransInt64( byte[] buffer, int index ); /// 从缓存中提取long数组结果 long[] TransInt64( byte[] buffer, int index, int length ); /// 从缓存中提取ulong结果 ulong TransUInt64( byte[] buffer, int index ); /// 从缓存中提取ulong数组结果 ulong[] TransUInt64( byte[] buffer, int index, int length ); /// 从缓存中提取float结果 float TransSingle( byte[] buffer, int index ); /// 从缓存中提取float数组结果 float[] TransSingle( byte[] buffer, int index, int length ); /// 从缓存中提取double结果 double TransDouble( byte[] buffer, int index ); /// 从缓存中提取double数组结果 double[] TransDouble( byte[] buffer, int index, int length ); /// 从缓存中提取string结果,使用指定的编码 string TransString( byte[] buffer, int index, int length, Encoding encoding ); =============值转byte数组============== /// bool变量转化缓存数据 byte[] TransByte( bool value ); /// bool数组变量转化缓存数据 byte[] TransByte( bool[] values ); /// byte变量转化缓存数据 byte[] TransByte( byte value ); /// short变量转化缓存数据 byte[] TransByte( short value ); /// short数组变量转化缓存数据 byte[] TransByte( short[] values ); /// ushort变量转化缓存数据 byte[] TransByte( ushort value ); /// ushort数组变量转化缓存数据 byte[] TransByte( ushort[] values ); /// int变量转化缓存数据 byte[] TransByte( int value ); /// int数组变量转化缓存数据 byte[] TransByte( int[] values ); /// uint变量转化缓存数据 byte[] TransByte( uint value ); /// uint数组变量转化缓存数据 byte[] TransByte( uint[] values ); /// long变量转化缓存数据 byte[] TransByte( long value ); /// long数组变量转化缓存数据 byte[] TransByte( long[] values ); /// ulong变量转化缓存数据 byte[] TransByte( ulong value ); /// ulong数组变量转化缓存数据 byte[] TransByte( ulong[] values ); /// float变量转化缓存数据 byte[] TransByte( float value ); /// float数组变量转化缓存数据 byte[] TransByte( float[] values ); /// double变量转化缓存数据 byte[] TransByte( double value ); /// double数组变量转化缓存数据 byte[] TransByte( double[] values ); /// 使用指定的编码字符串转化缓存数据 byte[] TransByte( string value, Encoding encoding ); =============公共属性============== /// 获取或设置数据解析的格式,默认ABCD,可选BADC,CDAB,DCBA格式 DataFormat DataFormat { get; set; }
本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:


