Thema: Modbus CRC

Einzelnen Beitrag anzeigen

enzo

Registriert seit: 3. Feb 2006
16 Beiträge
 
#1

Modbus CRC

  Alt 3. Feb 2006, 13:33
Wer Kann mit helfen .
Ich soll eine Verbindung mit einem Modbus geraet durchfuehren abe es Klappt nicht.
Der CRC code , von meinem unit ist falsch.

Ich mus mit CRC=$FFFF
und der Poly=A001

Wer kann mir helfen

mein UNIT
ausblenden anzeigen Delphi-Quelltext
ausgeblendet markieren

Delphi-Quellcode:
   
Function Tform1.CRC16(InString: String) : Word;
Var
  CRC ,test : Word;
  Index1,
  Index2 : Byte;
begin
  CRC := $FFFF;
  For Index1 := 1 to length(InString) do
  begin
    CRC := (CRC xor (ord(InString[Index1]) SHR 8));
    For Index2 := 1 to 8 do
      if ((CRC and 1) = 1) then
       CRC := (CRC shr 1) xor $A001
      else
        CRC := (CRC shr 1) ;
  end;
 CRC16 := (CRC and $FFFF) ;
end;

Ich bedanke mich ihm voraus
enzo

[edit=Sharky]Delphi-Tags gesetzt und das Parsten von BBCodes aktiviert Mfg, Sharky[/edit]
  Mit Zitat antworten Zitat