大学生
最后登录1970-1-1
在线时间 小时
注册时间2014-4-16
|
用的是串口中断收发那个程序,自己找了一个VC++6.0 环境下的程序,运行没问题可是移植过来时就会报错
..\..\User\main.c(40): error: #32: expression must have arithmetic type
..\..\User\main.c(41): error: #29: expected an expression
我的思路是把串口调试助手发的那个数据处理之后,再把处理结果发到串口上。
这个是需要移植的程序,移植到火哥的串口中断程序
#include <stdio.h>
#define COUNT 6
unsigned int CRC_check(unsigned char *fp_CRC,unsigned char count)
{
unsigned int CRC=0XFFFF;
unsigned char CRC_count;
for(CRC_count=0;CRC_count<count;CRC_count++)
{
int i;
CRC=CRC^*(fp_CRC+CRC_count);
for(i=0;i<8;i++)
{
if(CRC&1)
{
CRC>>=1;
CRC^=0XA001;
}
else CRC>>=1;
}
}
return CRC;
}
int main(void)
{
unsigned char CRC_DATA[COUNT];
unsigned int i;
printf("input the CRC_DATA[n]:\n");
for(i=0;i<COUNT;i++)
scanf("%x",&CRC_DATA[i]);
for(i=0;i<COUNT;i++)
printf("\n%-2x%8d",CRC_DATA[i],i);
printf("\n%4x",CRC_check(CRC_DATA,COUNT));
return 0;
} |
|