Pages: [1]   Go Down
Author Topic: Petite aide pour une equation  (Read 667 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

 
Code:
Mesure1=analogRead(mesure);
  Mesure2=5/1023*Mesure1;                  //conversion en volt
  Serial.print("Mesure (en V) : ");
  Serial.print(Mesure2, DEC);

Voila mon problème vient de l'équation il retourne a chaque fois 0 je ne comprends vraiment pas
Logged

Geneva
Offline Offline
Faraday Member
**
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Essaie ! :

Code:
Mesure1=analogRead(mesure);
Mesure2=0.0048875855*Mesure1;
  Serial.print("Mesure (en V) : ");
  Serial.print(Mesure2, DEC);

« Last Edit: May 03, 2010, 12:41:23 pm by jfs » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3648
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sinon c'est surement tes types de variable qui ne sont pas bons. Par exemple si mesure1 est un integer et que la mesure réelle est égale à 0.49V, bin mesures1 = 0 ...  smiley-wink
« Last Edit: May 03, 2010, 12:53:41 pm by B@tto » Logged


0
Offline Offline
Newbie
*
Karma: 0
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ah ok sa marche  :-? je comprends toujours pas pourquoi sa ne marchai pas mais bon il y a des mystère sur ce logiciel parfois et j'ai bien mis la variable en double
« Last Edit: May 04, 2010, 01:55:27 am by freeman32 » Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

et merci smiley-razz
Logged

France
Online Online
Faraday Member
**
Karma: 39
Posts: 3560
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
j'ai bien mis la variable en double

Le problème ce n'est pas la variable c'est la constante.
5/1023 c'est un calcul avec des entiers donc ç'est évalué à 0.
5.0/1023.0 c'est un calcul avec des flottants et là ça marche
Logged

France
Offline Offline
Newbie
*
Karma: 0
Posts: 1
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

La méthode de rajouter .0 à la fin marche bien, mais.
De façon plus rigoureuse on peut retyper à la volée la variable.

Exemple:
5/1023 calcul avec des entiers
5.0/1023.0 calcul avec des flottants
(float)5/(float)1023 calcul avec des flottants

Ca fonctionne aussi avec des variables:
Code:
int a;
int b;
float c;

c=float(a)/float(b);

C'est un typage à la volée, c'est à dire que a et b restent des int après le calcul.

Logged

Pages: [1]   Go Up
Jump to: