📄 dataexchge.pas
字号:
unit DataExchge;
interface
Procedure LongTo2Byte(Var MyInt:SmallInt;var BA:array of Char);
Procedure LongTo4Byte(Var MyLongInt:LongWord;var BA:array of Char);
Procedure SplitHeader7(var Header:array of Char;var CMDID:char;
var IPLen:Smallint;var DataLen:LongWord);
Procedure MergeArray7(CMD1:Char;sL1:Smallint;lL1:LongWord;
var OutArray:array of Char);
implementation
Procedure LongTo2Byte(Var MyInt:SmallInt;var BA:array of Char);
Type
TMyLWR = record
i1:Char;
i2:Char;
end;
var
My2ByteRec:TMyLWR;
begin
My2ByteRec:=TMyLWR(MyInt);
BA[0]:= My2ByteRec.i1;
BA[1]:= My2ByteRec.i2;
end;
Procedure LongTo4Byte(Var MyLongInt:LongWord;var BA:array of Char);
Type
TMyLWR = record
i1:Char;
i2:Char;
i3:Char;
i4:Char;
end;
var
My4ByteRec:TMyLWR;
begin
My4ByteRec:=TMyLWR(MyLongInt);
BA[0]:= My4ByteRec.i1;
BA[1]:= My4ByteRec.i2;
BA[2]:= My4ByteRec.i3;
BA[3]:= My4ByteRec.i4;
end;
Procedure SplitHeader7(var Header:array of Char;var CMDID:char;
var IPLen:Smallint;var DataLen:LongWord);
var
s1:array[1..2] of Char;
s2:array[1..4] of Char;
Begin
CMDID:=Header[0];
s1[1]:=Header[1];
s1[2]:=Header[2];
s2[1]:=Header[3];
s2[2]:=Header[4];
s2[3]:=Header[5];
s2[4]:=Header[6];
IPLen:=Smallint(s1);
DataLen:=LongWord(s2);
end;
Procedure MergeArray7(CMD1:Char;sL1:Smallint;lL1:LongWord;
var OutArray:array of Char);
Var
LA1:array[1..2] of Char;
LA2:array[1..4] of Char;
begin
LongTo2Byte(sL1,LA1);
LongTo4Byte(lL1,LA2);
OutArray[0]:=CMD1;
OutArray[1]:=LA1[1];
OutArray[2]:=LA1[2];
OutArray[3]:=LA2[1];
OutArray[4]:=LA2[2];
OutArray[5]:=LA2[3];
OutArray[6]:=LA2[4];
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -