Tooshort23
Messages postés6Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention26 mai 2003
-
23 mai 2003 à 19:21
Tooshort23
Messages postés6Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention26 mai 2003
-
26 mai 2003 à 11:20
Bonjour,
je me demande comment stocker des bits dans un octet qui arrivent en série ...
Il s'agit d'une lecture de carte à puce.
Les bits sont transmis un à un mais je n'arrive pas à les ranger correctement.
faut-il utiliser une variable "char"?
ou bien une variable définit:
#define nom_variable 0b00000000
Tooshort23
Messages postés6Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention26 mai 2003 24 mai 2003 à 10:52
mes bits sont dans une carte à puce....
le bit de donnée à transmettre au "pic" est sur le port C.
A chaque coup d'horloge, je lis ce bit en masquant le port C.
Ensuite je ne sais pas où et comment le stocker...
Au total, il y a 64 bits à transmettre. Je souhaite ranger les 8 octets dans un tableau de 8.
Il faut décaler le bit à chaque fois pour le remettre à la bonne place, c'est tout ce que je sais...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 mai 2003 à 11:11
faut d'abord definir ce que tu dois faire quand recption finie de tes 8 octets pour savoir la meilleure methode pour y acceder facilement.
unsigned char carte[8];
unsigned char puce;
int i = 0;
quand reception:
carte[i++] = octet;
if(i == 8) ne plus recevoir.
y a un decalage de bits sur octet ?
alors serait par exemple:
carte[i++] = octet >> 7; // si HIBIT
BruNews, ciao...
Tooshort23
Messages postés6Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention26 mai 2003 24 mai 2003 à 11:20
salut Brunews,
je sais comment ranger mes 8 octets mais le problème est que je n'arrive pas à ranger les bits un à un dans une variable. C'est le principe de la liaison série, sauf que c'est moi qui fait le protocole, tu vois ce que je veux dire???
Merci...
Vous n’avez pas trouvé la réponse que vous recherchez ?