二进制转换成BCD码
/*二进制转成BCD码*/
uint8_t byte_bintobcd(uint8_t bin)
{
uint8_t ret;
bin&=0x7f;
bin%=100;
ret=bin/10;
ret <<=4;
ret|=bin%10;
return ret;
}
BCD码转换成二进制
/*BCD码转换成二进制*/
uint8_t byte_bcdtobin(uint8_t bcd)
{
uint8_t ret;
ret=bcd & 0x0f;
ret+=((bcd&0x70)>>4)*10;
return ret;
}
BCD码转换成10进制
/*BCD码转换成10进制*/
uint8_t bcdtodec(uint8_t bcd)
{
return(((bcd>>4)*10)+(bcd&0x0f));
}