¿Cuáles son los principios básicos de un microcontrolador 8051?

Un microcontrolador es un circuito integrado o un chip con un procesador y otros dispositivos de soporte como memoria de programa, memoria de datos, puertos de E / S, interfaz de comunicación en serie, etc. integrados juntos. A diferencia de un microprocesador (por ejemplo, Intel 8085 ), un microcontrolador no requiere ninguna interfaz externa de dispositivos de soporte. Intel 8051 es el microcontrolador más popular jamás producido en el mercado mundial. Ahora hablemos en detalle sobre el microcontrolador 8051.

Un microcontrolador es un procesador digital programable con los periféricos necesarios. Tanto los microcontroladores como los microprocesadores son circuitos digitales secuenciales complejos destinados a realizar trabajos de acuerdo con el programa / instrucciones. A veces, la interfaz de entrada / salida analógica forma parte del circuito del microcontrolador de modo mixto (tanto de naturaleza analógica como digital).
Un microcontrolador se puede comparar con un cuchillo suizo con múltiples funciones incorporadas en el mismo IC.

Antes de continuar, será interesante que comprenda la diferencia entre un microprocesador y un microcontrolador .

Cuando comience a aprender acerca de los microprocesadores (en la mayoría de los casos comenzará con Intel 8085) y los microcontroladores (generalmente comenzará con Intel 8051 de la familia de microcontroladores MCS 51), la primera pregunta que surge es “oye … cuál es la diferencia en Entre” ? En este artículo, estoy explicando las diferencias y similitudes básicas entre un microprocesador y un microcontrolador. De hecho, puede llamar a este artículo una comparación simple de ambos dispositivos de microcomputación. Esta comparación será la misma (en el nivel básico) para cualquier microprocesador y controlador. Vamos a empezar.

En el nivel básico, existe un microprocesador y un microcontrolador para realizar algunas operaciones, es decir, obtener instrucciones de la memoria y ejecutar estas instrucciones (operaciones aritméticas o lógicas) y el resultado de estas ejecuciones se utiliza para servir a los dispositivos de salida. ¿Todo quedo claro? Ambos dispositivos son capaces de recuperar continuamente instrucciones de la memoria y seguir ejecutando estas instrucciones siempre que la alimentación no esté apagada. Las instrucciones son instrucciones electrónicas representadas por un grupo de bits. Estas instrucciones siempre se obtienen de su área de almacenamiento, que se denomina memoria. Ahora echemos un vistazo más de cerca a los diagramas de bloques de un sistema basado en microprocesador y un sistema basado en microcontrolador.

Sistema basado en microprocesador

Eche un vistazo más de cerca al diagrama de bloques y verá que un microprocesador tiene muchos dispositivos de soporte como memoria de solo lectura, memoria de lectura y escritura, interfaz serie, temporizador, puertos de entrada / salida, etc. Todos estos dispositivos de soporte están conectados al microprocesador a través de un sistema de autobús. Entonces, un punto está claro ahora, todos los dispositivos de soporte en un sistema basado en microprocesador son externos. El bus del sistema está compuesto por un bus de direcciones, un bus de datos y un bus de control.

Bien, ahora echemos un vistazo al microcontrolador.

Sistema de microcontrolador

El diagrama de bloques anterior muestra un sistema de microcontrolador en general. ¿Cuál es la principal diferencia que ves? Todos los dispositivos de soporte, como la memoria de solo lectura, la memoria de lectura y escritura, el temporizador, la interfaz en serie y los puertos de E / S son internos. No hay necesidad de interconectar estos dispositivos de soporte y esto ahorra mucho tiempo para la persona que crea el sistema. ¿Tienes la comprensión básica? Un microcontrolador no es más que un sistema de microprocesador con todos los dispositivos de soporte integrados dentro de un solo chip. No hay necesidad de ninguna interfaz externa en un microcontrolador a menos que desee crear algo más allá del límite, como la interfaz de una memoria externa o una unidad DAC / ADC, etc. Para que este microcontrolador funcione, debe proporcionar una fuente de alimentación de CC, un restablecer circuito y un cristal de cuarzo (reloj del sistema) de fuente externa.

