AD (04.03.2011 13:12, просмотров: 279) ответил Bublic на Понятно. Нельзя ли поподробнее про байтовый метод когда за раз изменится 15 неизвестных бит.
Сложно самому написать?
uint8_t inputs[3];
uint8_t inputs_prev[3];
void process_inputs (void)
{
uint_fast8_t i, j;
get_inputs(inputs);
for (j = 0; j < 3; j++) {
uint_fast8_t changed = inputs[j] ^ inputs_prev[j];
inputs_prev[j] = inputs[j];
if (changed) {
uint_fast8_t mask = 1;
for (i = 0; i < 8; i++) {
if (changed & mask)
handle_inputs_change(j*8 + i, inputs[j] & mask);
mask <<= 1;
}
}
}
}