Les entrades analògiques permeten llegir la tensió elèctrica que hi ha connectada a l'entrada. Les tensions poden anar, en principi, de 0 a 3,3 V i se'ls assignen uns valors entre 0 (corresponent a 0 V) i 1023 (corresponent, en principi, a 3,3 V).
Per llegir les entrades analògiques fem servir la funció analogRead que té com a paràmetre el número d'entrada i dóna la lectura com a resultat.
En el següent tros de programa, la variable lectura contindrà el valor llegit a l'entrada analògica A3.
int lectura;
... lectura = analogRead(A3); ...
La placa Arduino MKR WIFI 1010 té un conversor d'analògic a digital que pot treballar amb 8, 10 o 12 bits. Per defecte treballarà a 10 bits però podem canviar la resolució amb la instrucció analogReadResolution. La següent taula ens dona els rangs de valors per a cada cas.
| Resolució (bits) | Rang |
| 8 | 0 a 255 |
| 10 | 0 a 1023 |
| 12 | 0 a 4095 |
int lectura;
... analogReadResolution(12); lectura = analogRead(A3); ...
Si posem altres valors obtindrem unes lectures amb el rang que aparentment correspon a la resolució escollida però que realment no tenen aquesta resolució. Per exemple, si posem 16 obtindrem la lectura corresponent a la resolució de 12 però multiplicada per 16; és a dir un rang entre 0 i 65520 però en el que els valors van saltant de 16 en 16.
Atenció: Tingueu present que en molts casos les entrades binàries i analògiques corresponents a la mateixa pota no tenen el mateix número. Convé mirar la descripció de la placa per veure com es diu cada una.
En aquest web, les fotografies marcades amb [AF] són del web d'Adafruit, les marcades amb [SF] del web d'Sparkfun i les marcades amb [AU] del web d'Arduino.

Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.