Page 1 sur 1

[M340] conversion Hexa to Float

Posté : 04 mai 2023, 21:23
par md42
Bonsoir,

Je cherche à faire une conversion de donnée dans Unity.
J'ai une valeur analogique de type Hexadécimal que je cherche à convertir en Float.
Je sais que 16#3E4CCCCD donne 0,2 en Float.
Mais comment passer de l'un à l'autre ?
Merci pour votre aide

Re: [M340] conversion Hexa to Float

Posté : 04 mai 2023, 21:49
par itasoft
Slts,
Rien compris.
Ta valeur analogique elle donne quoi en décimal, car le type REAL c’est obligatoirement une valeur décimale

Re: [M340] conversion Hexa to Float

Posté : 04 mai 2023, 22:01
par md42
en décimal c'est 1045220557;

Re: [M340] conversion Hexa to Float

Posté : 04 mai 2023, 22:05
par md42
Je viens de trouver cela sur internet maos c'est pas clair pour moi
Capture d’écran 2023-05-04 220400.png

Re: [M340] conversion Hexa to Float

Posté : 04 mai 2023, 22:06
par dpo
tu peux utiliser des fonction de conversion DWORD_TO_DINT et DINT_TO_REAL...
il y a une autre astuce
tu déclares ta variable monhexa à l'adresse %MW1000 (exemple) en type DWORD
et une autre variable monfloat à l'adresse %MW1000 en type REAL
et tu auras la conversion automatiquement
si tu renseignes monhexa en hexa alors monfloat se mettre à jour en réel
Mais tu auras sûrement un avertissement sur le chevauchement de deux variables

le tableau que tu proposes montre comment il faut interpréter les bits du dword pour trouver la valeur en réel
mais comme tu ne peux pas coder tous les réels avec 32 bits il y a une approximation

Re: [M340] conversion Hexa to Float

Posté : 04 mai 2023, 22:27
par md42
ok, j'essai demain matin.
en attendant merci à toi

Re: [M340] conversion Hexa to Float

Posté : 05 mai 2023, 00:35
par itasoft
et pourquoi tu veux la convertir en float ??