El Arduino
El Arduino
El Arduino
1. ATmega328P: El Arduino Uno Rev3 utiliza un microcontrolador ATmega328P, que es el cerebro principal
del dispositivo.
2. atmega16u2: Es un microcontrolador que se encarga de programar y comunicar a la computadora con el
Arduino a través de un convertidor de protocolo serial-TLL a USB de baja velocidad
3. Cristal Oscilador:
Función: El oscilador de cristal es un componente que proporciona una referencia de tiempo precisa al
microcontrolador (ATmega328P en el caso del Arduino Uno Rev3). Este oscilador mantiene una frecuencia de
oscilación constante (generalmente 16 MHz en el Arduino Uno) que el microcontrolador utiliza para medir el
tiempo y ejecutar instrucciones a una velocidad predecible.
Importancia: Un oscilador preciso es fundamental para que el microcontrolador pueda realizar tareas
temporales, como generar pulsos, medir intervalos de tiempo o mantener un tiempo estable en un programa.
Sin un oscilador de cristal, el microcontrolador no podría funcionar de manera confiable ni mantener la
sincronización con el tiempo.
1. Puerto USB: El puerto USB en el Arduino Uno Rev3 cumple dos funciones principales: a. Programación:
El puerto USB permite cargar programas (firmware) en el microcontrolador desde una computadora. Esto
es esencial para desarrollar y cargar software personalizado en el Arduino. b. Comunicación Serial: El
puerto USB también se utiliza para la comunicación serial entre el Arduino y la computadora. Esto
permite enviar datos desde el Arduino a la computadora (por ejemplo, lecturas de sensores) y recibir
datos desde la computadora al Arduino (por ejemplo, comandos de control).
Importancia: El puerto USB simplifica la programación y la interacción con el Arduino, ya que permite una
conexión fácil y rápida con una computadora. Además, facilitar la depuración y el monitoreo de datos durante
el desarrollo de proyectos.
1. Fuente de alimentación: La forma más común de alimentar un Arduino Uno es a través del puerto USB.
Simplemente conecta el Arduino a tu computadora mediante un cable USB. El Arduino obtendrá la
energía necesaria de la computadora. Esta es la forma más sencilla y conveniente de alimentar un
Arduino para el desarrollo y la programación.
2. Pines de Voltaje: sirven para proporcionar la alimentación eléctrica necesaria a los componentes y
dispositivos que se conectan al Arduino, así como al propio Arduino. Cada uno de estos pines de voltaje
tiene un propósito específico:
Pin 5V (5 voltios): Este pin proporciona una fuente de alimentación regulada de 5 voltios. Se utiliza
especialmente para alimentar componentes y sensores que requieren una tensión de 5V para funcionar de
manera adecuada. También puedes utilizarlo para alimentar pequeños módulos y pantallas que funcionan a
5V.
Pin 3.3V (3.3 voltios): El pin 3.3V proporciona una fuente de alimentación regulada de 3.3 voltios. Es útil
cuando necesita alimentar componentes y sensores que funcionen a una tensión más baja de 3.3V. Algunos
dispositivos inalámbricos y sensores de bajo consumo utilizan 3.3V como su fuente de alimentación.
Pin Vin (Voltage In): El pin Vin (o el Raw, que es equivalente) permite que el Arduino sea alimentado con una
tensión externa, generalmente en el rango de 7V a 12V. Esta tensión se utiliza cuando se alimenta el Arduino
a través de un adaptador de corriente externo o una batería. El regulador de voltaje a bordo reduce esta
tensión a 5V para alimentar los componentes internos del Arduino.
Pin Raw: Este pin también permite alimentar el Arduino con una tensión externa, pero no pasa por el
regulador de voltaje interno. En cambio, se conecta directamente a la fuente de alimentación proporcionada.
Es importante asegurarse de proporcionar una tensión dentro del rango seguro para evitar dañar el Arduino.
1. Entradas Analógicas: Los pines analógicos se utilizan para leer valores de tensión analógicos en un
rango de 0 a 5V. Son especialmente útiles para conectar sensores analógicos, como sensores de luz.
2. Entradas y salidas digitales
Entradas digitales: Los pines digitales pueden usarse como entradas digitales para leer niveles de voltaje, que
son interpretados como valores lógicos 0 (0V) o 1 (5V). Puedes conectar interruptores, botones, sensores de
proximidad, detectores de movimiento, etc., a estos pinos para detectar eventos o condiciones.
Salidas Digitales : Los pinos digitales también pueden configurarse como salidas digitales. Puedes enviar
señales de voltaje (0V o 5V) desde estos pines para controlar LEDs, relés, motores y otros dispositivos. Al
cambiar el estado del pin digital, puedes encender o apagar componentes externos.
1. Comunicación Serial: Algunos de los pinos digitales (D0 y D1) se utilizan para la comunicación serial
UART (Universal Asynchronous Receiver/Transmitter). Estos pinos permiten la comunicación
bidireccional con otros dispositivos, como otros Arduinos, módulos GPS o módems GSM, a través del
protocolo serial.
2. KSP (programación en circuito serie): esta interfaz permite programar directamente el Atmega328P
utilizando un programador externo útil para la programación básica.
3. LED de Alimentación: Indica que el Arduino está recibiendo energía.
4. LED de Estado (L): Puede ser controlado programáticamente para mostrar diferentes estados.
5. Botón de Reinicio: Permite reiniciar el programa en el microcontrolador.
// Define el número de pin al que está conectado el LED: Este comentario describe que estamos
definiendo la variable ledPin, que almacenará el número del pin al que está conectado el LED que
queremos controlar. En este caso, se establece en 8.
const int ledPin = 8;: Aquí se declara una constante entera llamada ledPiny se le asigna el valor 8. Este
es el pin al que se conecta el LED.
void setup() {...}: Este comentario explica que estamos ingresando al bloque setup(), que se ejecuta una
vez al inicio del programa. Es el lugar donde se configuran las inicializaciones necesarias.
pinMode(ledPin, OUTPUT);: Esta línea configura el pin definido en ledPincomo una salida, lo que
significa que se utilizará para enviar señales al LED y controlar su estado.
void loop() {...}: Indica que estamos ingresando al bloque loop(), que es un bucle infinito que se ejecuta
continuamente después de que setup()haya completado su ejecución.
digitalWrite(ledPin, HIGH);: Esta línea enciende el LED al establecer el pin ledPinen estado HIGH
(alto), lo que significa que se aplica tensión al pin y el LED se enciende.
delay(1000);: Aquí se introduce un retraso de 1000 milisegundos (1 segundo) usando la función delay().
Esto mantiene el LED encendido durante un segundo antes de continuar.
digitalWrite(ledPin, LOW);: Esta línea apaga el LED al establecer el pin ledPinen estado LOW (bajo), lo
que significa que se corta la tensión y el LED se apaga.
delay(1000);: Otra vez, se introduce un retraso de 1000 milisegundos para mantener el LED apagado
durante un segundo antes de que el programa regrese al principio del bucle loop().
En resumen, el esquema "Blink" de Arduino controla el parpadeo de un LED en el pin 13, alternando
entre encendido y apagado cada segundo. Este código sigue la estructura común de Arduino, con las
funciones setup() y loop(). Durante las prácticas de laboratorio, se experimentó ajustando el tiempo
de espera para modificar la velocidad de parpadeo del LED. Al reducir este tiempo, el parpadeo se
vuelve más rápido, y al disminuirlo aún más, el parpadeo llega a ser casi imperceptible para el ojo
humano.