⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 crc1.c

📁 代码以两种方法实现crc16校验
💻 C
字号:
#include<reg51.h>

#define uchar unsigned char
#define uint  unsigned int

uint data arc,crc1;
uchar data rbut[8];

uint crc16(uchar *str,uchar num)
{
    uchar i,j;
	uint c,crc;
	crc = 0xffff;
	for( i=0 ; i<num ; i++ )
	{
	    c = str[i]&0x00ff;
		crc ^= c;
		for( j=0 ; j<8 ; j++ )
		{
		    if( crc&0x0001 )
			{
			    crc >>= 1;
				crc ^= 0xa001;
			}
			else
			    crc >>= 1;
		}
	}
	return crc;
}

void main()
{
    SP = 0x60;
	rbut[0] = 0x01;
	rbut[1] = 0x02;
	rbut[2] = 0x03;
	rbut[3] = 0x04;
	rbut[4] = 0x05;
	rbut[5] = 0x06;
	rbut[6] = 0x07;
	rbut[7] = 0x08;
	crc1 = crc16(rbut,8);
	while(1);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -