AnalogRead

Материал из MK90.ORG wiki
Перейти к: навигация, поиск

Справка Язык | Библиотеки | Сравнение | Изменения

analogRead()

Описание

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

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

Синтаксис

analogRead(pin)

Параметры

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

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

int (0 до 1023)

Замечание

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

Пример

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

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

void loop()
{
  val = analogRead(analogPin);    // читать значение из пина,
  Serial.println(val);            // затем вывести его в порт
}

Пример работает следующим образом: с аналогового пина номер 3 непрерывно считывается значение и выводится в последовательный порт.

Смотри также

Руководство по Wiring


Исправления, пожелания и новые статьи должны быть опубликованы через Форум.

Оригинальные тексты руководств и переводы распространяются Arduino и MK90 на условиях лицензии Creative Commons Attribution-ShareAlike 3.0 License. Примеры исходных кодов и ссылки являются общественным достоянием.