函數(shù)名稱:CRC-16 Process
函數(shù)原型:INT16U make_crc16(INT8U *msgaddr,INT8U datalen)
函數(shù)功能:進(jìn)行CRC校驗(yàn)和產(chǎn)生CRC代碼.這個(gè)函數(shù)只影響全局變量crc16.
校驗(yàn)字放在字符串最后,低8位在前高8位在后.
msgaddr : 進(jìn)行CRC16校驗(yàn)的據(jù)塊的首地址
datalen : 進(jìn)行CRC16校驗(yàn)的據(jù)塊的個(gè)數(shù)
CRC-ITU的計(jì)算算法如下:
a.寄存器組初始化為全"1"(0xFFFF)。
b.寄存器組向右移動(dòng)一個(gè)字節(jié)。
c.剛移出的那個(gè)字節(jié)與數(shù)據(jù)字節(jié)進(jìn)行異或運(yùn)算,得出一個(gè)指向值表的索引。
d.索引所指的表值與寄存器組做異或運(yùn)算。
f.數(shù)據(jù)指針加1,如果數(shù)據(jù)沒有全部處理完,則重復(fù)步驟b。
g.寄存器組取反,得到CRC,附加在數(shù)據(jù)之后(這一步可省略)。
標(biāo)簽:
CRC
INT
16
make_crc
上傳時(shí)間:
2015-12-21
上傳用戶:llandlu