tanxia
級別: 探索解密
|
最近在做三菱FX2N與歐母龍變頻器的通信,遇到一個問題,就是看不明白歐母龍變頻器通信格式中的異常檢查-CRC-16要如何計算,請各位幫幫忙 |
---|---|
|
meiyouleya
天黑路滑,社會復(fù)雜!!!
級別: 略有小成
|
說明:CRC循環(huán)冗余錯誤校驗計算方法 CRC—16(循環(huán)冗余錯誤校驗)生成CRC—16校驗字節(jié)的步驟如下: (1)裝入一個16位寄存器,所有數(shù)位均為1。 (2)該16位寄存器的高位字節(jié)與開始8位字節(jié)進行“異或”運算。運算結(jié)果放入這個16位寄存器。 (3)把這個16位寄存器向右移1位。 (4a)若向右(標記位)移出的數(shù)位是1,則生成多項式1010000000000001和這個寄存器進行“異或”運算。 (4b)若向右移出的數(shù)位是0,則返回(3)。 (5)重復(fù)(3)和(4),直至移出8位。 (6)另外8位與該16位寄存器進行“異或”運算。 (7)重復(fù)(3)—(6),直至該報文所有字節(jié)均與16位寄存器進行“異或”運算,并移位8次。 (8)這個16位寄存器的內(nèi)容即2字節(jié)CRC錯誤校驗 如果還是不明白可以在網(wǎng)上下載一個例子程序看下。 |
---|---|
|