Bien, entonces tenemos una idea sobre la diferencia básica entre un microprocesador y un microcontrolador. Ahora comparemos algunas características de ambos sistemas.

Comparación

Como ya sabe, los dispositivos de soporte son externos en un sistema basado en microprocesador donde los dispositivos de soporte son internos para un microcontrolador. Los microcontroladores ofrecen protección de software donde el sistema base del microprocesador no puede ofrecer un sistema de protección. Esto es posible en microcontroladores al bloquear la memoria del programa en el chip, lo que hace que sea imposible leer usando un circuito externo. ¡Bueno! Esas son diferencias básicas, ahora puedes llegar a más. Como necesitamos interconectar dispositivos de soporte externos en un sistema basado en microprocesador, el tiempo requerido para construir el circuito será mayor, el tamaño será mayor y el consumo de energía será mayor en un sistema basado en microprocesador en comparación con el microcontrolador.

En pocas palabras

Microcontroladores Vs Microprocesadores

  1. Un microprocesador requiere una memoria externa para el almacenamiento de programas / datos. La ejecución de la instrucción requiere el movimiento de datos desde la memoria externa al microprocesador o viceversa. Por lo general, los microprocesadores tienen un buen poder de cómputo y tienen mayor velocidad de reloj para facilitar un cómputo más rápido.
  2. Un microcontrolador ha requerido memoria en chip con periféricos asociados. Un microcontrolador puede pensarse en un microprocesador con periféricos incorporados.
  3. Un microcontrolador no requiere muchos circuitos integrados de interfaz adicionales para funcionar y funciona como un sistema independiente. El funcionamiento de un microcontrolador es multipropósito, al igual que un cuchillo suizo.
  4. Los microcontroladores también se denominan controladores integrados. La velocidad de reloj de un microcontrolador está limitada solo a unas pocas decenas de MHz. Los microcontroladores son numerosos y muchos de ellos son específicos de la aplicación.

Introducción

Intel produjo por primera vez un microcontrolador en 1976 bajo el nombre de MCS-48 , que era un microcontrolador de 8 bits . Más tarde, en 1980, lanzaron una versión mejorada (que también es de 8 bits), bajo el nombre de MCS-51. El microcontrolador más popular 8051 pertenece a la familia de microcontroladores MCS-51 de Intel. Tras el éxito de 8051, muchos otros fabricantes de semiconductores lanzaron microcontroladores bajo su propia marca pero utilizando el núcleo MCS-51. Las compañías globales y gigantes en la industria de semiconductores como Microchip, Zilog, Atmel, Philips, Siemens lanzaron productos bajo su marca. La especialidad era que todos estos dispositivos podían programarse utilizando los mismos conjuntos de instrucciones MCS-51. Básicamente diferían en las configuraciones de dispositivos de soporte como memoria mejorada, presencia de un ADC o DAC, etc. Intel lanzó su primer microcontrolador de 16 bits en 1982, bajo el nombre MCS-96.

Embalaje del microcontrolador 8051

No hay necesidad de explicar qué significa cada paquete, ya lo sabes. Así que hojearé los empaques usados ​​principalmente para 8051. Vea, la disponibilidad de varios paquetes cambia de un dispositivo a otro. El más utilizado es el paquete dual en línea (40 pines), conocido popularmente como DIP. 8051 también está disponible en QFP (Quad Flat Package), TQFP (Thin Quad Flat Package), PQFP (Plastic Quad Flat Package), etc. Para explicar el diagrama de clavijas, hemos utilizado un IC DIP de 40 clavijas como modelo.

Arquitectura del microcontrolador 8051

Es posible explicar la arquitectura del microcontrolador con gran detalle, pero estamos limitando el alcance de este artículo a la arquitectura interna, la configuración del pin, la memoria del programa y la organización de la memoria de datos. La arquitectura básica sigue siendo la misma para la familia MCS-51. En general, todos los microcontroladores de la familia MCS-51 están representados por XX51, donde XX puede tomar valores como 80, 89, etc.

Esquema y características

