#define MAXIUM_INPUT_NUM 40
#define MAXIUM_OUTPUT_DIGI (MAXIUM_INPUT_NUM * 2)
uint8_t dec_string[MAXIUM_OUTPUT_DIGI+1], hex_string[MAXIUM_INPUT_NUM];
uint8_t index_hex = 0, index_dec = 0;
uint8_t cnt = 0;
uint8_t echo(uint8_t inp) {
if ((inp =='\n')||(inp=='\r'))
{
printf("\n Input HEX String:");
for (uint8_t i = 0; i < cnt; i++) {
printf("%x", hex_string[i]);
}
printf("\n");
return 0;
}
if ((inp >= '0') && (inp <= '9'))
inp = inp - '0';
else if( (inp >= 'a') && (inp <= 'f'))
inp =inp-'a'+10;
else if( (inp >= 'A') && (inp <= 'F'))
inp =inp-'A'+10;
else return 1;
if (cnt < MAXIUM_INPUT_NUM) {
hex_string[cnt] = inp;
cnt++;
}
printf("%x", inp);
return 1;
} |