arquitectura del microcontrolador 8051 con aplicaciones

El microcontrolador 8051 fue diseñado en los años 80 por Intel. Se basaba en la arquitectura Harvard y se desarrolló principalmente para la introducción de sistemas embebidos. Originalmente se creó utilizando la tecnología NMOS, pero como la tecnología NMOS requiere más energía para funcionar, Intel rediseñó el microcontrolador 8051 utilizando la tecnología CMOS y nació una nueva edición con la letra «C» en el nombre, por ejemplo: 80C51. Estos microcontroladores de última generación requieren menos energía para funcionar que sus predecesores. Las aplicaciones del microcontrolador 8051 son numerosas. Así, proyectos de microcontroladores 8051 son de gran importancia en el último año de ingeniería. Este artículo ofrece una visión general de la arquitectura del microcontrolador 8051 y su funcionamiento.


¿Qué es un microcontrolador 8051?

El microcontrolador 8051 fue diseñado en 1981 por Intel. El microcontrolador es un circuito integrado de 40 patillas con un paquete doble en línea o DIP, RAM-128 bytes, ROM-4kb y temporizador-2 de 16 bits. Según las necesidades, incluye cuatro puertos paralelos de 8 bits direccionables y programables. En la arquitectura del microcontrolador 8051, el bus del sistema desempeña un papel fundamental en la conexión de todos los dispositivos con la unidad central de procesamiento. Este bus comprende un bus de datos de 8 bits, un bus de direcciones de 16 bits y señales de control del bus. También se pueden interconectar otros dispositivos, como puertos, memoria, control de interrupciones, interfaz serie, CPU y temporizador, a través del bus del sistema.

El microcontrolador 8051 tiene dos buses, uno de programa y otro de datos. Por ello, tiene dos cámaras de memoria para programa y datos de un tamaño de 64K por 8. El microcontrolador incluye un acumulador de 8 bits y una unidad de procesamiento de 8 bits. La programación del microcontrolador 8051 se realiza con el lenguaje C embebido utilizando el software Keil. También tiene otros numerosos registros de 8 y 16 bits.

Para el funcionamiento y el procesamiento interno, el microcontrolador 8051 tiene una memoria RAM incorporada. Es una memoria primaria que se utiliza para almacenar datos temporales. Es una memoria imprevisible, es decir, sus datos pueden perderse cuando se interrumpe la alimentación del microcontrolador. Este microcontrolador es muy sencillo de utilizar, tiene poca potencia de cálculo y una arquitectura y un conjunto de instrucciones simples.

Características

El principal características de la arquitectura del microcontrolador 8051 incluyen lo siguiente.

  • cPU de 8 bits a través de dos registros A y B.
  • 8K Bytes – ROM interna: es una memoria flash que admite la programación del sistema.
  • 256 Bytes – RAM interna donde la primera RAM con 128 Bytes de 00H a 7FH está de nuevo separada en cuatro bancos con 8 registros en cada banco, registros direccionables de 16 bits y registros de propósito general de 80 bits.
  • Los 128 bytes restantes de la RAM de 80H a FFH incluyen los registros de funciones especiales (SFR). Estos registros controlan varios periféricos, como el puerto serie, los temporizadores, todos los puertos de E/S, etc.
  • Interrupciones como la externa-2 y la interna-3
  • Oscilador y circuito CLK.
  • Registros de control como PCON, SCON, TMOD, TCON, IE e IP.
  • temporizadores o contadores de 16 bits -2 como T0 y T1.
  • Contador de programa – 16 bits y DPRT (puntero de datos).
  • Pines de E/S: 32, dispuestos en cuatro puertos: P0, P1, P2 y P3.
  • Puntero de pila (SP) – 8 bits y PSW (Palabra de estado del procesador).
  • Datos en serie Tx y Rx para funcionamiento Full-Duplex

arquitectura del microcontrolador 8051

La arquitectura del microcontrolador 8051 se muestra a continuación. Veamos con más detalle las características de diseño del microcontrolador 8051:

Diagrama de bloques del microcontrolador 8051

CPU (unidad central de procesamiento):

