Wpis z mikrobloga

Czemu taka funkcja

void uart_printH(uint8_t val)
{
const char* tab = "012345679ABCDEF";
uint8_t buf[3];
buf[0] = tab[(val >> 4) & 0x0f];
buf[1] = tab[val & 0x0f];
buf[2] = '\0';
uart_print(buf);
}

potrafi czasem nie wypisać żadnych znaków?

gdzie indziej mam taki kod:

uint8_t packet[8];
...
for (i = 0; i < 8; ++i)
{
uart_printH(packet[i]);
uart_print(" ");
}

i dostaję czasami same spacje...

#programowanie #cpp #jezykc wołam też #elektronika bo rzecz dzieje się na PIC16F88
  • 7
@dupasmoka: na mikrokontrolery? do tej pory napisałem dużo kodu w różnych językach bez unit testów i jakoś nie mogę zacząć je pisać... po prostu od razu piszę funkcjonalność zamiast testu...