Riga codice incomprensibile (per me)

Salve,

in uno sketch trovato sul sito

https://forum.arduino.cc/index.php?topic=166298.0

una riga di codice proprio non riesco a capirla.

letturaPot = letturaPot*(5 - 0)/1023 + 0; //NB: 5 e 0 sono il max e il min che puà assumere K

Una buon'anima mi sa spiegare come interpretare il frammento letturaPot*(5 - 0) e anche 1023 + 0
Grazie

... mah, leggendo il commento, magari va letta come:

letturaPot = letturaPot*(Kmax - Kmin)/1023 + Kmin; //   con 0 <= K <= 5

Guglielmo

Direi che sia semplicemente equivalente a
letturaPot = letturaPot*5/1023;
Credo che gli zeri li abbia messi come segnaposti di valori precedentemente presenti o per possibili usi futuri.

P.s.: non è "1023+0"! Lo 0 viene aggiunto dopo la moltiplicazione e la divisione.

aggiungo... :slight_smile:

la lettura di un pin analogico di arduino ti da un valore compreso tra 0 (zero) e 1023
ora da questo numero che leggi solitamente si vuole ricavare la tensione equivalente
sapendo che la massima tensione (in questo caso) rilevata sul pin analogico è di 5V
abbiamo che 5V corrispondono al valore 1023 e 0V corrispondono al valore 0 (zero)
per cui con la formula che hai scritto si ricava il valore attuale della lettura trasformato in volt

piccola nota
essendo tutti i numeri interi (senza punto decimale) il risultato sarà anch'esso un valore intero (quindi poco preciso)

Grazie a tutti per le precisazioni.

@ Patrick_M & Datman
infatti questa è la formula consueta che conoscevo gia ma gli 0 mi hanno spiazzato...