Como ya sabrás, la unidad central de procesamiento o CPU es el cerebro de cualquier máquina de procesamiento. Controla y gestiona todos los procesos que se ejecutan en el microcontrolador. El usuario no tiene ningún poder sobre el funcionamiento de la CPU. Interpreta el programa impreso en el espacio de memoria (ROM), lo ejecuta y realiza la tarea prevista. La CPU gestiona diferentes tipos de registros en los microcontroladores 8051.

Lee:  Sensor de posición del acelerador - Principio de funcionamiento y aplicaciones

Interrupciones:

Como dice el título, la interrupción es una llamada a una subrutina que lee la función o trabajo clave del microcontrolador y le ayuda a ejecutar otro programa que es muy importante. La función de interrupción del 8051 es extremadamente constructiva, ya que ayuda en casos de emergencia. Las interrupciones nos proporcionan un método para posponer o retrasar el proceso actual, ejecutar una tarea de subrutina y luego reiniciar la ejecución del programa estándar.

El microcontrolador 8051 puede ensamblarse de forma que interrumpa momentáneamente el programa principal cuando se produzca la interrupción. Cuando la tarea de la subrutina haya finalizado, la ejecución del programa principal se iniciará automáticamente como de costumbre. El microcontrolador 8051 tiene cinco interrupciones, dos de las cuales son interrupciones de periféricos, dos interrupciones de temporizador y una interrupción de puerto serie.

La memoria:

El microcontrolador necesita un programa, que es un conjunto de órdenes. Este programa ilumina el microcontrolador para que realice tareas precisas. Estos programas necesitan un espacio de memoria en el que ser acumulados e interpretados por el microcontrolador para actuar en algún proceso concreto. La memoria que se utiliza para acumular el programa del microcontrolador se conoce como memoria de programa o memoria de código. En el lenguaje común, también se conoce como memoria de sólo lectura o ROM.

El microcontrolador también necesita memoria para acumular datos u operandos a corto plazo. El espacio de memoria que se utiliza para almacenar momentáneamente los datos para su funcionamiento se conoce como Memoria de Datos y para ello utilizamos la Memoria de Acceso Aleatorio o RAM. El microcontrolador 8051 contiene una memoria de código de 4K o memoria de programa que tiene 4KB Rom y también incluye una memoria de datos (RAM) de 128 bytes.

Autobús

Básicamente, un bus es un grupo de cables que sirven como canal de comunicación o medio para la transferencia de datos. Estos buses constan de 8, 16 o más cables. En consecuencia, un bus puede contener 8 o 16 bits. Hay dos tipos de autobuses:

  1. Dirección del autobús: El microcontrolador 8051 tiene un bus de direcciones de 16 bits. Se utiliza para direccionar posiciones de memoria. También se utiliza para transmitir la dirección de la unidad central de proceso a la memoria.
  2. Bus de datos: El microcontrolador 8051 tiene un bus de datos de 8 bits. Se utiliza para transmitir datos.

Oscilador

Como todos sabemos, el microcontrolador es un dispositivo de circuito digital, por lo que necesita un temporizador para funcionar. Para esta función, el microcontrolador 8051 está equipado con un oscilador en el chip que actúa como fuente de tiempo para la CPU (Unidad Central de Proceso). Como los latidos de productividad del oscilador son constantes, esto facilita el uso armonioso de todos los componentes del microcontrolador 8051. Puerto de entrada/salida: Como sabemos, el microcontrolador se utiliza en los sistemas integrados para gestionar las funciones del dispositivo.

Por lo tanto, para conectarlo a otras máquinas, aparatos o periféricos, necesitamos puertos de interfaz de E/S (entrada/salida) en el microcontrolador. Para esta función, el microcontrolador 8051 tiene 4 puertos de entrada/salida que lo conectan con otros periféricos: El microcontrolador 8051 está equipado con dos contadores y temporizadores de 16 bits. Los contadores están separados en registros de 8 bits. Los temporizadores se utilizan para medir intervalos, averiguar la anchura de los impulsos, etc.

Tipos de interrupciones

Las interrupciones del microcontrolador 8051 tienen las siguientes fuentes

  • TF0 (Interrupción por desbordamiento del temporizador 0)
  • TF1 (Interrupción por desbordamiento del temporizador 1)
  • INT0 (Interrupción hardware externa)
  • INT1 (Interrupción hardware externa)
  • RI/TI (Interrupción de la comunicación en serie)

