Pages: [1]   Go Down
Author Topic: cifre dopo la virgola per una tensione  (Read 875 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
God Member
*****
Karma: 0
Posts: 689
AHHAH
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

come posso far in modo di vedere solo una cifra dopo la virgola in una lettura?

ed e' giusto usare "float" o ci sono altri modi?

io adesso leggo x,xx   vorrei sapere come fare x,x

Code:
#include <LiquidCrystal.h>
//legge analogread e converte in tensione 0 to 5v
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
float tension = 0; //serve per avere cifre dopo la virgola

void setup()
{
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("tensione su A0");
}
void loop()
{
  lcd.setCursor(0, 1);
 
  tension = analogRead(0) * 0.005 ;
 
  lcd.print(tension);                 

  delay(100);
}
Logged

0
Online Online
Shannon Member
****
Karma: 117
Posts: 10102
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

allora, se la print è implementata come in serial, fai
print(numero, 1);
dove 1 è il numero di cifre dopo la virgola.

altrimenti devi usare una sprintf, che in pratica stampa una stringa come la printf del c ma anzichè a video, in un'altra stringa.

per esempio:

float a = 10.5555555;
char stringaFinale[10];
sprintf(stringaFinale, "%f.1", a);
lcd.print(stringaFinale);

il %f.1 significa: %f indica che vuoi stampare un float, .1 che vuoi solo un carattere dopo la stringa. Dovresti fare attenzione che le cifre del float non siano maggiori della grandezza della stringa, altrimenti hai un overflow!
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
God Member
*****
Karma: 0
Posts: 689
AHHAH
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

grazie, funziona!

lcd.print(tension0, 1);

mostra solo la prima cifra dopo la virgola smiley
Logged

Pages: [1]   Go Up
Jump to: