Rilevare fino a 8 transazioni contemporaneamente

Molto interessante! No i us non mi interessano.

Vedere un pò di codice sarebbe molto d'aiuto.

Mettevi tutto in un byte e poi confrontavi bit a bit?
La mia sensazione è questa:

Devo controllare 8 motori, di cui ne posso attivare da 1 a 8 contemporaneamente. Dipende dalle circostanze.
Poi ho 8 sensori, uno per motore la cui uscita va da 0 a 1 al verificarsi di certe condizioni.
Non appena rilevo questa transizione, devo spegnere il motore.

Per far si che tutto avvenga nello stesso istante di tempo setto i pin di OUTPUT dei motori con il comando PORT (A).
Allo stesso scopo, per leggere i pin di INPUT collegati ai sensori uso il comando PIN sul registro corrispondente (L).
Quindi quello che voglio fare è:

  • leggere solo i pin corrispondenti ai motori attivi;
  • cercare le transizioni da 0 a 1;
  • spegnere il motore corrispondente al sensore che mi ha dato la transizione
  • continuare a fare questa operazione finchè tutti i motori non sono spenti

So che devo giocare con i binari, ma mi sta risultando complicato mettere tutto su codice.