Описание

Считывает величину напряжения с указанного аналогового вывода. В составе Ардуино есть 6-канальный (8-канальный - в Mini и Nano, 16 - в Mega) 10-битный аналогово-цифровой преобразователь, который преобразовывает входное напряжение из диапазона 0 - 5 В в целочисленные значения в пределах от 0 до 1023 соответственно. Разрешающая способность АЦП составляет: 5 В / 1024 значения или 0.0049 В (4.9 мВ) на одно значение. Входной диапазон и разрешающая способность могут меняться с помощью функции analogReference().

Для считывания значения с аналогового входа требуется около 100 микросекунд (0.0001 с), поэтому максимальная частота опроса вывода приблизительно равна 10 000 раз в секунду.

Синтаксис

?

analogRead(pin) 

Параметры

pin: номер вывода, с которого будет считываться напряжение (0 - 5 для большинства плат, 0 - 7 для Mini и Nano, 0 - 15 для Mega)

Возвращаемые значения

целое число int (от 0 до 1023)

Примечание

Если аналоговый вход ни к чему не подключен, значение, возвращаемое функцией analogRead(), будет меняться под влиянием нескольких факторов (таких, как величина напряжения на других аналоговых входах, наводок от вашей руки вблизи платы и т.д.).

Пример

?

int analogPin = 3;     // ползунок потенциометра (средний вывод) подключен к аналоговому выводу 3

                       // крайние выводы соединены с землей и +5В

int val = 0;           // переменная для хранения считанного значения

 

void setup()

{

  Serial.begin(9600);          //  настройка последовательного соединения

}

 

void loop()

{

  val = analogRead(analogPin);    // считываем напряжение с аналогового входа

  Serial.println(val);            // наблюдаем считанное значение

}