Описание
Считывает значение с указанного аналогового контакта. Платы Arduino имеют 10-битный АЦП (аналогово-цифровой преобразователь) на 6 каналов (8 каналов у Arduino Mini и Nano, 16 - у Mega). Это означает, что напряжение поданное на аналоговый контакт (как правило 0...+5 В) будет преобразовано в значение от 0 до 1023, что соответствует 1024 шагам с разрешением 5В/1024=0.0049В=49 мВ (милливольт). Диапазон входного напряжения и разрешение могут быть изменены при помощи функции 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); // затем вывести его в порт
}
Смотрите также:
analogReference()
analogReadResolution()
Инструкция: Аналоговые контакты
Справочник
Материалы взяты с официального сайта проекта Arduino и представлены по лицензии Creative Commons Attribution-ShareAlike 3.0 License.
Источник: http://arduino.cc/en/Reference/AnalogRead |