理清楚数据类型转换,还是要回归ASCII码、
引用一下的ASCII表http://ascii.911cha.com/方便对比学习。在单片机中其实是自动识别十进制与十六进制的,但是有时候需要对数据转换获取想要的进制数。下面介绍几种数据类型的转换,此外方法很多,只简单介绍本人愚见。
一、字符串转ASCII
字符串其实就是上述ASCII表中的图形栏内容,转换成hex,即变成对应的十六进制数。通常以0123456789ABCDEF,进行转换。找规律:字符 '0' 对应0x30 字符 '1' 对应0x31 字符‘A’ 对应0x41 字符 ‘a’对应 0x61 等这些都是简单,早就知道的。换成C语言则可以这样写:
‘0~9‘ + 0x30
‘A~F’ - 'A'+10
'a~f' - 'a'+10
void str_to_acsll(uint8_t *s_inchar, uint8_t s_len, uint8_t *a_outtxt)
{
uint8_t size1=0,i=0;
for( size1=0;size1{
if( s_inchar[size1]>='0' && s_inchar[size1] <= '9&#