Liaison RS232 entre un pic 18f26k22 et un pc
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Liaison RS232 entre un pic 18f26k22 et un pc



  1. #1
    jojo150393

    Post Liaison RS232 entre un pic 18f26k22 et un pc


    ------

    Bonjour à tous !
    Alors voila mon problème que je n'arrive pas à résoudre ni à trouver sur internet.
    J'ai configuré ma liaison RS232 et cela marche très bien.
    Sauf que je n'arrive pas à faire deux choses:
    - réceptionner une chaîne de caractère du coté du pic
    - réceptionner un entier du coté du pic

    Pour l'instant je suis arrivé à :
    - envoyer un caractère et une chaîne vers le pc
    - envoyer un entier
    - réceptionner un caractère du coté du pic

    Pour l'instant je n'utilise pas encore les IT sur le rs232 pour simplifier le code.

    Après plusieurs essaies sur la réception d'une chaîne de caractère, j'en est conclu qu'il fallait utiliser l'allocation dynamique. Vrai ou pas ?

    Voila, j'espère que vous allez combler mon ignorance et merci d'avance !

    -----

  2. #2
    jojo150393

    Re : Liaison RS232 entre un pic 18f26k22 et un pc

    Bon pour la conversion chiffre écrit en ascii vers un entier, c'est très simple puisqu'il suffit de faire un modulo 48 sur le code ascii. Par contre pour lire un nombre c'est plus complexe et je comprend pas comment récupérer plusieurs caractère. En effet moi je stockais tous ce que je recevais dans un tableau jusqu'à ce que je trouve le caractère de fin de trame mais ça ne marche pas.

  3. #3
    vincent66

    Re : Liaison RS232 entre un pic 18f26k22 et un pc

    Bonsoir,
    Pour la réception d'une chaîne de caractères il est impératif d'avoir validation de caractère reçu, par polling ou irq, pour chacun des caractères... si vous faites comme ça s'est déjà vu une lecture par boucle et un remplissage de votre tableau une foi la réception du 1er caractère détectée vous aurez un beau tableau saturé de n'importe quoi ...
    Vincent
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  4. #4
    paulfjujo

    Re : Liaison RS232 entre un pic 18f26k22 et un pc

    bonjour,


    Citation Envoyé par jojo150393 Voir le message
    Bonjour à tous !
    ......Pour l'instant je n'utilise pas encore les IT sur le rs232 pour simplifier le code.
    ..... j'en est conclu qu'il fallait utiliser l'allocation dynamique. Vrai ou pas ?
    Il n'y a pas d'allocaton dynamique en C18 , comme en C ( malloc() et compagnie)
    par contre il faut faire attention au limites de bank
    voir le fichier *.lkr
    et eventuellement le modifier pour declarer une zone superieure à 256 bytes
    pour y loger un buffer de reception .

    La gestion de l'interruption UART est quasi indispensable pour recuperer un flux continu de données arrivant sur
    la reception UART.
    ainsi que le traitement des erreurs sous peine de se retrouver bloqué en reception (plus de reception possible);
    Un index , situé dans l'interrupt permet de remplir le buffer , jusqu'à ce qu'une condition predefinie
    stoppe ce remplissage et arme un drapeau pour signaler au main programme,
    d'en faire la gestion .
    Il n'y a alors qu'à tester ce flag de temps en temps ,sans se precoocuper de chaque caractere..

    Il y a d'autre mode de gestion de buffer plus sophistiqué tel qu'un buffer circulaire
    avec 2 index ...

    Par contre si on attend des caracteres ,un par un, en provenance par ex d'un clavier
    le mode pooling peut etre suffisant , si le main n'est pas trop occupé.

  5. A voir en vidéo sur Futura
  6. #5
    jojo150393

    Re : Liaison RS232 entre un pic 18f26k22 et un pc

    Merci pour vos réponses! au final je m'en sort pas trop mal en attendant chaque caractère ça marche plutôt bien. J'ai juste quelques bug au début du genre je reçoit 2 fois la valeur que j'ai envoyé mais au bout de 2 ou 3 envois ça se stabilise. Le main n'est pas vraiment occupé puisque j'utilise la liaison pour faire des commandes et configurer ma carte. Par contre vous m'avez mis sur la piste sur ce problème de taille du tableau que je ne comprenais pas donc merci bien.

    Je vais étudier toutes ces méthodes et voir si j'y arrive seul. Il est possible que je refasse appel à votre aide si je galère.

    Merci encore.

Discussions similaires

  1. liaison pic 16fxx avec pc via rs232
    Par invitef4bf19a5 dans le forum Électronique
    Réponses: 13
    Dernier message: 11/11/2010, 14h43
  2. liaison entre RS232 et un reseau ethernet !
    Par invite5aedfed3 dans le forum Électronique
    Réponses: 17
    Dernier message: 19/02/2010, 16h28
  3. protocole pic 16f877a et pc (liaison rs232)
    Par invited776d929 dans le forum Électronique
    Réponses: 1
    Dernier message: 19/03/2009, 08h20
  4. probléme de liaison entre pic et rs232
    Par invite8eaf98b9 dans le forum Électronique
    Réponses: 2
    Dernier message: 14/11/2006, 19h43
  5. liaison RS232 entre ecrant et automate
    Par invite3c44ee0b dans le forum Électronique
    Réponses: 4
    Dernier message: 22/07/2006, 18h12
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...