Descrição
Lê o valor de um pino analógico especificado. A placa Arduino possui um conversor analógico-digital 10 bts de 6 canais (8 canais nos Mini e Nano, 16 no Mega, 7 canais em placas MKR). Isso significa que este irá mapear tensões entre 0 e a tensão operacional (5V or 3.3V) para valores inteiros entre 0 e 1023. No Arduino UNO, por exemplo, isso permite uma resolução entre leituras de: 5 volts / 1024 unidades, ou .0049 volts (4.9 mV) por unidade. Veja a tabela abaixo para os pinos utilizáveis, tensão de operação e resolução máxima para algumas placas Arduino.
O intervalo de entrada pode ser mudado atrvés da função analogReference(), enquanto a resolução pode ser mudada (apenas nas placas Zero, Due e MKR) usando-se analogReadResolution().
Em placas baseadas em microcontroladores AVR (UNO, Nano, Mini, Mega), ler um valor analógico leva em torno de 100 microssegundos (0.0001 s), então a taxa de leitura máxima é aproximadamente 10,000 leituras por segundo.
Board | Operating voltage | Usable pins | Max resolution |
---|---|---|---|
Uno |
5 Volts |
A0 to A5 |
10 bits |
Mini, Nano |
5 Volts |
A0 to A7 |
10 bits |
Mega, Mega2560, MegaADK |
5 Volts |
A0 to A14 |
10 bits |
Micro |
5 Volts |
A0 to A11* |
10 bits |
Leonardo |
5 Volts |
A0 to A11* |
10 bits |
Zero |
3.3 Volts |
A0 to A5 |
12 bits** |
Due |
3.3 Volts |
A0 to A11 |
12 bits** |
MKR Family boards |
3.3 Volts |
A0 to A6 |
12 bits** |
*A0 through A5 are labelled on the board, A6 through A11 are respectively available on pins 4, 6, 8, 9, 10, and 12
**The default analogRead() resolution for these boards is 10 bits, for compatibility. You need to use analogReadResolution() to change it to 12 bits.
Sintaxe
analogRead(pino)
Parâmetros
pino
: o nome do pino de entrada analógica que se quer ler (A0 a A5 na maioria das placas, A0 a A6 em placas MKR, A0 a A7 no Mini e Nano, A0 a A15 no Mega).
Retorna
A leitura analógica no pino (int). No entanto esta é limitada a resolução do conversor analógico digital (0-1023 para 10 bits ou 0-4095 para 12 bits).