Go Down

Topic: Come faccio a scrivere un valore con 2 decimali dopo la virgola? (Read 627 times) previous topic - next topic

parapaolo

Problema stupido ma al momento sono in panne  :smiley-red:

Ho una variabile Val che è il risuktato di un operazione matematica e mi da valori con molti decimali es. 3.956478512 ora usando l'istruzione per scrivere sul display lcd.print(val); mi viene scritta solo l'intero.

Come faccio a dirgli di voler vedere così: 3.95

leo72

La LiquidCrystal supporta sulla print solo numeri interi o stringhe:
http://arduino.cc/en/Reference/LiquidCrystalPrint

Devi convertire quindi il tuo numero in virgola mobile in una stringa oppure spezzarlo in 2 interi (il primo per la parte intera ed il secondo per la parte decimale: basta un int(val*100) per avere i 2 decimali), separati dalla stampa del "."


astrobeed


stefa24

ciao
stavo leggendo questa discussione, in questa parte di programma non si usano stringhe, quindi i risultati che ottengo non sono corretti anche se mi sembravano attendibili

Code: [Select]
void printTemperature(DeviceAddress deviceAddress)
{
  float tempC=sensors.getTempC(deviceAddress);
  delay(500);
  if (tempC==-127.00)
  {
    Serial.print("Error getting temperature");
  }
  else
  {
   Serial.print("C: ");
  //datostringTEMP=String(int(tempC*100));
  Serial.println(tempC,3);

  lcd.setCursor(0,2);
  //lcd.print((char)223);//arduino symbol ° lcd
  lcd.write(B11011111);//arduino symbol ° lcd
    lcd.print("C");
   lcd.setCursor(3,2);
     lcd.print (tempC,3);
    } 


https://sites.google.com/site/agritronica/
https://sites.google.com/site/t3chconcrete/
https://www.youtube.com/channel/UCnY1DNrSywgadjyqqtbvyew
arduino UNO rev 3
ide 1.6.0

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy