Está en la página 1de 14

Microcontrolador Intel 8051

[Arquitectura]

Página 2

El microcontrolador

• Los microcontroladores pueden considerarse sistemas autónomos con un

Procesador, memoria y puertos de E / S.

- En la mayoría de los casos, todo lo que falta es el software para definir el

operación del sistema embebido.

• Generalmente disponible en varias formas:

- Dispositivos para la creación de prototipos

• EPROM incorporado o superpuesto para almacenar el software.

- Dispositivos programables por única vez (OTP).

• No hay ventana en el paquete. Por lo tanto, la EPROM interna

no se puede borrar después de ser programado.

- Dispositivos de producción de alto volumen.

• Use la ROM internamente para mantener el software. Más barato en grande

volumen.

Página 3

Las necesidades arquitectónicas de un

Microcontrolador

• Consideremos qué características arquitectónicas serían

Necesario en un microcontrolador.

• ¿Cuáles son las aplicaciones esperadas?

- Detección del entorno (entrada)

- Produciendo una respuesta (Salida)

- La respuesta puede retrasarse (Temporizador / Contador)

- Respuesta priorizada (interrupciones)

- Software para controlar el proceso (memoria no volátil)

- Datos temporales (RAM)


Página 4

Principales familias de microcontroladores

• Hay varias " familias " importantes de microcontroladores.

disponible de diferentes fabricantes.

- Una familia se define como un grupo de productos que comparten

las mismas arquitecturas internas básicas y quiénes son

compatible con el código

- Los fabricantes suelen definir una arquitectura y luego

hacer variantes de ese diseño produciendo una familia de

productos

- El código escrito para un miembro de la familia debe ser

compatible con todos los demás miembros de la misma familia.

Página 5

Ejemplo de familias de microcontroladores

• Z80 de Zilog

- Microprocesador de 8 bits basado en la arquitectura 8080.

- Capaz de 1 MIP a 4 MHz.

- Acumulador, 6 registros de 8 bits, 2 registros de índice.

- Utiliza RAM externa para datos temporales.

- Circuito de actualización incorporado para la RAM externa.

- Solo E / S basadas en puertos.

- Lentamente desapareciendo.

Página 6

Ejemplo de familias de microcontroladores ... Cont.

• MC6811 de Motorola

- Arquitectura basada en pila de 8 bits.

- 2 acumuladores y 2 registros de índice.


- Construido en EEPROM y RAM.

- E / S digital.

- Temporizadores.

- ADC.

- Comunicación RS232.

- Fue el controlador más potente y flexible disponible en

Introducción.

• Alrededor de 1970.

- Sigue siendo muy popular.

Página 7

La familia de microcontroladores MCS-51

• Presentado originalmente por Intel en 1981.

- Actualmente , el microcontrolador más utilizado.

- Procesador de 8 bits.

- 2 áreas distintas de memoria direccionable por separado.

• Máximo de 64K ROM en chip.

- Por lo general, de 0 a 4K.

• Máximo de 64K de memoria de datos externos.

• Máximo de 64K de memoria de código externo.

• La versión básica (8051) contiene:

- 4K Bytes de memoria de instrucciones ROM en chip.

- 128 bytes de RAM en chip para el almacenamiento temporal de datos y el

apilar.

- 2 temporizadores, un puerto serie y cuatro puertos de E / S paralelas de 8 bits.

- Velocidades a partir de 12 MHz.

Página 8

Características del microcontrolador 8051

• El 8031 requiere memoria de instrucciones externa.

- Puede ser tan grande como 64K Bytes.


- Pierde 2 puertos para conectarse a la memoria externa.

• Puede reemplazarlos conectando el chip a un puerto de E / S

controlador como el 8255.

• El 8051 es el miembro original de la familia Intel MCS-51 de

Microcontroladores.

- Hay varias variedades que difieren ligeramente en la disponibilidad.

caracteristicas.

Página 9

Fabricantes de clones MCS-51

• Hay una gran cantidad de empresas que

fabricar microcontroladores en el 8051

familia.

- Corporación ATMEL.

• Flash en lugar de EPROM.

• Baja tensión.

• Versión mínima con menos memoria y menos E / S

puertos en un paquete más pequeño.

• Implementación de CMOS.

• Velocidades que oscilan entre 12 y 20 MHz.

