|
再另一个DSP上总共有4个字节,要发送到这个SPI上来做比较. 一个一个的发送的
我想请教你一下. 以下是我写的勒个接收比较函数
unsigned char CheckSum_RevData(unsigned flag) //接收函数
{
unsigned char ret_byte=0;
...
...
return ret_byte; //这里就返回了一个字节
}
void MCU_CheckSum(void)
{
unsigned char retdata_group[4];
unsigned char valid;
....
....
...
... //valid以计算出来了
for( i=0; i <4; i++ )
{
retdata_group = CheckSum_RevData(); //接收到的4个字节赋给数组了. (这一步其实我想要的效果是一个一个的接收,比较一个接收一个)
}
for(i=0; i <4; i++)
{
if( retdata_group == valid_data )
SPI_Printf("\n CHECKSUM OK");
else
SPI_Printf("\n CHECKSUM FAIL");
}
}
我上面写的这个是一次性把4个字节接收完后.再一一做比较..但是.我想要的效果是接收一个字节比较一个字节.如果当第一个字节就相同后,.就OK. 不同的话再接收比较第二个..我在这里应该怎么使用这个返回值啊?
retdata_group[0] = CheckSum_RevData()
if(valid_data == retdata_group[0])
SPI_Printf("OK");
else
retdata_group[1] = CheckSum_RevData()
if(valid_data == retdata_group[1])
SPI_Printf("OK");
else
SPI_Printf("FAIL");
像我这么写的 .那么retdata_group[0]和retdata_group[1]得到的返回值都是一样的吧? 肯定不对吧.我应该怎么书写啊,才能得到我要的效果啊.
|
|