amobbs.com 阿莫电子技术论坛
标题:
EM4100卡的校验问题
[打印本页]
作者:
justloong
时间:
2014-7-22 20:12
标题:
EM4100卡的校验问题
[attach]207595[/attach]
在EM4100的数据手册上看到P0~P9和PC0~PC3分别是行和列的奇校验,但怎么在实际检测中感觉是偶校验啊。
有了解的朋友能帮忙解释下吗
作者:
lyp103
时间:
2014-7-23 09:22
P0-P9是偶校验,PC0-PC3是奇校验
作者:
justloong
时间:
2014-7-23 13:36
lyp103 发表于 2014-7-23 09:22
P0-P9是偶校验,PC0-PC3是奇校验
3Q 所有的4100卡都是这样校验的吧?
作者:
justloong
时间:
2014-7-23 21:47
lyp103 发表于 2014-7-23 09:22
P0-P9是偶校验,PC0-PC3是奇校验
看了好几个别人的程序,行和列用的都是偶校验。还有目前找到的一些中文资料,也都是写的偶校验[attach]207874[/attach]
作者:
lyp103
时间:
2014-7-24 09:27
呵呵 我重新看了一下资料,是我写错了,都是偶校验的
作者:
yueming
时间:
2019-6-26 11:30
void check()
{
unsigned char i,j,counter;
unsigned char cache,cache_1;
unsigned char c;
for(i=2;i<10;i++)
{
counter=0;
cache=g_ucData[i];
cache_1=g_ucData[i];
for(j=0;j<4;j++)
{
cache&=0x80; //计算有几个1
if(cache==0x80)
{
counter++;
}
cache_1 <<=1;
cache=cache_1;
}
if((counter==0) ||(counter==2) ||(counter==4))
{
check_bit=0;
}
else if((counter==1) || (counter ==3))
{
check_bit=1;
}
c=g_ucData[i];
c&=0x08;
if(c==0x08)
{
PC_bit=1;
}
else
{
PC_bit=0;
}
if(check_bit==PC_bit)
{
flag= 1; //表示检验正确
}
else
{
flag=0;
LED_ON;
}
if(flag==0)
{
return;
}
}
}
怎么感觉有问题,不符合的也可以打印出来 大神帮我看看呗
欢迎光临 amobbs.com 阿莫电子技术论坛 (https://www.amobbs.com/)
Powered by Discuz! X3.4