您当前的位置:五五电子网电子知识plc技术PLC入门MODBUS-RTU CRC校验码计算 VB源代码 正文
MODBUS-RTU CRC校验码计算 VB源代码

MODBUS-RTU CRC校验码计算 VB源代码

点击数:7494 次   录入时间:03-04 11:35:59   整理:http://www.55dianzi.com   PLC入门
Public Function CRC(STR1 As String) As String
Dim CRCREG As Long
Dim MVAL As Long
Dim R As Integer


CRCREG = 65535


For R = 1 To Len(STR1) Step 2
MVAL = Val("&H" + Mid(STR1, R, 2))

CRCREG = CRCREG Xor MVAL
CRCREG = CRCREG And 65535


For T = 1 To 8 Step 1
If (CRCREG And &H1) Then
CRCREG = (CRCREG \ 2) Xor &HA001
 CRCREG = CRCREG And 65535
 


    Else
    
   CRCREG = CRCREG \ 2
CRCREG = CRCREG And 65535
End If
Next 

Next
Dim A As Long
Dim B As Long
A = CRCREG And 255
B = CRCREG And 65280
A = A * 256
B = B / 256

If (A + B) < 16 Then
CRC = "000" + Hex(A + B)
ElseIf (A + B) < 256 Then

 


CRC = "00" + Hex(A + B)
ElseIf (A + B) < 4096 Then
CRC = "0" + Hex(A + B)
Else
CRC = Hex(A + B)
End If

本文关键字:源代码  PLC入门plc技术 - PLC入门