Lecture de plusieurs entrées numérique dans un octet

Bonjour,
Je cherche une solution pour lire plusieurs entrée numériques et les récupérer dans une variable sous forme d'un octet.
J'ai bien pensé créer une fonction qui les lit tour à tour puis leur attribuer un poids mais il existe peut être une solution plus élégante !

Si vous avez une idée, c'est avec plaisir que je vous lirais !

Merci

hello
tu t'arranges pour que tes données soient sur un même port. tu lis le port et tu appliques un masque

UNO
Pour la correspondance entre la dénomination officielle : celle d'Atmel et celle d'arduino suivre le lien :
https://www.arduino.cc/en/Hacking/Atmega168Hardware
C'est identique pour 168 et 328p.
Le micro de la UNO le 328p possède 3 ports : B, C et D

Mega :
il existe une page identique mais je ne sais pas où.

Pour faire ce qui t'as été proposé il faut lire la datasheet de ton micro-controleur (à télécharger sur le site du fabricant Atmel).
La procédure est expliquée et la datasheet contient des exemples d'application en C.

Bonjour,

Pour les accès aux ports, regarder ici :

https://www.google.fr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&cad=rja&uact=8&ved=0ahUKEwjCxaCcl9nNAhUE8RQKHZnNB2gQFgg-MAc&url=http%3A%2F%2Fperso-laris.univ-angers.fr%2F~cottenceau%2FArduinoCottenceau1112.pdf&usg=AFQjCNHRLVADiHij_frvOb8NTv_D_F3d-Q

Serge .D

Bonjour,

Il faudrait savoir combien d'entrée tu veux récupérer car si c'est 8 c'est impossible de trouver un port comportant les 8 bits libres sur une carte arduino uno (sauf à ne pas utiliser la liaison série).
Donc la méthode qui consiste à lire toutes les entrées sur le même port est un méthode qui n'est utilisable que si on trouve suffisamment d'entrées libres sur le port.
Autrement il faut s'orienter vers une lecture quartet par quartet voire bit à bit et reconstituer l'octet.
Il faudrait que tu en dises plus sur le nombre d'entrée que tu veux lire et le type de ta carte.

Même s’il faut lire plusieurs ports le principe de lire et de traiter un ou trois registres sera beaucoup plus rapide que l’emploi de la fonction digitalRead() qui utilise des constantes stockées en flash avec progmem.
C’est déjà le cas pour lire une seule sortie.
Le seul petit inconvénient est qu’il connaître la table de conversion ATMEL <> arduino.

Effectivement il faut en dire plus.
Tu n’as visiblement pas lu les conseils contenus dans le message de “Bienvenue sur le forum francophone” qui est épinglé en tête de forum.