A0 lettura 300mv con circuito aperto!

Buongiorno a tutti, è la prima volta che prendo in mano Arduino, ho comprato un Arduino Leonardo e ho provato a caricare il seguente programma:

int sensorValue = 0;        // value read from the pot
int outputValue = 0;        // value output to the PWM (analog out)

void setup() {
  Serial.begin(9600); 
}

void loop() {
  sensorValue = analogRead(A1);            

  Serial.print("sensor = " );                       
  Serial.println(sensorValue);      
  delay(500);                     
}

ma, con mia grande sorpresa (ovviamente non ho collegato nulla alla porta A0) mi legge valori che variano da 340mv a 380mv
Avete una spiegazione?
Grazie a tutti in anticipo
PS ho provato anche su A! ma la cosa è la stessa

La risposta è in questa tua frase ...

cecione:
... ovviamente non ho collegato nulla alla porta

... un pin ad alta impedenza, lasciato flottante senza nulla collegato ... sente pure se gli respiri vicino XD XD XD

Guglielmo

Tranquillo, in parole povere stai semplicemente leggendo le fluttuazioni del pin.
Se lasciato libero, come ti ha detto Guglielmo, diventa un'antenna e raccoglie tutti i disturbi. Prova avvicinando ed allontanando la mano, oppure toccando l'Arduino sotto, dove c'è la saldatura del pin, e guarda come varia la lettura :wink:

OK, grazie!
effettivamente è logico... avrei potuto pensarci! certo che non si tratta di pochi mv!
Grazie a tutti e due!

Un entrata flotante puó leggere anche parecchi Volt. Un pin digitale puó legggere tranquillamente per emsi LOW e poi sempre HIGH.
Ciao Uwe.