analogRead()

Описание

Измеряет входное напряжение на аналоговом выводе. У Arduino Uno есть 6-канальный (У Mini и Nano — 8-канальный, в Arduino Mega 2560 — 16-канальный) 10-битный аналогово-цифровой преобразователь (АЦП), который преобразовывает входное напряжение из диапазона 0 — 5 В в целочисленные значения от 0 до 1024 соответственно. Не трудно посчитать, что разрешающая способность АЦП составляет 0.005 В (5 мВ) на одно значение. Входной диапазон и разрешающая способность могут меняться с помощью функции analogReference().

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

Синтаксис


analogRead(pin) 

Параметры

pin: номер вывода, с которого будет считываться напряжение (A0 — A5 для большинства плат, A0 — A7 для Mini и Nano, A0 — A15 для Mega)

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

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

Примечание

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

Пример


int analogPin = A3;     // потенциометр 10 кОм (средний вывод) подключен к аналоговому выводу A3
                       // крайние выводы соединены с землей и +5В
int val = 0;           // переменная для хранения считанного значения

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

void loop()
{
  val = analogRead(analogPin);    // считываем напряжение с аналогового входа
  Serial.println(val);            // отправляем значение в COM порт.
}

Смотрите также

Ардуино