C语言十六进制字节转ASCII字符函数

Drip 2018-11-14

将单个字节转化为两个ASCII字符进行显示,即一个字节转化为两个字节。如0x27,转化为'2' '7'两个字符。

uint16_t HexToASCII(uint8_t data_hex)

{

uint8_t data_ASCII_H;

uint8_t data_ASCII_L;

uint16_t data_ASCII;

data_ASCII_H = ((data_hex >> 4) & 0x0F);

data_ASCII_L = data_hex & 0x0F;

if(data_ASCII_H <= 9)

{

data_ASCII_H += 0x30;

}

else if((data_ASCII_H >= 10) && (data_ASCII_H <= 15))

{

data_ASCII_H += 0x37;

}

if(data_ASCII_L <= 9)

{

data_ASCII_L += 0x30;

}

else if((data_ASCII_L >= 10) && (data_ASCII_L <= 15))

{

data_ASCII_L += 0x37;

}

data_ASCII = (((data_ASCII_H & 0x00FF) << 8) | data_ASCII_L);

return data_ASCII;

}

C语言十六进制字节转ASCII字符函数

相关推荐