[an error occurred while processing this directive]
|
u8_t PREV_STATE;
u8_t CHNG_STATE;
PREV_STATE = PINB;
..........
CHNG_STATE = (PREV_STATE ^ PINB) & MASK // MASK - если нужно, а мб и не нужно
if (CHNG_STATE) {
for (i = 0; i < n; i++) {
if (CHNG_STATE & 1) {
break;
}
CHNG_STATE >>= 1;
}
//
n - номер пина где изменилось
} else {
// нет смены состояний
}
E-mail: info@telesys.ru