#include <stdint.h>
#include "convert.h"
unsigned bcd2bin(unsigned char val)//11 : 0x11
{
return (val & 0x0f) + (val >> 4) * 10;
}
unsigned char bin2bcd(unsigned char val)//0x11 :11/10*16+1 = 17
{
if(val==0)
return 0;
else
return ((val / 10) *16) + val % 10;
}
uint8_t ascii2bcd(uint8_t *str)
{
return (((*str - '0')<<4)+(*(str+1) - '0'));
}
uint8_t numAsscci2bin(uint8_t a){//
if(a >= 0x30 && a <= 0x39)
return (uint8_t)(a - '0');
else if(a >= 0x41 && a<= 0x46)
return (a - 0x37);//這裡應該減去0x37,否則算出來
else if(a >= 0x61 && a<= 0x66)
return (a - 0x57