analogRead()
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[1] | 10 bits |
Leonardo | 5 Volts | A0 to A11[1] | 10 bits |
Zero | 3.3 Volts | A0 to A5 | 12 bits[2] |
Due | 3.3 Volts | A0 to A11 | 12 bits[2] |
MKR Family boards | 3.3 Volts | A0 to A6 | 12 bits[2] |
- [1]: A0 through A5 are labelled on the board, A6 through A11 are respectively available on pins 4, 6, 8, 9, 10, and 12
- [2]: 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).
Código de Exemplo
O código abaixo lê o valor de um pino de entrada analógica e mostra seu valor na porta serial.
Hardware Required
Additionally, some links direct to products from our own brand, DIYables .
Wiring Diagram
This image is created using Fritzing. Click to enlarge image
Arduino Code
Rotate the potentiometer and see the result on Serial Monitor
For more detailed instruction, see Arduino - Potentiometer
※ Notas e Advertências:
Se o pino de entrada analógica não estiver conectado a nada, o valor retornado por analogRead() irá flutuar baseado numa gama de fatores (ex. o valor de outros pinos analógicos, quão próxima suu mão está da placa, etc.).
Ver Também
- Linguagem : analogReference()
- Linguagem : analogWrite()
- Exemplo : Arduino - Potentiometer
- Exemplo : Arduino - Light Sensor
- Exemplo : Arduino - Water Sensor
- Linguagem : analogReadResolution()
※ ARDUINO BUY RECOMMENDATION
Arduino UNO R3 | |
Arduino Starter Kit |