J'aimerais savoir quel est l'équivalent en C, en programmation pic de la commande "btfsc" et ""btfss".
Merci
-----
25/12/2008, 23h02
#2
invite03481543
Date d'inscription
janvier 2006
Âge
61
Messages
17 473
Re : Pic
Bonsoir,
Ces instructions sont destinées à tester des bits de registres en vue d'une action en conséquence.
btfsc reg, bit :
-> saute l'instruction suivante si le test du bit du registre est à 0.
btfss reg, bit :
-> saute l'instruction suivante si le test du bit du registre est à 1.
Ca correspond à un while par exemple si on attend la fin d'écriture en E²PROM -> on teste le bit WR de EECON1.
Ca peut être aussi un if dans d'autres cas, bref une condition.
Dans tous les cas une seule instruction assembleur ne peut être directement portée en C, il faut généralement plusieurs instructions assembleur pour 1 seule ligne de C.
26/12/2008, 07h42
#3
BastienBastien
Invité
Re : Pic
Bonjour,
Tu peux faire un simple IF, après avoir défini ton masque :
#include <stdio.h>
int main(void)
{
int MASK = 0x0000001;
int value = 0x1111110;
if (value & MASK)
printf("ok\n");
else
printf("no ok\n");
return(0);
}
26/12/2008, 07h59
#4
BastienBastien
Invité
Re : Pic
Re,
Tiens, ce code là est plus propre. Tu peux tester une valeur que tu donnes en paramètre, avec la ligne de commande :
bastien@zoulou:~$ cat essai.c
#include <stdio.h>
int main(int argc, char *argv[])
{
int MASK = 0x0000001;
int value = atoi(argv[1]);
printf("value : %d\n", value);
if (value & MASK)
printf("OK\n");
else
printf("NO OK\n");
return(0);
}
bastien@zoulou:~$
Aujourd'hui
A voir en vidéo sur Futura
26/12/2008, 08h13
#5
mandracs
Date d'inscription
octobre 2004
Localisation
Isère
Âge
43
Messages
79
Re : Pic
Envoyé par BastienBastien
Re,
Tiens, ce code là est plus propre. Tu peux tester une valeur que tu donnes en paramètre, avec la ligne de commande :
bastien@zoulou:~$ cat essai.c
#include <stdio.h>
int main(int argc, char *argv[])
{
int MASK = 0x0000001;
int value = atoi(argv[1]);
printf("value : %d\n", value);
if (value & MASK)
printf("OK\n");
else
printf("NO OK\n");
return(0);
}
bastien@zoulou:~$
Salut, BastienBastien
J'ai une question limite hors sujet : Est-ce que tu as trouvé un moyen de transférer le fichier hex sur la easypic5 avec ubuntu ?
ps : limite hors sujet mais je parle quand même de pic
26/12/2008, 09h19
#6
BastienBastien
Invité
Re : Pic
Re,
Si tu trouves, dis-le moi...
J'ai passé 5 ans sous Debian et depuis environ 4 ans je suis sous Ubuntu. It rocks !
Wine fait tourner des binaires *montrueux* mais ne peut même pas faire tourner les petits soft de 100 ko qui m'intéressent...
J'ai arrêté de chercher. Je retenterai dans quelques années...