Non so come si comportino i micro AVR quando si commutano al volo le porte da I a O; i PIC non gradiscono molto, i latch ogni tanto si incasinano.
L'unica soluzione funzionante al 100% che ho sperimentato è l'utilizzo di micro con interrupt su più porte, come giustamente ha fatto notare Marco.