新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > CRC校驗(yàn)原理與程序設(shè)計(jì)――(RS485總線系統(tǒng)應(yīng)用之1

CRC校驗(yàn)原理與程序設(shè)計(jì)――(RS485總線系統(tǒng)應(yīng)用之1

作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò) 收藏

H61, HA1, H63, HA3, HA2, H62, H66, HA6, HA7, H67,_

HA5, H65, H64, HA4, H6C, HAC, HAD, H6D, HAF, H6F,_

H6E, HAE, HAA, H6A, H6B, HAB, H69, HA9, HA8, H68,_

H78, HB8, HB9, H79, HBB, H7B, H7A, HBA, HBE, H7E,_

H7F, HBF, H7D, HBD, HBC, H7C, HB4, H74, H75, HB5,_

H77, HB7, HB6, H76, H72, HB2, HB3, H73, HB1, H71,_

H70, HB0, H50, H90, H91, H51, H93, H53, H52, H92,_

H96, H56, H57, H97, H55, H95, H94, H54, H9C, H5C,_

H5D, H9D, H5F, H9F, H9E, H5E, H5A, H9A, H9B, H5B,_

H99, H59, H58, H98, H88, H48, H49, H89, H4B, H8B,_

H8A, H4A, H4E, H8E, H8F, H4F, H8D, H4D, H4C, H8C,_

H44, H84, H85, H45, H87, H47, H46, H86, H82, H42,_

H43, H83, H41, H81, H80, H40)

End Function

Function GetCRCLo(Ind As Long) As Byte ’CRC低位字節(jié)值表

GetCRCLo = Choose(Ind + 1,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

H80, H41, H00, HC1, H81, H40, H01, HC0, H80, H41,_

H00, HC1, H81, H40, H00, HC1, H81, H40, H01, HC0,_

H80, H41, H01, HC0, H80, H41, H00, HC1, H81, H40,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H00, HC1,_

H81, H40, H01, HC0, H80, H41, H01, HC0, H80, H41,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H00, HC1,_

H81, H40, H00, HC1, H81, H40, H01, HC0, H80, H41,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

H80, H41, H00, HC1, H81, H40, H00, HC1, H81, H40,_

H01, HC0, H80, H41, H01, HC0, H80, H41, H00, HC1,_

H81, H40, H01, HC0, H80, H41, H00, HC1, H81, H40,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

H80, H41, H00, HC1, H81, H40, H00, HC1, H81, H40,_

H01, HC0, H80, H41, H00, HC1, H81, H40, H01, HC0,_

H80, H41, H01, HC0, H80, H41, H00, HC1, H81, H40,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

H80, H41, H00, HC1, H81, H40, H01, HC0, H80, H41,_

H00, HC1, H81, H40, H00, HC1, H81, H40, H01, HC0,_

H80, H41, H00, HC1, H81, H40, H01, HC0, H80, H41,_

H01, HC0, H80, H41, H00, HC1, H81, H40, H01, HC0,_

H80, H41, H00, HC1, H81, H40, H00, HC1, H81, H40,_

H01, HC0, H80, H41, H01, HC0, H80, H41, H00, HC1,_

H81, H40, H00, HC1, H81, H40, H01, HC0, H80, H41,_

H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

H80, H41, H00, HC1, H81, H40)

End Function

3.2 用計(jì)算法求CRC函數(shù)的程序

計(jì)算法的優(yōu)點(diǎn)是程序編碼量小,雖然比查表法速度偏慢,但當(dāng)被校驗(yàn)的數(shù)據(jù)量不大時(shí)并不明顯。

3.2.1 用VC編寫(xiě)的程序

unsigned short CRC16(unsigned char buf[], int n)

{

unsigned short crc = 0xffff ;

for(i = 0; i n; i++)

{

crc ^ = buf[i] ;

for(b = 0; b 8; b++)

{

bool f = crc 1 ;

crc >> = 1 ;

if(f)

crc ^ = 0xa001 ;

}

}

return(crc) ;

}

3.2.2 用VB編寫(xiě)的程序

Function CRC16(Data() As Byte, No As Integer, CRC16Lo As Byte, CRC16Hi As Byte) As String



關(guān)鍵詞: CRC校驗(yàn) RS485總線

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