Go Down

Topic: Lettura parallela pin (Read 874 times) previous topic - next topic

erpomata

Vorrei sapere se c'è un modo per leggere lo stato dei pin in maniera "parallela".
Io per ora faccio così:

Code: [Select]
 xVal = digitalRead(x);
 yVal = digitalRead(y);
 zVal = digitalRead(z);


vorrei fare invece:

Code: [Select]
xyzVal = leggiPin(x,y,z);

che mi restituisce il byte contenente lo stato dei 3 (00000111) pin senza leggerli in maniera sequenziale come sopra ovviamente.
E magari se c'è un modo anche per settarli nella stessa maniera.

astrobeed


Vorrei sapere se c'è un modo per leggere lo stato dei pin in maniera "parallela".


Basta che leggi/scrivi direttamente il registro della porta, PINB o PORTB per esempio, mascherando i pin che non ti interessano, in questo modo puoi leggere/scrivere 8 bit per volta.

erpomata

Ok grazie sembra che ci sia riuscito, questa sera farò altri esperimenti.
Sai se funziona anche su attiny?

leo72



Go Up