Bienvenu(e)! Identification Créer un nouveau profil

Recherche avancée

Aide sur reception serie sur PIC18F452

Envoyé par seb73000 
Aide sur reception serie sur PIC18F452
mercredi 25 août 2010 13:39:29
Bonjour à tous,

J'essaye de recevoir une trame RS232 avec mon PIC18F452
Mais j ai un problème, dans mon code j ai une chaine de caractère nommée "chaine"
Je reçois donc ma trame RS232 dans cette chaine
si je réceptionne une chaine assez longue et ensuite une plus petite je garde les ancienne données après le caractère de fin de chaine de la deuxième réception

Exemple j envoi "ABCDEF" dans ma chaine "ABCDEF"
j envoi "SEB" j ai dans ma chaine "SEBDEF"

Je pensais initialiser ma chaine avant la réception RS232 !

En fait, la longueur de ma chaine varie selon la réception

Mais je ne sais pas comment m y prendre pour l initialisation

Si quelqu'un un à une idée ........

merci à tous
Sébastien






Modifié 1 fois. Dernière modification le 25/08/10 13:54 par seb73000.

Re: Aide sur reception serie sur PIC18F452
jeudi 26 août 2010 10:13:54
Salut,

Je suppose que tu geres le tout avec des opération sur les strings.

Dès lors si tu envoie SEB tu dois finir ta change de caractère par un indicateur de fin de chaine qui est un caractère null (\0 je pense). Sinon comme il ne trouve pas la fin de la chaine, il continue la lecture et te renvoie DEF en plus qui n'ont pas été écrase.

Dans le cas ou le caractère de fin des chaine est envoyé avec SEB. le D de DEF est écrasé par \0 et ça te renvoie uniquement SEB

A++

Benjamin
Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquez ici pour vous connecter