El diagrama esquemático general del microcontrolador 8051 se muestra arriba. Podemos ver 3 entradas del sistema, 3 señales de control y 4 puertos (para interfaz externa). También se muestra una fuente de alimentación de Vcc y tierra. Ahora expliquemos y repasemos cada uno en detalle. Las entradas del sistema son necesarias para que el microcontrolador funcione. Entonces, el primero y más importante de esto es el poder, marcado como Vcc con un GND (potencial de tierra). Sin una fuente de alimentación adecuada, ningún sistema electrónico funcionaría. XTAL 1 y XTAL 2 son para las entradas de reloj del sistema del circuito de reloj de cristal. Se requiere la entrada RESET para inicializar el microcontrolador a los valores predeterminados / deseados y para comenzar de nuevo.

Hay 3 señales de control, EA, PSEN y ALE. Estas señales conocidas como Acceso externo (EA), Habilitación de almacenamiento de programas (PSEN) y Habilitación de bloqueo de dirección (ALE) se utilizan para la interfaz de memoria externa.

Eche un vistazo al siguiente diagrama esquemático (un microcontrolador funcional)

Como se mencionó anteriormente, las señales de control se utilizan para la interfaz de memoria externa. Si no se requiere una interfaz de memoria externa, entonces, el pin EA se pone alto (conectado a Vcc) y otros dos PSEN y ALE se quedan solos. También puede ver un condensador de desacoplamiento de 0.1 micro faradios conectado a Vcc (para evitar oscilaciones de HF en la entrada).

Hay cuatro puertos numerados 0,1,2,3 y llamados Puerto 0, Puerto 1, Puerto 2 y Puerto 3 que se utilizan para la interfaz externa de dispositivos como DAC, ADC, pantalla de 7 segmentos, LED, etc. Cada puerto tiene 8 Las líneas de E / S y todas son un poco programables.

8051 Pin Diagrama y descripción

Para describir el diagrama de pines y la configuración de pines de 8051, estamos teniendo en cuenta un DIP de 40 pines (paquete dual en línea). Ahora veamos la configuración del pin en detalle.

Pin-40: Nombrado como Vcc es la principal fuente de energía. Usualmente es + 5V DC.

Puede notar que algunos pines están designados con dos señales (mostradas entre paréntesis).

Pines 32-39: Conocido como Puerto 0 (P0.0 a P0.7): además de servir como puerto de E / S, la dirección de orden inferior y las señales del bus de datos se multiplexan con este puerto (para servir como interfaz de memoria externa ) Este es un puerto de E / S bidireccional (el único en 8051) y se requieren resistencias pull-up externas para funcionar este puerto como E / S.

Pin-31: – ALE aka Address Latch Enable se usa para demultiplexar la señal de datos de dirección del puerto 0 (para la interfaz de memoria externa). Hay 2 pulsos ALE disponibles para cada ciclo de máquina.

Pin-30: – La entrada EA / Acceso externo se usa para habilitar o no la interfaz de memoria externa. Si no hay un requisito de memoria externa, este pin se eleva al conectarlo a Vcc.

Pin 29: – PSEN o Program Store Enable se usa para leer la señal de la memoria externa del programa.

Pines 21-28: – Conocido como Puerto 2 (P 2.0 a P 2.7) – además de servir como puerto de E / S, las señales de bus de direcciones de orden superior se multiplexan con este puerto casi bidireccional.

Pin 20: – Llamado como Vss – representa la conexión a tierra (0 V).

Pines 18 y 19: se utilizan para interconectar un cristal externo para proporcionar el reloj del sistema.

Pines 10 – 17: – Conocido como Puerto 3. Este puerto también sirve para algunas otras funciones como interrupciones, entrada de temporizador, señales de control para la interfaz de memoria externa RD y WR, señales de comunicación en serie RxD y TxD, etc. Este es un puerto casi bidireccional con pull up interno

Pin 9: – Como se explicó antes, el pin RESET se usa para configurar el microcontrolador 8051 a sus valores iniciales, mientras el microcontrolador está funcionando o al inicio de la aplicación. El pin RESET debe establecerse alto para 2 ciclos de máquina.