Memoria

Las memorias de la arquitectura del microcontrolador 8051 comprenden una memoria de programa y una memoria de datos.

  • Las instrucciones de la CPU se almacenan en la memoria del programa. Suele implementarse como una memoria de sólo lectura (Read-Only Memory o ROM), en la que el programa escrito se conserva incluso en caso de fallo de alimentación o reinicio del sistema.
  • La memoria de datos de un microcontrolador se encarga de almacenar los valores de las variables, los datos temporales, los resultados intermedios y otros datos para el correcto funcionamiento del programa.
Lee:  Qué es el amplificador operacional CMOS CA3130 y cómo funciona

Temporizadores y unidades de control

La función principal de un temporizador es crear un retraso o intervalo de tiempo entre dos eventos. Este microcontrolador incluye dos temporizadores, cada uno de 16 bits, y el sistema puede generar dos retardos simultáneamente para producir un retraso adecuado. Normalmente, cada microcontrolador utiliza retardos por hardware: se puede utilizar un dispositivo físico a través del procesador para generar un determinado retardo que se denomina temporizador.

El retardo puede generarse a través del temporizador según las necesidades del procesador y transmite la señal al procesador cada vez que se genera un retardo determinado.

Utilizando este procesador, también podemos generar un retardo según los requisitos del sistema. Sin embargo, el procesador permanecerá activo todo el tiempo porque no realizará ninguna otra tarea durante ese periodo concreto. En consecuencia, la existencia de un temporizador dentro del microcontrolador permite que el procesador quede libre para realizar otras tareas.

El microcontrolador también incluye un contador de programa, un puntero de datos, una pila y un puntero de pila, registros de instrucciones y latches, registros temporales y buffers de puertos de E/S.

Registros

Los registros de los microcontroladores se utilizan principalmente para almacenar datos e instrucciones de corta duración que se utilizan para procesar direcciones y recuperar datos. Este microcontrolador incluye los registros de inicio de 8 bits D0 a D7. Aquí, D0 a D7 es el LSB (bit menos significativo) y D7 es el bit más significativo (MSB).

Para mejorar el tratamiento de los datos de 8 bits, es necesario separarlos en ocho partes diferentes. Incluye varios registros, pero los programadores suelen disponer de registros de propósito general. Se clasifican en dos tipos: de uso general y de uso especial. La mayoría de los registros de uso general se enumeran a continuación.

  • Un acumulador se utiliza principalmente para ejecutar instrucciones aritméticas y lógicas.
  • Los registros como B, R0 y R7 se utilizan para almacenar direcciones de instrucciones y datos.
  • El registro de punteros de datos o DPTR se utiliza para permitir el procesamiento de datos en diferentes modos de direccionamiento. Este registro incluye DPH (byte alto) y DPL (byte bajo), que se utiliza principalmente para mantener una dirección de 16 bits. Por lo tanto, puede utilizarse como registro básico dentro de los saltos no dirigidos, las instrucciones de tabla de búsqueda y las transferencias de datos externas.
  • El contador de programa o PC es un registro de 16 bits que se utiliza para almacenar la dirección de la siguiente instrucción a ejecutar
  • Estos registros son de 8 bits, excepto el contador de programa y los registros de puntero de datos.

Tipos de datos

Este microcontrolador incluye simplemente un tipo de datos de 8 bits en el que el tamaño de cada registro es de 8 bits. Si los datos son mayores de 8 bits, el programador debe separar los datos en partes de 8 bits antes de procesarlos. Para los ensambladores, la directiva de datos más utilizada es la directiva DB en lenguaje ensamblador.

Registro PSW

El término PSW significa Palabra de estado del programa y es un tipo de registro del microcontrolador. También se llama registro de banderas y se utiliza para indicar la posición de las instrucciones lógicas aritméticas, como el bit de acarreo cero, el bit de acarreo, etc. El PSW o registro de bandera es un registro de 8 bits en el que se utilizan 6 bits. Este registro incluye 8 banderas, conocidas como banderas condicionales. Estas banderas simplemente ejecutan una instrucción si se cumple la condición.

Lee:  Diferencia entre resistencias Pull-up y Pull-down y ejemplos prácticos

