[C/PIC + RS485] - Envoi de variable - Conversion
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

[C/PIC + RS485] - Envoi de variable - Conversion



  1. #1
    invite3c35244f

    [C/PIC + RS485] - Envoi de variable - Conversion


    ------

    Bonjour,

    voila, j'ai un programme qui fonctionne sur mon système, et je communique avec mon PC via une liaison RS485 - protocole Modbus.
    J'arrive a afficher ce que je souhaite: variables de type float,...
    Mais à l'avenir, je communiquerai avec un autre système, et on me demande de coder mes variables de type float en BCD sous la forme +/- XXX,X où le MSB correspond au signe de la valeur....

    Et je ne vois pas comment faire, pourriez vous m'éclairer?

    Merci d'avance

    -----

  2. #2
    invite3c35244f

    Re : [C/PIC + RS485] - Envoi de variable - Conversion

    Prenons un exemple , si j'ai une variable qui vaut -251,8.

    si je souhaite la codé en BCD, est ce que le résultat sera ça:

    1 0010 0101 0001 1000

    Est ce cela?? et que faire du point ??

    Merci d'avance

  3. #3
    invitee05a3fcc

    Re : [C/PIC + RS485] - Envoi de variable - Conversion

    En ASCII BCD cela ferait
    0x2D 0x32 0x35 0x31 0x2E 0x38

    PS :
    0x2D représente l'octet 00101101
    0x32 représente l'octet 00110010
    etc etc

  4. #4
    Seb.26

    Re : [C/PIC + RS485] - Envoi de variable - Conversion

    Citation Envoyé par jorg1n Voir le message
    Prenons un exemple , si j'ai une variable qui vaut -251,8.
    si je souhaite la codé en BCD, est ce que le résultat sera ça:
    1 0010 0101 0001 1000
    Est ce cela?? et que faire du point ??
    Merci d'avance
    Tu n'as pas assez d'infos pour le moment (en tout cas nous, non) ... BCD décris le format des quartets, donc oui ta traduction est bonne, mais en effet que faire de la virgule ?! ...

    Un moyen simple est de passer en virgule fixe, donc les 'n' derniers chiffres sont la partie décimale de ta valeur, quelques exemples avec 2 chiffres en virgule fixe :

    100 = 1.00
    1548 = 15.48
    0 = 0.00
    6 = 0.06
    ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  5. A voir en vidéo sur Futura

Discussions similaires

  1. pic 16F887 envoi de trames
    Par inviteeb30535d dans le forum Électronique
    Réponses: 2
    Dernier message: 18/12/2009, 14h26
  2. envoi messages MIDI avec un pic
    Par invite8699d527 dans le forum Électronique
    Réponses: 4
    Dernier message: 27/10/2009, 23h21
  3. Comment relier 2 carte pic avec liaison RS485
    Par invite902e4945 dans le forum Électronique
    Réponses: 15
    Dernier message: 21/03/2009, 14h12
  4. conversion USB RS485 à TUSB3410
    Par inviteb679aa6a dans le forum Électronique
    Réponses: 3
    Dernier message: 28/12/2008, 17h10
  5. Conversion de type de variable en C++
    Par invite588da7a7 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 03/07/2004, 16h13
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...