Pines 1 – 8: – Conocido como Puerto 1. A diferencia de otros puertos, este puerto no tiene otras funciones. El puerto 1 es un puerto de E / S cuasi bidireccional extraído internamente.

8051 Arquitectura interna

No se necesita ninguna explicación detallada para comprender la arquitectura interna del microcontrolador 8051. Solo mire el diagrama de arriba y lo observará cuidadosamente. El bus del sistema conecta todos los dispositivos de soporte con la unidad central de procesamiento. El bus del sistema 8051 se compone de un bus de datos de 8 bits y un bus de dirección de 16 bits y señales de control de bus. Según la figura, puede comprender que todos los demás dispositivos, como la memoria del programa, los puertos, la memoria de datos, la interfaz en serie, el control de interrupciones, los temporizadores y la unidad central de procesamiento, están conectados entre sí a través del bus del sistema. RxD y TxD (entrada y salida de puerto serie) están interconectados con el puerto 3.

8051 Organización de la memoria

Antes de profundizar en la arquitectura de memoria de 8051, hablemos un poco sobre dos variaciones disponibles para el mismo. Son la arquitectura de Princeton y la arquitectura de Harvard. La arquitectura de Princeton trata la memoria de direcciones y la memoria de datos como una sola unidad (no distingue entre dos), mientras que la arquitectura de Harvard trata la memoria de programas y la memoria de datos como entidades separadas. Por lo tanto, la arquitectura de Harvard exige un bus de dirección, datos y control para acceder a ellos por separado, ya que la arquitectura de Princeton no exige ningún bus por separado.

Ejemplo: – El microcontrolador 8051 se basa en la arquitectura Harvard y el microprocesador 8085 se basa en la arquitectura Princeton.

Por lo tanto, 8051 tiene dos memorias: – Memoria de programa y memoria de datos

Organización de la memoria del programa

Ahora vamos a sumergirnos en la organización de la memoria del programa 0f 8051. Tiene un programa interno de tamaño 4K y, si es necesario, se puede agregar una memoria externa (mediante la interfaz) de un tamaño máximo de 60K. Entonces, en total, la memoria de 64K está disponible para el microcontrolador 8051. Por defecto, el pin de acceso externo (EA) debe estar conectado Vcc para que las instrucciones se obtengan inicialmente de la memoria interna. Cuando se cruza el límite de la memoria interna (4K), el control se moverá automáticamente a la memoria externa para obtener las instrucciones restantes. Si el programador desea obtener instrucciones de la memoria externa únicamente (sin pasar por la memoria interna), debe conectar el pin de acceso externo (EA) a tierra (GND).

Es posible que ya sepa que 8051 tiene una característica especial de bloquear la memoria del programa (interna) y, por lo tanto, proteger contra la piratería de software. Esta característica está habilitada por los bits de bloqueo del programa. Una vez que se programan estos bits, no se puede acceder al contenido de la memoria interna utilizando un circuito externo. Sin embargo, no es posible bloquear el software si también se usa memoria externa para almacenar el código del software. Solo la memoria interna se puede bloquear y proteger. Una vez bloqueados, estos bits solo se pueden desbloquear mediante una operación de borrado de memoria, que a su vez borrará también los programas en la memoria interna.

8051 es capaz de canalizar. La canalización hace que un procesador sea capaz de recuperar la siguiente instrucción mientras ejecuta la instrucción anterior. Es algo así como multitarea, hacer más de una operación a la vez. 8051 es capaz de obtener el primer byte de la siguiente instrucción mientras ejecuta la instrucción anterior.

Organización de la memoria de datos

En la familia MCS-51, 8051 tiene 128 bytes de memoria de datos interna y permite la interfaz de la memoria de datos externos de un tamaño máximo de hasta 64K. Por lo tanto, el tamaño total de la memoria de datos en 8051 puede ser de hasta 64K (externo) + 128 bytes (interno). Observe el diagrama cuidadosamente para obtener una mejor comprensión. Entonces hay 3 separaciones / divisiones de la memoria de datos: – 1) Registrar bancos 2) Área direccionable de bits 3) Área de bloc de notas.

