使用C语言实现STM32的16进制转10进制和10进制移位转16进制

/*********16进制转10进制*************/
u16  hextoDec(u8 hex)
    {
 u16 sum=0,mul=1;
 int i,r;
 int count=0;
 do{
  r=hex%16;
  for(i=0;i<count;i++)
        mul*=16;
        mul*=r;
        sum+=mul;
        mul=1;
        count++; 
 }while(hex/=16);
 return sum;
}
int main

{

u16 num;

u16 buf[2];

num=  hextoDec(0xffff);//16进制转10进制

buf[0] = (uint8_t)(num[0] >> 8); 
buf[1] = (uint8_t)(num[0]);              

}

结果:buf[0]=0xff,buf[1]=0xff;

物联沃分享整理
物联沃-IOTWORD物联网 » 使用C语言实现STM32的16进制转10进制和10进制移位转16进制

发表评论