static int char2hex(char *src, unsigned int *hex, int len)
{
if(len > 8)
{
debug_printf("the length of char is too large\n");
return -1;
}
int i,j;
*hex = 0;
for(i = 0;i < len; i++)
{
j = len - i - 1;
*hex &= (~(0xf << (j*4)));
if((src[i]>='0') && (src[i]<='9'))
{
*hex |= (src[i]-0x30) << (j*4);
}
else if((src[i]>='a') && (src[i]<='z'))
{
*hex |= (src[i]-0x57) << (j*4);
}
else if((src[i]>='A') && (src[i]<='Z'))
{
*hex |= (src[i]-0x37) << (j*4);
}
}
// debug_printf("get char:%s h:%x\n", src, *hex);
return 1;
}