微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 一个加校验码的函数

一个加校验码的函数

时间:10-02 整理:3721RD 点击:

你们好,想问一下这段代码是什么意思,是为了干嘛
uchar buff[12]={'%','0','1','#','0','0','0','0','0','0','0','\n',};

// 函数说明:加校验码函数
void crc(void)
{
    uchar j,i=0,k;
    for(j=0;j<9;j++)
    {
     i=buff[j];
     }
k=i>>4;
if(k>=0&&k<=9)
k=k+0x30;
else if(k>=10&&k<15)
k=k+0x41;
i=i&0x0f;
if(i>=0&&i<=9)
i=i+0x30;
else if(i>=10&&i<15)
i=i+0x41;
buff[9]=k;
buff[10]=i;}




补充内容 (2016-11-2 16:04):
  程序第六行写错了,是i=i^buff[j];

这段代码是实现crc校验的

谢谢,是的,现在搞明白了。

恩,明白就好,呵呵

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top