Página 10

Fabricantes de clones MCS-51

- Dallas Semiconductor

• Utiliza NV-RAM. Programable en el sistema.

• Tan grande como 32K de memoria de instrucciones.

• Algunas versiones tienen un reloj en tiempo real en chip.

- Philips Corporation.

• Amplia selección de microcontroladores basados en 8051.

• Incluye características como A / D y D / A en el chip.

- Xilinx y Altera
• 8051 núcleos FPGA.

Página 11

Los internos del microcontrolador 8051

Pagina 12

8051 Arquitectura

• Vista del programador

- Organización de la memoria

- Conjunto de registro

- Conjunto de instrucciones

• Vista del diseñador de hardware

- Pin-out

- Características de tiempo

- Requisitos de corriente / voltaje

Página 13

Organización de la memoria

El 8051 tiene espacios de direcciones separados para

Programa de almacenamiento y almacenamiento de datos.

- Dependiendo del tipo de instrucción, el

misma dirección puede referirse a dos lógicamente y

ubicaciones de memoria físicamente diferentes.

Página 14

Programa de almacenamiento

• Después de reiniciar, el MCS-51 comienza a buscar instrucciones de

0000H.

- Esto puede ser en chip o externo dependiendo de

El valor del pin de entrada EA.


• Si EA * es bajo , la memoria del programa es externa.

• Si EA * es alto , entonces las direcciones de 0000 a 0FFF

se referirá a la memoria en chip y las direcciones 1000

hasta FFFF se refieren a la memoria externa.

- Tenga en cuenta que el 8031 debe tener su EA conectado tan bajo como

Toda su memoria es externa.

Enlace: conexión EA

Página 15

Acceso a memoria externa

• El puerto 0 actúa como una dirección multiplexada / bus de datos. Enviando

el byte bajo del contador de programa (PCL) como

habla a.

• El puerto 2 envía el contador de programa de alto byte (PCH)

directamente a la memoria externa.

• La señal ALE funciona como en el 8051 para permitir un

pestillo externo para almacenar el byte PCL mientras se multiplexa

el bus está listo para recibir el byte de código del

memoria externa.

• El puerto 0 luego cambia de función y se convierte en el bus de datos

recibiendo el byte de la memoria.

Enlace: Interfaz H / w

Página 16

Almacenamiento de datos

• El 8051 tiene 256 bytes de RAM en el chip.

- Los 128 bytes inferiores están destinados a datos internos

almacenamiento.

- Los 128 bytes superiores son la función especial

Registros (SFR).

• Los 128 bytes inferiores no deben usarse como estándar


RAM.

- Internamente, los registros de 8051 predeterminan el área de apilamiento, y

otras características. [00-7FH]

Enlace: Organización de la memoria

Página 17

Almacenamiento de datos [Cont ...]

• Los 32 bytes más bajos de la RAM en chip forman 4 bancos de 8

registra cada uno.

• Solo uno de estos bancos puede estar activo en cualquier momento.

• El banco se elige configurando 2 bits en PSW

- El banco predeterminado (al encender) es el banco 0 (ubicaciones 00 - 07).

• Los 8 registros en cualquier banco activo se denominan R0

a través de R7

• Dado que cada registro tiene una dirección específica, puede ser

accedido directamente usando esa dirección incluso si su banco no es

El activo.

Página 18

Almacenamiento de datos [Cont ...]

• Los siguientes 16 bytes - ubicaciones 20H a 2FH - forman un bloque

que se puede abordar como bytes o bits individuales.

- Los bytes tienen direcciones 20H a 2FH.

- Los bits tienen direcciones 00H a 7FH.

- Se utilizan instrucciones específicas para acceder

los bits

• Las ubicaciones de 30H a 7FH son RAM de uso general.

Enlace: Organización de la memoria

Página 19
El SFR (Registro de funciones especiales)

• Los 128 bytes superiores de la RAM en chip se usan para alojar

registros de funciones.

• En realidad, solo se usan unos 25 de estos bytes. los

otros están reservados para futuras versiones del 8051.

- Estos son registros asociados con funciones importantes en el

funcionamiento del MCS-51.

- Algunos de estos registros son bit-direccionables , así como byte-

direccionable .

• La dirección del bit 0 del registro será la misma que la

