Tabla de contenido
La declaración de puertos de salida es una parte fundamental en la programación de microcontroladores. Los puertos de salida permiten controlar dispositivos externos (actuadores) al microcontrolador, tales como luces, motores, bobinas, entre otros. En esta sección se describirá cómo se realiza la declaración de puertos de salida en un microcontrolador y cómo utilizarlos en la programación de proyectos.
La declaración de puertos de salida en los microcontroladores es una parte fundamental dentro de la programación de estos dispositivos. Los puertos de salida son los encargados de controlar dispositivos externos, como actuadores, luces, motores, bobinas, entre otros, permitiendo que el microcontrolador interactúe con el mundo físico.
A través de ellos, se pueden enviar señales eléctricas a los dispositivos externos para controlar su funcionamiento. La declaración de puertos de salida se realiza utilizando los pines físicos del microcontrolador, los cuales se identifican por su nombre, número y función.
Es importante conocer la función y características de cada pin físico del microcontrolador para poder declarar los puertos de salida de manera adecuada. Algunos pines físicos tienen funciones especiales, como los pines del puerto USB, los pines del convertidor analógico, los pines de los módulos de comunicación, entre otros.
🔴 Numero de pin físico
🟣 Nombre del pin
🟢 Característica o función especial en ese pin
Pin - out atmega328p
VCC → nivel de tensión “5V” para la alimentación
GND → nivel de tensión “0V” o tierra para la alimentación
AREF → referencia analógica
AVCC → nivel de tensión para el Voltaje analógico “5V”
USART (RXD, TXD)
SPI (SCK, MISO, MOSI, SS)
I2C (SCL,SDA)
ADC0 .. ADC5
PB0..PB7 → Pines del PUERTO B
PC0..PC6 → Pines del PUERTO C
PD0..PD7 → Pines del PUERTO D
RESET → PC6
XTAL1 → PB6
XTAL2 → PB7
<aside> ℹ️ Leer AppNote EMC Desing Consideration para ver la configuración del pin de RESET y el valor del capacitor de desacoplo para el atmega328p empaquetado DIP
Atmel-1619-EMC-Design-Considerations_ApplicationNote_AVR040.pdf
</aside>
Los registros son elementos de almacenamiento interno de los microcontroladores que se utilizan para realizar operaciones aritméticas y lógicas, controlar el funcionamiento de los periféricos y gestionar la comunicación con dispositivos externos. Los microcontroladores tienen diferentes tipos de registros, como registros de propósito general, registros de estado, registros de control y registros de periféricos. Estos registros se pueden leer y escribir mediante instrucciones de programa específicas y se utilizan para realizar operaciones de bajo nivel.
Los registros de control de un MCU contienen bits de control para activar o desactivar funciones generales
Los registros generales más utilizados en la familia AVR son los siguientes:
DDRX → data direction register (port x) → Elige si es una entrada o salida (Escritura) → I / O !
PORTX → port (x) output data registrer → Elige si está alto o en bajo (Escritura) → H / L !
PINX → port (x) input pins address → Lee si está alto o en bajo (Lectura) → H / L ?
<aside> ℹ️ El tamaño de los registros en este AVR es de 8 bits normalmente
</aside>
El ATmega328P cuenta con 3 registros de dirección, y dos de los tres puertos tienen una longitud de 8 bits, el tercer puerto llamado DDRC cuenta con una longitud de 7 bits.
Los puertos de entradas y salida (I/O) son la interfaz entre el bus de datos interno y los (las terminales) pines asignados a estas funciones en el microcontrolador (MCU), las entradas y salidas se mantienen en rangos de nivel de voltaje TTL
LOW: indica que el estado está en nivel bajo de acuerdo a los niveles TTL esta entre 0V - 0.8V de tensión, es un “0 lógico”
HIGH: indica que el estado está en nivel alto de acuerdo a los niveles TTL esta entre 2.8V - 5V de tensión, es un “1 lógico”
INPUT: recibe valores de tensión a niveles TTL, es decir, idealmente un valor alto de tensión (HIGH) “1 lógico” sería 5V, y un valor bajo de tensión “0 lógico” ****sería 0V. Cuando el puerto del microcontrolador opera de esta manera se dice que trabaja como entrada, pues recibe o “lee” los valores de tensión de elementos externos como switches, botones, sensores, etc. OUTPUT: si el puerto del microcontrolador opera como salida, hace que los pines del mismo tomen valores al “escribir” un valor en el mismo, es decir ,pueden estar 0V sería un estado lógico 0 en el pin del microcontrolador, mientras que 5V es un estado lógico 1.
Para diseñar una aplicación con un microcontrolador, es importante considerar la configuración de los puertos de salida. Los microcontroladores tienen pines que se pueden usar como salidas digitales para controlar dispositivos externos como LEDs, motores o relés. Hay dos tipos de configuraciones de puertos de salida: sourcing y sinking. Las configuraciones de tipo sourcing suministran voltaje a la carga, mientras que las de tipo sinking conectan la carga a tierra.