Conversor ADC

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

Conversor análogo-digital

ADC
Ramiro Alejandro Plazas Rosas Dr.Ing.

1
Características generales
El Arduino tiene 6 canales analógicos para leer señales
Los pines analógicos en Arduino solo
analógicas de 0 a 5 voltios. Cada canal tiene un pin analógico
pueden leer la entrada analógica. No
separado.
pueden reproducir el voltaje
El microcontrolador ATmega328P tiene un convertidor
analógico.
analógico a digital incorporado con una resolución de 10 bits.

La resolución del ADC es 2𝑁 − 1. En el caso del ADC de 10 bits,


la resolución es 2𝟏𝟎 − 1 = 1023.
El rango de voltaje del ADC varía según el voltaje de referencia.
El voltaje de referencia es el voltaje máximo que se puede
medir utilizando el ADC.

No se puede cambiar el voltaje de referencia del Arduino Uno R3, que es de 5 voltios. Por lo tanto,
el rango del ADC incorporado en el Arduino R3 (ATmega328P) es de 0 a 5V.

𝑉𝑎𝑙𝑜𝑟 𝑑𝑖𝑔𝑖𝑡𝑎𝑙 = 𝑉𝑎𝑙𝑜𝑟 𝑑𝑒 𝑒𝑛𝑡𝑟𝑎𝑑𝑎ൗ𝑉𝑜𝑙𝑡𝑎𝑗𝑒 𝑑𝑒 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎 ∗ 𝑅𝑒𝑠𝑜𝑙𝑢𝑐𝑖𝑜𝑛

2
3
Pines ADC en arduino
OPERATING MAX
BOARD USABLE PINS
VOLTAGE RESOLUTION
Uno 5 Volts A0 to A5 10 bits
Mini, Nano 5 Volts A0 to A7 10 bits
Mega,
Mega2560, 5 Volts A0 to A14 10 bits
MegaADK
Micro 5 Volts A0 to A11* 10 bits
Leonardo 5 Volts A0 to A11* 10 bits
Zero 3.3 Volts A0 to A5 12 bits**
Due 3.3 Volts A0 to A11 12 bits**
MKR Family
3.3 Volts A0 to A6 12 bits**
boards

4
Ejemplo 1
int analogPin = A3; // potentiometer wiper (middle terminal) connected to analog pin 3
// outside leads to ground and +5V
int val = 0; // variable to store the value read

void setup() {
Serial.begin(9600); // setup serial
}

void loop() {
val = analogRead(analogPin); // read the input pin
Serial.println(val); // debug value
}

5
Ejemplo 2
// Definir el pin analógico que se va a leer
int pinAnalogo = A0;

void setup() {
// Iniciar la comunicación serial
Serial.begin(9600);
}

void loop() {
// Leer el valor del pin analógico
int valorAnalogo = analogRead(pinAnalogo);

// Convertir el valor analógico a voltaje


float voltaje = valorAnalogo * (5.0 / 1023.0);

// Imprimir el valor leído en la consola serial


Serial.print("Valor Analogo: ");
Serial.print(valorAnalogo);

// Imprimir el voltaje en la consola serial


Serial.print(" - Voltaje: ");
Serial.println(voltaje);

// Esperar un segundo antes de la próxima lectura


delay(1000);
} 6
Actividad
Ajustar el valor convertido por el puerto ADC a nivel porcentual.

• Visualizar el valor convertido en el puerto serial.


• Visualizar el valor convertido en la LCD.

Subir a la plataforma de Teams.

7
Bibliografía
[1] “AnalogRead”. [En línea]. Disponible en: analogRead() - Arduino
Reference. [Consultado: 2023].

También podría gustarte