Gerer l'état des I/O simultanément

Est-il possible de gérer les I/O en octet plutôt que par bit.
Cela permettrait d'écrire directement l'état de chaque bit tout en restant avec un mot de 8 bits:

Je m'explique sur le connecteur J1 d'un Duemilanove il y a tout le Port D du Micro MEGA328
Au lieu d'utiliser la méthode digitalWrite ou le premier argument est un bit et le deuxième son état

digitalWrite(0, HIGH) // digital pin 0
digitalWrite(1, LOW) // digital pin 1
digitalWrite(2, LOW) // digital pin 2
digitalWrite(3, HIGH) // digital pin 3
digitalWrite(4, HIGH) // digital pin 4
digitalWrite(5, HIGH) // digital pin 5
digitalWrite(6, HIGH) // digital pin 6
digitalWrite(7, HIGH) // digital pin 7

Ce qui revient à écrire l'octet 0xF9 sur le port D
Il n'y a pas de méthode dans ce genre:

PortDWrite(0xF9)

Bonjour,

Tout simplement PORTD = 0xF9;

De même pour les autres port:
PORTA
PORTB
PORTC
PORTD

et pour leur configuration I/O:
DDRA
DDRB
DDRC
DDRD

L'API Arduino n'est qu'une surcouche des librairies AVR classique donc tout les registres classique sont utilisable tel quelle.

Bonsoir,

Ok c'est parfait dans ce cas ! :slight_smile:
Merci pour l'info