1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
SetLength(TxBuf,6);
TxBuf[0]:=$01; TxBuf[1]:=$03; TxBuf[2]:=$00; TxBuf[3]:=$03; TxBuf[4]:=$00; TxBuf[5]:=$01; // trame de départ
//verification de la trame de lecture
setLength(Buffer, 5) ;
if Buffer[0] = $01 then
begin
if Buffer[1] = $03 then
begin
Buffer[2] := 2 * Txbuf[5] ;// ???
Buffer[3] := Buffer[3];
Buffer[4] := Buffer[4];
crc := CRC16(Buffer, Length(Buffer));
SetLength(Buffer,Length(Buffer)+2);
Buffer[5]:=Byte(Crc Shr 8);
Buffer[6]:=Byte(Crc);
for i:= 0 to Length(Buffer)-1 do
k:=k+IntToHex(Buffer[i]);
Memo1.Lines.Add( ' checkLecture : ' + k );
end; |