|
uint crc16l(uchar *ptr,uchar len) // ptr 為數(shù)據(jù)指針,len 為數(shù)據(jù)長度
{
uchar i;
while
bbe1c739b6003af3fb981040312ac65c1038b6a7.jpg (1.04 KB, 下載次數(shù): 120)
下載附件
2016-4-7 03:54 上傳
(len--)
{
for(i=0x80; i!=0; i>>=1)
{
if((crc&0x8000)!=0) {crc<<=1; crc^=0x1021;} 1-1
else crc<<=1; 1-2
if((*ptr&i)!=0) crc^=0x1021; 1-3
}
ptr++;
}
return(crc);
}
我對1-1 1-2 1-3 行不是很懂,能講解一下嗎,想了很久還是沒結(jié)果,麻煩你了
單片機(jī)通信系統(tǒng)中CRC算法與硬件環(huán)境編程的實(shí)現(xiàn)(pdf),根據(jù)第七個方程編出以上代碼,我很不理解
205ccfc451da81cb07ea4fed5666d016092431b0.jpg (97.61 KB, 下載次數(shù): 108)
下載附件
2016-4-7 03:54 上傳
|
|