标签:
void Get_CP_MSG(u8 * src_dat,u8 * des_dat) //解析出车牌的5bit值
{
u8 temp,i;
//分离
// [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ]
// * * * * * * * * + + + + + + + + * * * * * * * * + + + + + + + + * * * * * * * * + + + + + + + + * * * * * * * *
// 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
// 1 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4 5 5 5 5 5 5 6 6 6 6 6 6 7 7 7 7 7 7 # * * * * * * # # # # $ $ $ $
// 1表示检测,2表示区 3-7表示车牌
// *表示年 #表示日 $表示月
des_dat[0]=(src_dat[0]>>2)&0X3F;//1
temp=(src_dat[0]<<3)&0X18;
des_dat[1]=(src_dat[1]>>5)&0X07;//2
des_dat[1]=des_dat[1]+temp;
temp=(src_dat[1]<<1)&0X3E;
des_dat[2]=(src_dat[2]>>7)&0X01;//3
des_dat[2]=des_dat[2]+temp;
des_dat[3]=(src_dat[2]>>1)&0X3F;//4
temp=(src_dat[2]<<5)&0X20;//5
des_dat[4]=(src_dat[3]>>3)&0X1F;
des_dat[4]=des_dat[4]+temp;
temp=(src_dat[3]<<3)&0X38;//6
des_dat[5]=(src_dat[4]>>5)&0X07;
des_dat[5]=des_dat[5]+temp;
temp=(src_dat[4]<<1)&0X3E;
des_dat[6]=(src_dat[5]>>7)&0X01;//3
des_dat[6]=des_dat[6]+temp;
//年
des_dat[7]=src_dat[5]&0X3F;//
//月
des_dat[8]=src_dat[6]&0X0F;//
//日
temp=(src_dat[5]>>2)&0X10;
des_dat[9]=(src_dat[6]>>4)&0X0F;//
des_dat[9]=des_dat[9]+temp;
//映射
des_dat[0]=jianchen(des_dat[0]);
for(i=1;i<7;i++)
{
des_dat[i]=Check_Plate_Num(des_dat[i]);
}
}
u8 jianchen(u8 dat)
{
if(dat==1)
{
dat=36;//return _T("皖");
}
else if(dat==2)
{
dat=37;//return _T("京");
}
else if(dat==3)
{
dat=38;//return _T("闽");
}
else if(dat==4)
{
dat=39;//return _T("甘");
}
else if(dat==5)
{
dat=40;//return _T("粤");
}
else if(dat==6)
{
dat=41;//return _T("桂");
}
else if(dat==7)
{
dat=42;//return _T("贵");
}
else if(dat==8)
{
dat=43;//return _T("琼");
}
else if(dat==9)
{
dat=44;//return _T("翼");
}
else if(dat==10)
{
dat=45;//return _T("豫");
}
else if(dat==11)
{
dat=46;//return _T("黑");
}
else if(dat==12)
{
dat=47;//return _T("鄂");
}
else if(dat==13)
{
dat=48;//return _T("湘");
}
else if(dat==14)
{
dat=49;//return _T("吉");
}
else if(dat==15)
{
dat=50;//return _T("苏");
}
else if(dat==16)
{
dat=51;//return _T("赣");
}
else if(dat==17)
{
dat=52;//return _T("辽");
}
else if(dat==18)
{
dat=53;//return _T("蒙");
}
else if(dat==19)
{
dat=54;//return _T("宁");
}
else if(dat==20)
{
dat=55;//return _T("青");
}
else if(dat==21)
{
dat=56;//return _T("鲁");
}
else if(dat==22)
{
dat=57;//return _T("晋");
}
else if(dat==23)
{
dat=58;//return _T("陕");
}
else if(dat==24)
{
dat=59;//return _T("沪");
}
else if(dat==25)
{
dat=60;//return _T("川");
}
else if(dat==26)
{
dat=61;//return _T("津");
}
else if(dat==27)
{
dat=62;//return _T("藏");
}
else if(dat==28)
{
dat=63;//return _T("新");
}
else if(dat==29)
{
dat=64;//return _T("云");
}
else if(dat==30)
{
dat=65;//return _T("浙");
}
else if(dat==31)
{
dat=66;//return _T("渝");
}
else if(dat==32)
{
dat=67;//return _T("军");
}
else if(dat==33)
{
dat=68;//return _T("空");
}
else if(dat==34)
{
dat=69;//return _T("海");
}
else if(dat==35)
{
dat=70;//return _T("北");
}
else if(dat==36)
{
dat=71;//return _T("沈");
}
else if(dat==37)
{
dat=72;//return _T("兰");
}
else if(dat==38)
{
dat=73;//return _T("济");
}
else if(dat==39)
{
dat=74;//return _T("南");
}
else if(dat==40)
{
dat=75;//return _T("广");
}
else if(dat==41)
{
dat=76;//return _T("成");
}
return dat;
}
u8 Check_Plate_Num(u8 dat)
{
if(dat==0)
{
dat=35;//return _T("0");
}
//1-9保持不变
else if(dat==10)
{
dat=77;//return _T("A");
}
else if(dat==11)
{
dat=78;//return _T("B");
}
else if(dat==12)
{
dat=79;//return _T("C");
}
else if(dat==13)
{
dat=80;//return _T("D");
}
else if(dat==14)
{
dat=81;//return _T("E");
}
else if(dat==15)
{
dat=82;//return _T("F");
}
else if(dat==16)
{
dat=83;//return _T("G");
}
else if(dat==17)
{
dat=84;//return _T("H");
}
else if(dat==18)
{
dat=85;//return _T("I");
}
else if(dat==19)
{
dat=86;//return _T("J");
}
else if(dat==20)
{
dat=87;//return _T("K");
}
else if(dat==21)
{
dat=88;//return _T("L");
}
else if(dat==22)
{
dat=89;//return _T("M");
}
else if(dat==23)
{
dat=90;//return _T("N");
}
else if(dat==25)
{
dat=92;//return _T("P");
}
else if(dat==26)
{
dat=93;//return _T("Q");
}
else if(dat==27)
{
dat=94;//return _T("R");
}
else if(dat==28)
{
dat=95;//return _T("S");
}
else if(dat==29)
{
dat=96;//return _T("T");
}
else if(dat==30)
{
dat=97;//return _T("U");
}
else if(dat==31)
{
dat=98;//return _T("V");
}
else if(dat==32)
{
dat=99;//return _T("W");
}
else if(dat==33)
{
dat=100;//return _T("X");
}
else if(dat==34)
{
dat=101;//return _T("Y");
}
else if(dat==35)
{
dat=102;//return _T("Z");
}
return dat;
}
标签:
原文地址:http://www.cnblogs.com/EasyInvoice/p/5622409.html