Pas de problème.![]()
Attention, il faut caster en double à cause des dépassements de capacité pour la multiplication des entiers non signés.
Pas de problème.![]()
Attention, il faut caster en double à cause des dépassements de capacité pour la multiplication des entiers non signés.
"La haine seule fait des choix" - Koan Zen
"Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
"Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
Faites du Prolog, ça vous changera les idées !
Ma page Prolog
Mes codes sources commentés
Mon avatar : La Madeleine à la veilleuse de Georges de La Tour
Bonjour,
Je prends le sujet en cours de route et j'ai balayé assez rapidement les autres post donc désolé si je fait des "redites".
Mais en gros, tu as d'un coté 32 bits qui sont le résultats de traitements et qui vont correspondre à un niveau de tension. Ces 32 bits sont un entier non signé.
Ce niveau de tension est généré par un CNA qui prend en entrée 12 bits.
Donc la valeur en entrée qui génèrera la tension la plus proche de la valeur désirée correspond aux 12 bits de poids forts (ce raisonnement ne sera plus bon pour le cas de float).
En gros :
Alors le décalage à droite de 20 bits (j'espère que ça existe dans ton pseudo C) fera parfaitement l'affaire : c'est rapide, et tu ne pourras pas faire mieux au niveau qualité de conversion.
On va dire que je chipote, mais on perd moins d'information avec ma règle de trois qu'avec le décalage de 20, mais c'est plus long en temps de calcul c'est sûr.
Je viens de faire le test avec val = 0xF4037B56 :
avec mon calcul => 79F
avec le décalage => 740
La différence n'est pas négligeable il me semble.
[edit]
Je corrige mon post précédent, en me réveillant un peu , le décalage de 20 ou mon calcul (avec FFF sur 12 bits et non 7FF qui n'en prend que 11) donne presque exactement le même résultat.
[/edit]
"La haine seule fait des choix" - Koan Zen
"Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
"Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
Faites du Prolog, ça vous changera les idées !
Ma page Prolog
Mes codes sources commentés
Mon avatar : La Madeleine à la veilleuse de Georges de La Tour
effectivement. J'avais pas tout lu.![]()
Je pense qu'en plus d'être plus précise, cette méthode est tout simplement exacte. Le décalage ne donnant qu'un ordre de grandeur.
Tu chipote!Envoyé par Trap D
Mais le but est bien de perdre le moins de donnée possible même au détriment du temps de calcul.
Tout à fait et ta méthode, Trap D, répond tout à fait à ce que je voulais. Je n'ai pas de problème de temps de calcul dans cette application.Envoyé par gege2061
Merci pour votre aide !
Bouton résolu stp![]()
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
N'oubliez pas de consulter les FAQ Linux et les cours et tutoriels Linux
Bouton résolu stp
j'ai mis ça dans le sujet de mon message ( [résolu]) ... Mais il y a un bouton spécifique ?
==> j'ai trouvé !
Partager