programmation pic - C - Programmation
Marsh Posté le 04-03-2013 à 10:58:30
Il manque une accolade '{' après le while(TRUE),
là en gros ton truc répété en boucle sera le fgets(chaine).
Marsh Posté le 04-03-2013 à 11:16:54
merciii, je les ai mises!! mais toujours le même problème en envoyant un mot à l'hyperterminal, il ne peut pas le voire !!
Marsh Posté le 04-03-2013 à 12:15:01
Il bloque à l'instruction fgets ?
Marsh Posté le 04-03-2013 à 13:04:41
non!! je l'ai remplacé qd meme par gets (chaine) mais toujours rien!!
Marsh Posté le 04-03-2013 à 15:34:24
Ben c'est normal.
Si tu es sans console, ce que je soupçonne sur ton PIC, comment gets va t'il trouver la chaine, puisque rien n'arrive sur stdin...
Su tu envoies les données sur un port, il va peut être falloir lire les données sur le port et ne pas espérer qu'elles vont se présenter par miracle sur stdin.
Je ne sais pas comment tu récupères tes données sur le pin C7, mais si c'est la qu'elles arrivent, tu as du boulot a faire pour les y lire.
EDIT: au vu de http://ww1.microchip.com/downloads [...] 30292c.pdf ce serait pas plutôt sur le port C (RC0...RC7) tu lis octet par octet ce qui arrive dans un registre nommé RCREG si je comprends bien la doc.
A+,
Marsh Posté le 02-03-2013 à 17:26:15
salut tout le monde,
je veux faire un programme en pic c qui compare deux chaines de caractères arrivant du pin de réception C7 (avec le pic 16F877lié a un port rs232) sachant que j'utilise le pic c compiler, et lorsque j'envoi le mot a lire il ne peut pas le lire
ceci est une partie de code que j'ai fait:
char up[10];
char down[10];
char chaine[10];
void main()
{
strcpy(up, "up" );
strcpy(down, "down" );
while(TRUE)
fgets(chaine);
if( strcmp(chaine,up) == 0 )
printf( "up" );
if( strcmp(chaine,down) == 0 )
printf("down" );
}
merci d'avance