crc16.c

来自「CRC16 验证 51C语言 C RC16 验证 51C语言」· C语言 代码 · 共 49 行

C
49
字号
#include <reg51.h>
unsigned char tbufpt[8]={0x01,0x03,0x02,0x0F,0x9F,0x01};//01 03 02 0F 9F  DC FD 
unsigned int tcrc;
/************************************************************
发送字节crc校验程序
 void tcrc16(void)
功能:发送字节crc校验,校验值位于tcrc
*************************************************************/
void tcrc16(void)
{
unsigned char i,j;

tcrc=0xffff;
for (j=0;j<5;j++)
{
   
    tcrc^=tbufpt[j];
	for(i=0;i<8;i++)
	 { 
  	
  	 if(tcrc&0x0001)
	 {
	 tcrc>>=1;
	 tcrc=tcrc&0x7fff;
  	 tcrc^=0xa001;
	 }
	 else
	 {
	 tcrc>>=1;
	 tcrc=tcrc&0x7fff;
	 }
  	 }
}
tbufpt[6]=(tcrc>>8);
tbufpt[7]=tcrc;  
}


void main(void)
{
unsigned temp;
while(1)
{
tcrc16();
temp=tcrc;
}

}

⌨️ 快捷键说明

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