Bachelorthesis/Modbus/Common.cin

27 lines
505 B
Text
Raw Normal View History

2014-05-07 12:13:24 +02:00
/*@!Encoding:1252*/
2014-05-07 12:13:24 +02:00
void bin_to_strhex(byte bin[], char result[])
{
char hex_str[17]= "0123456789ABCDEF";
word i;
word binsz;
binsz = elCount(bin);
if (binsz > 20)
binsz = 20;
for (i = 0; i < binsz; i++)
{
result[i * 3 + 0] = hex_str[bin[i] >> 4 ];
result[i * 3 + 1] = hex_str[bin[i] & 0x0F];
result[i * 3 + 2] = ' ';
}
if (elCount(bin) > 20) // trailing "..."
2014-05-07 12:13:24 +02:00
{
result[56] = '.';
result[57] = '.';
result[58] = '.';
}
result[binsz * 3 - 1] = 0;
}