Estas banderas condicionales son desbordamiento, paridad, transporte auxiliar y transporte. Los números de bits de los registros de la palabra de estado del programa, como el 3 y el 4, se utilizan para modificar los registros del banco, mientras que el 1 y el 5 no se utilizan pero pueden ser utilizados por el programador para realizar una tarea específica.

Registrar bancos

Para las pilas y los bancos de registros, se utiliza una Ram de 32 bytes, dividida en cuatro tipos de bancos. Así, cada banco comprende ocho registros que van de R0 a R7. Aquí, R0 y R7 indican las posiciones de la RAM, como la posición cero y la séptima. El registro del segundo banco comienza en la posición 8 y termina en 05H. El registro del tercer banco comienza en la posición 10H y termina en la posición 17H. El último banco puede situarse entre 18H-1FH.

Pila

La parte de la RAM como la Pila es utilizada principalmente por el procesador para almacenar datos o direcciones momentáneas. En un microprocesador, es una parte muy importante porque el número de registros para almacenar direcciones y datos es extremadamente limitado.

En los microcontroladores 8051, la pila tiene 8 bits de ancho y puede contener datos de 00 a FFH. El puntero a la pila puede ser utilizado por la CPU para activar la pila. Este microcontrolador incluye un puntero de pila de 8 bits, lo que significa que puede admitir valores de 00H a FFH. Cuando se activa, el puntero de la pila incluye el valor 07.

Organización de la memoria

El microcontrolador tiene una compleja organización de la memoria e incluye un bus de direcciones independiente que se utiliza para la memoria de programa, la RAM externa y la memoria de datos. Depende de la arquitectura Harvard, desarrollada por Harvard en 1944.

Modos de direccionamiento

El microprocesador obtiene los datos de diferentes maneras. Normalmente, los datos almacenados en la memoria, se registran y pueden utilizarse a partir de un valor instantáneo. Estos diferentes métodos de acceso a los datos se conocen como modos de direccionamiento. Los distintos tipos de microcontroladores incluyen diferentes modos de direccionamiento según el diseño del fabricante. Los modos de direccionamiento de este microcontrolador son los siguientes

  • Regístrate en
  • Registro indirecto
  • Inmediatamente
  • Indexado
  • Directo

Aplicaciones de la arquitectura del microcontrolador 8051

Las aplicaciones del microcontrolador 8051 incluyen un gran número de máquinas, principalmente porque es sencillo de incorporar a un diseño o de montar en torno a él. A continuación se enumeran los aspectos más destacados:

Aplicaciones del microcontrolador 8051
Aplicaciones del microcontrolador 8051
  1. Gestión de la energía: Los sistemas de medición competentes ayudan a calcular el consumo de energía en aplicaciones domésticas e industriales. Estos sistemas de medición se preparan de forma competente integrando microcontroladores.
  2. Pantalla táctil: Muchos proveedores de microcontroladores integran en sus diseños la capacidad de detección táctil. Los dispositivos transportables, como los reproductores multimedia, los dispositivos de juego y los teléfonos móviles, son algunos ejemplos de microcontroladores integrados con pantallas táctiles.
  3. Automóviles: El microcontrolador 8051 se utiliza ampliamente en soluciones de automoción. Se utilizan mucho en los vehículos híbridos para controlar las variaciones del motor. Además, funciones como la potencia de crucero y el mecanismo antifreno se han hecho más eficientes gracias a la integración del microcontrolador.
  4. Dispositivos médicos: Los aparatos médicos, como los monitores de glucosa y presión arterial, incorporan microcontroladores para mostrar las mediciones, ofreciendo así una mayor fiabilidad a la hora de proporcionar resultados médicos correctos.
  5. Dispositivos médicos: Los aparatos médicos, como los monitores de glucosa y presión arterial, incorporan microcontroladores para mostrar las mediciones, ofreciendo así una mayor fiabilidad a la hora de proporcionar resultados médicos correctos.

Por lo tanto, se trata de una visión general del microcontrolador 8051 arquitectura, funcionamiento y aplicaciones. Aquí tienes una pregunta: ¿cuáles son las diferentes familias de microcontroladores 8051 disponibles?

Créditos de las fotos:

Javired
Javired

Deja una respuesta

Tu dirección de correo electrónico no será publicada.