Los bancos de registro forman los 32 bytes más bajos en la memoria interna y hay 4 bancos de registro designados como banco # 0, # 1, # 2 y # 3. Cada banco tiene 8 registros que se designan como R0, R1 … R7. En un momento, solo se selecciona un banco de registros para las operaciones y se accede a los registros dentro del banco seleccionado usando mnemónicos R0..R1 .. etc. Se puede acceder a otros registros simultáneamente solo mediante direccionamiento directo. Los registros se utilizan para almacenar datos u operandos durante las ejecuciones. Por defecto, se selecciona el banco de registro # 0 (después de un reinicio del sistema).

Las áreas direccionables de bits de 8051 generalmente se utilizan para almacenar variables de bits. El área direccionable de bits está formada por los 16 bytes junto a los bancos de registro. Se designan desde la dirección 20H a 2FH (total de 128 bits). Se puede acceder a cada bit de 00H a 7FH dentro de estos 128 bits de 20H a 2FH. El área direccionable de bits se utiliza principalmente para almacenar variables de bits del programa de aplicación, como el estado de un dispositivo de salida como LED o motor (ON / OFF), etc. Solo necesitamos un bit para almacenar este estado y usar un área direccionable de bytes completa para almacenar este es realmente una mala práctica de programación, ya que resulta en un desperdicio de memoria.

El área del bloc de notas son los 80 bytes superiores que se utilizan para el almacenamiento de uso general. El área del bloc de notas es de 30H a 7FH y esto también incluye la pila.

Reloj 8051 del sistema

Un circuito de reloj 8051 se muestra arriba. En casos generales, se utiliza un cristal de cuarzo para hacer el circuito del reloj. La conexión se muestra en la figura (a) y tenga en cuenta las conexiones a XTAL 1 y XTAL 2. En algunos casos se utilizan fuentes de reloj externas y puede ver las diversas conexiones anteriores. Los límites de frecuencia del reloj (máximo y mínimo) pueden cambiar de un dispositivo a otro. La práctica estándar es usar una frecuencia de 12MHz. Si las comunicaciones en serie están involucradas, es mejor usar una frecuencia de 11.0592 MHz.

Bien, eche un vistazo a la forma de onda del ciclo de la máquina anterior. Una oscilación completa de la fuente del reloj se llama pulso. Dos pulsos forman un estado y seis estados forman un ciclo de máquina. También tenga en cuenta que hay dos pulsos de ALE disponibles para 1 ciclo de máquina.

8051 Restablecer circuito

El 8051 se puede restablecer de dos maneras 1) es el reinicio de encendido, que restablece el 8051 cuando se enciende la alimentación y 2) el reinicio manual, en el que el reinicio ocurre solo cuando se presiona un botón manualmente. Dos circuitos de reinicio diferentes se muestran arriba. Un reinicio no afecta el contenido de la RAM interna. Para que ocurra el reinicio, el pin de entrada de reinicio (pin 9) debe estar activo alto durante al menos 2 ciclos de máquina. Durante una operación de reinicio: – El contador del programa se borra y comienza desde 00H, el banco de registro # 0 se selecciona por defecto, el puntero de pila se inicializa a 07H, todos los puertos se escriben con FFH.

Los conceptos básicos de 8051 son:
Arquitectura del microcontrolador 8051
Embalaje del microcontrolador 8051
8051 Pin Diagrama y descripción
8051 Arquitectura interna
8051 Organización de la memoria
Organización de la memoria del programa
Organización de la memoria de datos
8051 Restablecer circuito
Programación Led de 8051
Interfaz LCD con 8051
Módulo inalámbrico que interactúa con 8051
Comunicación en serie con 8051

referencia 8051 Microcontrolador – Tutorial y guía , 8051

Mejor
Pooja joshi

Debe comenzar con el aprendizaje de los conceptos básicos de la programación de c hasta punteros. Después de eso, comience con la programación del puerto de entrada / salida. Le sugeriré que siga solo una vez a la vez para mejorar su conocimiento drásticamente en la programación de 8051 microcontroladores.

Para obtener información sobre el microcontrolador 8051, envíenos un mensaje a nuestra página

https://m.facebook.com/embedinee