dirección del registro.

Página 20

Los elementos de SFR

• Registros ACC y B: 8 bits cada uno

• DPTR: [DPH: DPL] - 16 bits combinados

• PC (Contador de programa) - 16 bits

• SP (puntero de pila): 8 bits

• PSW (palabra de estado del programa)

• Cierres de puerto

• Búfer de datos en serie

• Registros de temporizador

• Registros de control

Enlace: Elementos SFR

Página 21
Página 22
Página 23

Página 24

El ACC - Acumulador

• Se usa comúnmente para instrucciones de movimiento y aritméticas.

• Puede ser referido de varias maneras:

- Implícitamente en los códigos de operación.

- Conocido como ACC (o A) para obtener instrucciones que permiten especificar un


registro.

- Por su dirección SFR 0E0H.

• Funciona de manera similar al acumulador 8085.

• Bit direccionable.

- ACC.2 significa el bit 2 del registro ACC.

Página 25

El registro B

• Se usa comúnmente como un registro temporal, como un noveno

R registro.

• Usado por dos códigos de operación

- MUL AB, div AB

• El registro B contiene el segundo operando y tendrá parte de

el resultado

- 8 bits superiores del resultado de multiplicación

- Resto en caso de división.

• También se puede acceder a través de su dirección SFR de 0F0H .

• Bit direccionable.

Page 26

Los registros DPL y DPH

• 2 registros de 8 bits que se pueden combinar en un DPTR de 16 bits - Datos

Puntero.

• Utilizado por comandos que acceden a la memoria externa.

• También se usa para almacenar valores de 16 bits

mov DPTR, # data16

; configurar DPTR con dirección de 16 bits ext

movx A, @DPTR

; copiar mem [DPTR] a A

• Se puede acceder como 2 registros separados de 8 bits si es necesario.

• DPTR es útil para operaciones de cadena y tabla de consulta (LUT)


operaciones

Página 27

El registro SP

• SP es el puntero de la pila.

• SP apunta a la última ubicación utilizada de la pila.

- La operación de empuje primero incrementará SP y luego copiará los datos.

- La operación emergente primero copiará los datos y luego disminuirá SP.

• En 8051, la pila crece hacia arriba (de poca memoria a alta memoria)

y solo puede estar en la RAM interna.

• En el encendido, SP apunta a 07H.

- Los bancos de registro 2,3,4 (08H a 1FH) forman el área de pila predeterminada.

• La pila se puede reubicar configurando SP en el área de memoria superior en

30H a 7FH.

- mov SP, # 32H

Página 28

El registro de PSW

• La palabra de estado del programa es un registro de 8 bits "direccionable por bits"

que tiene todas las banderas


Página 29

Los registros P0, P1, P2 y P3

• Cierres de puerto.

• Especifique el valor que se emitirá en el puerto de salida específico

o el valor leído desde el puerto de entrada específico.

• Bit direccionable.

- El primer bit tiene la misma dirección que el registro.

- Ejemplo: P1 tiene la dirección 90H en el SFR, entonces

• P1.7 o dirección 97H se refieren al mismo bit.

Enlace: dirección SFR

Página 30

El registro SBUF

• Búfer de datos del puerto serie.

• 2 registros en la misma ubicación

- Uno es de solo lectura para leer la entrada en serie

datos.

• Búfer de recepción de datos en serie.


- El otro solo se usa para almacenar en serie

datos resultantes.

• Memoria intermedia de transmisión de datos en serie.

Enlace: dirección SFR

Page 31

Registros de temporizador - TH0 y TL0

• Los bytes alto y bajo del registro de conteo de 16 bits para

temporizador / contador T0.

• También hay un par TH1 / TL1 para el temporizador T1.

• En el 8052, existe un par más (TH2) / (TL2) para el T2

Temporizador.

• (RCAP2H) y (RCAP2L) existen solo en el 8052 y

son copias de los registros TH2 y TL2.

Enlace: dirección SFR

Página 32

Registros de control

• IP - Prioridad de interrupción.

• IE: habilitación de interrupción.

• TMOD - Modo de temporizador.

• TCON - Control del temporizador.

• T2CON - Control del temporizador 2 (8052)

• SCON - Control de puerto serie.

• PCON - Control de potencia (80C51)

También podría gustarte