AnalogRead в Arduino: руководство для начинающих по чтению аналоговых входов

Если вы энтузиаст Arduino или новичок, изучающий мир микроконтроллеров, вы, вероятно, встречали термин «AnalogRead». В этой статье блога мы углубимся в концепцию AnalogRead в Arduino и рассмотрим различные методы чтения аналоговых входов. Независимо от того, являетесь ли вы любителем, любителем DIY или студентом, это руководство поможет вам понять и эффективно использовать AnalogRead. Итак, начнем!

Понимание AnalogRead:
AnalogRead — это фундаментальная функция Arduino, которая позволяет считывать значения аналогового напряжения с датчиков, потенциометров или любых других аналоговых устройств, подключенных к вашей плате Arduino. Преобразовав аналоговое напряжение в цифровое значение, вы можете обрабатывать и использовать данные в своих эскизах Arduino.

Метод 1: использование AnalogRead с одним аналоговым выводом:
Самый простой способ использования AnalogRead — с одним аналоговым выводом. Вот пример фрагмента кода, который поможет вам начать:

int analogPin = A0;  // Define the analog input pin
int analogValue;     // Variable to store the analog value
void setup() {
  Serial.begin(9600);  // Initialize serial communication
}
void loop() {
  analogValue = analogRead(analogPin);  // Read the analog value
  Serial.println(analogValue);          // Print the value to the serial monitor
  delay(1000);                          // Wait for a second
}

Метод 2: чтение нескольких аналоговых выводов:
Иногда вам может потребоваться одновременное считывание значений с нескольких аналоговых выводов. Вот пример фрагмента кода:

int analogPin1 = A0;  // Define analog input pin 1
int analogPin2 = A1;  // Define analog input pin 2
int analogValue1;     // Variable to store analog value 1
int analogValue2;     // Variable to store analog value 2
void setup() {
  Serial.begin(9600);  // Initialize serial communication
}
void loop() {
  analogValue1 = analogRead(analogPin1);  // Read analog value 1
  analogValue2 = analogRead(analogPin2);  // Read analog value 2
  Serial.print("Analog Pin 1: ");
  Serial.println(analogValue1);           // Print value 1 to the serial monitor
  Serial.print("Analog Pin 2: ");
  Serial.println(analogValue2);           // Print value 2 to the serial monitor
  delay(1000);                            // Wait for a second
}

Метод 3: повышение точности с помощью аналогового опорного сигнала:
По умолчанию опорным напряжением для AnalogRead является напряжение, обеспечиваемое платой Arduino (обычно 5 В). Однако вы можете повысить точность и точность AnalogRead, используя внешнее опорное напряжение. Вот пример фрагмента кода:

int analogPin = A0;           // Define the analog input pin
int analogValue;              // Variable to store the analog value
float externalReference = 3.3; // External reference voltage (in volts)
void setup() {
  analogReference(EXTERNAL);  // Set the reference voltage to external
  Serial.begin(9600);         // Initialize serial communication
}
void loop() {
  analogValue = analogRead(analogPin);  // Read the analog value
  float voltage = (analogValue * externalReference) / 1023.0;
  Serial.print("Analog Value: ");
  Serial.print(analogValue);
  Serial.print(", Voltage: ");
  Serial.print(voltage, 2);              // Print voltage with 2 decimal places
  Serial.println("V");
  delay(1000);                           // Wait for a second
}

AnalogRead — это важная функция Arduino, которая позволяет вам считывать аналоговые входные данные и интегрировать их в свои проекты. В этой статье мы рассмотрели различные методы использования AnalogRead, включая чтение с одного аналогового вывода, чтение с нескольких выводов и повышение точности с помощью внешнего опорного напряжения. Экспериментируя с этими методами, вы сможете раскрыть весь потенциал вашей платы Arduino и создавать захватывающие проекты!