VB.NET 通信协议Modbus RTU CRC16效验算法

本篇内容来自https://blog.csdn.net/worldy/article/details/7424659

 

Modbus RTU CRC16算法

Public Function GetCRC16(Buf() As Byte, ByVal BufLen As Long) As Long
    Dim mCrcVal As Long
    Dim i As Byte, j As Byte
   
    mCrcVal = &HFFFF&
    For i = 0 To BufLen - 1
        mCrcVal = mCrcVal Xor Buf(i)
        For j = 1 To 8
            If (mCrcVal And &H1) Then
                mCrcVal = (mCrcVal \ 2) Xor &HA001&
            Else
                mCrcVal = mCrcVal \ 2
            End If
        Next
   
    Next
    GetCRC16 = mCrcVal
End Function

 友情链接:

VB_CRC16_1

https://wenku.baidu.com/view/2d2dc14cf7ec4afe04a1dfef.html

posted @ 2020-12-29 17:34  风云SH变幻  阅读(1544)  评论(0)    收藏  举报