Récupération d'une trame de 39bits
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

Récupération d'une trame de 39bits



  1. #1
    invite556b3e30

    Récupération d'une trame de 39bits


    ------

    Bonjour,

    Je souhaite récuperer une trame de 39bits sur une liaison RS232,
    J'ai commencer par essayer de récuperer le début avec la fonction getc() : super j'ai les 8premiers bits!

    Mais impossible de récuperer le reste. Je cherche donc à créer ma propre fonction getc() qui permetrai de recuperer autant de bits que l'on souhaite ( si c'est possible).

    Après de longues recherches sur le net impossible de trouver le code de base de la fonction getc() ni même dans la librairie de mon compilateur.

    Si quelqu'un a une idée d'où peut se trouver ce fichier ou une autre solution afin de lire cette tramme?

    Merci Nessy697

    -----

  2. #2
    paulfjujo

    Re : Récupération d'une trame de 39bits

    bonjour,


    Quel materiel PC ou µcontroleur ?
    quel compilateur C ?
    trame de 39 bits utiles ?
    de mon temps, on ne coupait pas les octets en bits dans une transmission RS232
    ..donc au moins 5 bytes ?
    trame en ascii ou en binaire ?
    existe -t-il un delimiteur dans cette trame ? EOF, CR,LF ..etc..

  3. #3
    DAUDET78

    Re : Récupération d'une trame de 39bits

    On ne récupère pas 39 bits sur une liaison RS232 ..... mais des octets et chaque octet correspond à un bloc de 9 , 10 , 11 ou 12 bits suivant la programmation de la parité et le nombre de stop .
    J'aime pas le Grec

  4. #4
    invite556b3e30

    Re : Récupération d'une trame de 39bits

    Merci de vos réponse si rapide et excusez moi, c'est vrai que l'exposé de mon problème était un peu flou...

    Alors je suis sur un µC pic18f4550 avec le compilateur CCS

    La trame se compose de 4 octets chacun avec une bit de fin et un flag qui est a 0 si il y a un autre octet ensuite. Donc un octet = 10bits transmit

    Je me suis dit puisque le fonction Getc me permettait d'obtenir les 8 premiers bit pourquoi pas les autres ? mais apparemment c'est impossible ?

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

    Re : Récupération d'une trame de 39bits

    Je crois (sans en être certain mais ça serait étonnant du contraire) que l'USART des PIC est tout à fait capable de recuperer des octets de 10 bits.
    Il va juste falloir manipuler les registres directement et jouer avec les interruptions, comme on le ferrait en assembleur tout simplement.
    Tout projet flou conduit à une connerie précise !

  7. #6
    invite556b3e30

    Re : Récupération d'une trame de 39bits

    J'ai lu dans le manuel CCS que l'on pouvait récupérer des LONG _DATA (la fonction GetC retourne un int16 au lieu d'un int8) je vais essayer demain et je vous tient au courant.
    Sinon je pensait créer ma propre fonction get mais je n'ai rien trouver à ce sujet qui pourrait m'aider.

  8. #7
    Forhorse

    Re : Récupération d'une trame de 39bits

    Pour creer ta propre fonction get voir ce que j'ai écris ci-dessus : c'est à dire lecture direct des registres du PIC => lecture de la datasheet du PIC
    Tout projet flou conduit à une connerie précise !

  9. #8
    paulfjujo

    Re : Récupération d'une trame de 39bits

    bonsoir,

    Citation Envoyé par Nessy697 Voir le message
    Je me suis dit puisque le fonction Getc me permettait d'obtenir les 8 premiers bit pourquoi pas les autres ? mais apparemment c'est impossible ?
    J'ai l'impression que tiu voudrais recuperer les 10 bits ?
    le getc ne recupere pas les 8 premiers, puisque le 1er bit est un bit de start
    si le format et speed,8,N,1
    tu retrouve dans le getc les bits N°2 à N°9
    tu ne verra pas , ni le stop , ni la parite eventuelle

    et un octet fera toujours 8 bits de long !

    si tu veux analyser vraiment ta trame de 39 bits, il faut passer par une entree du PIC et non par l'UART
    ex: RB0 du pIC qui pourra generer une interruption au premier front de ta trame
    et ensuite tu recuperes chaque bit ( donc tes 39 bits) en fonction d'un delai interbit à connaitre à l'avance:
    qui sera lié à la vitesse de transmission et au format transmis
    ex: 9600,8,N,1 format 10bits => 104µS par bit
    encore faut-il que tes 39 bits soient transmis en contigu , sans espace inter caractere.

    tu as mal posé ta question
    ou j'ai rien compris à ton probleme !

Discussions similaires

  1. envoi d'une trame sous rs232
    Par azerty2010 dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 23/03/2011, 10h21
  2. Analyse d'une trame I²C
    Par guicara dans le forum Électronique
    Réponses: 1
    Dernier message: 05/06/2010, 18h38
  3. [PIC] Capture d'une trame série
    Par lcoulon dans le forum Électronique
    Réponses: 7
    Dernier message: 09/01/2010, 16h15
  4. analyse d'une trame ARP et ICMP
    Par KHEOPS1982 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 12/05/2007, 22h00
  5. Trame d'une télécommande Grundig
    Par Antoine dans le forum Électronique
    Réponses: 2
    Dernier message: 29/07/2003, 23h14
Découvrez nos comparatifs produits sur l'informatique et les technologies.