Restituire un valore da una funzione per usarla: mi rimane zero!

Ciao a tutti,
non riesco a capire una cosa...vorrei creare una funzione che mi calcoli un valore e lo restituisca in modo da poter essere utilizzato nel void loop(), ma nel codice di esempio che ho creato mi restituisce sempre il valore zero. Come mai?
grazie!

int mediano;

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

void loop()
{
           lettura();
           Serial.print("Il valore di ritorno e' ");
           Serial.println(risultato);
           delay(2000);
}
  


int lettura(){
    int media =4;
    int risultato = 3;

    Serial.print("Il valore rilevato e' ");
    Serial.println(media);
    return risultato;
    }

Perchè apri due topic? http://forum.arduino.cc/index.php?topic=355831.0 e poi qual'è quello che dice il vero, questo o l'altro?

perchè nell’altro è un problema hardware credo e questo, che peraltro ho modificato, ho capito che il mio problema è di base sui valori di ritorno…

cmq per fortuna ho capito dove sbagliavo…
mi sono dimenticato di scrivere:

int mediano2 = lettura();
Serial.print("Il valore di ritorno e’ ");
Serial.println(mediano2);

e così funziona…grazie

Infatti mi chiedevo perché aveva una variabile int di nome mediano che non utilizzavi da nessuna parte.

hai giá provato con le parentesi?

return (risultato);