Tabla de contenido
En el mundo de los microcontroladores, la capacidad de leer valores analógicos es fundamental para interactuar con una variedad de sensores y dispositivos que envían señales continuas. Esta habilidad permite que los microcontroladores capturen datos del entorno, como la intensidad de luz, la temperatura o la posición de un potenciómetro, y los transformen en valores digitales que pueden ser procesados en aplicaciones de control y monitoreo.
Los microcontroladores, como el Arduino, tienen la capacidad de leer señales analógicas gracias a su conversor analógico a digital (ADC). Este convertidor toma un voltaje de entrada y lo transforma en un valor numérico discreto que el microcontrolador puede procesar.
El ADC de un microcontrolador convierte un voltaje de entrada analógico en un valor digital. En el caso de un Arduino UNO, el ADC tiene una resolución de 10 bits, lo que significa que puede representar el voltaje de entrada en 1024 niveles distintos (de 0 a 1023). La fórmula para calcular el voltaje de entrada basado en el valor leído es:
$$ V_{entrada} = \frac{Valor_{ADC}}{1023} \times V_{ref}
$$
Donde VrefV_{ref}Vref es la referencia de voltaje, típicamente 5V o 3.3V.
/*************************************************************************
* Lectura de un potenciómetro *
* Dispositivo: Arduino UNO *
* Lenguaje: Arduino *
* Rev: 1.0 *
* Fecha: 05/11/24 *
************************************************************************/
// Definición del pin de entrada analógica
const int potPin = A0; // Pin donde está conectado el potenciómetro
void setup() {
// Inicialización de la comunicación serial
Serial.begin(9600);
// Configuración del pin como entrada (opcional, ya que analogRead lo hace automáticamente)
pinMode(potPin, INPUT);
}
void loop() {
// Lectura del valor analógico del potenciómetro
int potValue = analogRead(potPin);
// Impresión del valor en el monitor serial
Serial.print("Valor del potenciómetro: ");
Serial.println(potValue);
// Pequeña pausa para evitar saturar el monitor serial
delay(500); // 500 ms de espera
}
/*************************************************************************
* Lectura del sensor CNY70 *
* Dispositivo: Arduino UNO *
* Sensor: CNY70 *
* Lenguaje: Arduino *
* Rev: 1.0 *
* Fecha: 05/11/24 *
************************************************************************/
// Definición del pin de entrada analógica
const int sensorPin = A0; // Pin donde está conectado el sensor CNY70
void setup() {
// Inicialización de la comunicación serial
Serial.begin(9600);
// Configuración del pin como entrada
pinMode(sensorPin, INPUT);
}
void loop() {
// Lectura del valor analógico del sensor
int sensorValue = analogRead(sensorPin);
// Impresión del valor en el monitor serial
Serial.print("Valor del sensor CNY70: ");
Serial.println(sensorValue);
// Pequeña pausa para evitar saturar el monitor serial
delay(500); // 500 ms de espera
}
📚 Tabla de contenido
🗓️ Semana 12 - 📘 Fundamentos de Controladores y Microcontroladores
Introducción a Microcontroladores
Uso de Placas de Desarrollo para Microcontroladores
Exploración de la compañía Arduino
Lenguajes de Programación para Microcontroladores
Configuración del Entorno de Desarrollo y Programación Básica
⬛ Asesoría en clase
Asesoría en Clase N.°06 - Hola Mundo con Microcontroladores
🟨 Actividad Fundamental
🗓️ Semana 13 - 📘 Programación básica de Microcontroladores
Fundamentos de Programación en Arduino
Lectura Secuencial de Instrucciones y Aplicaciones Prácticas
Implementación de Estructuras de Control Condicionales
🗓️ Semana 14 - 📘 ** Estructuras de código**
Tipos de Datos en Programación de Microcontroladores
Creación y Uso de Funciones en Microcontroladores
Comunicación Serial en Microcontroladores
Lectura de Valores Analógicos en Microcontroladores
🗓️ Semana 15 - 📘 Integración con sensores
Sensores Infrarrojos (IR) para Detección de Objetos