한국   대만   중국   일본 
Intel 8051 - Wikipedia, la enciclopedia libre Ir al contenido

Intel 8051

De Wikipedia, la enciclopedia libre
Intel P8051.
El SAB-C515-LN de Infineon esta basado en el 8051.
Diagrama de bloques de un 80C51.

El Intel 8051 es un microcontrolador (μC) desarrollado por Intel en 1980 para uso en productos embebidos . Es un microcontrolador muy popular.

Los nucleos 8051 se usan en mas de 100 microcontroladores de mas de 20 fabricantes independientes como Atmel , Dallas Semiconductor , Philips , Winbond , entre otros.

La denominacion oficial de Intel para familia de μCs 8051 es MCS 51 .

Especificaciones [ editar ]

Hardware [ editar ]

Este microcontrolador esta basado en la Arquitectura de von Neumann con memoria segregada (es decir, existen espacios de direcciones separados para codigo y datos, pero las memorias comparten los buses internos de datos y direcciones). Aunque originariamente fue disenado para aplicaciones simples, se permite direccionar 64  KB de ROM externa y 64 KB de RAM por medio de lineas separadas chip select para programa y datos.

Adicionalmente, el microcontrolador contiene una memoria interna, dividida en dos partes: los SFR y memoria de proposito general. Los SFR (Special Function Registers), son los registros proporcionados por el microcontrolador, y tienen asignadas direcciones en esta memoria interna. El acceso a esta memoria interna es mas rapido que el acceso a la memoria externa, pero es de tamano limitado. Parte de esta memoria interna ademas se usa como pila durante las llamadas a funcion y el proceso de interrupciones.

Una caracteristica particular del 8051 es la inclusion de una unidad de proceso booleano que permite que operaciones de nivel de bit logica booleana se ejecuten directa y eficientemente en registros internos. Esto ha hecho que el 8051 sea muy popular en aplicaciones de control industrial.

Otra caracteristica muy valorada es que tiene cuatro conjuntos separados de registros. A menudo se usa esta caracteristica para reducir la latencia de interrupcion. (La rutina que maneja la interrupcion declara usar otro conjunto de registros, evitandose de esta manera tener que salvar en la pila los registros originales).

La mayoria de los 8051 incluyen una o dos UARTs , dos o tres temporizadores, 128 o 256 bytes de RAM interna (16 bytes de los cuales son direccionables a nivel de bit), cuatro o cinco registros de entrada/salida y entre 0k-54K de memoria interna de programa. El nucleo 8051 original ejecuta un ciclo maquina cada 12 ciclos de reloj, requiriendo la mayoria de instrucciones uno o dos ciclos maquina. Pero actualmente la mayoria de fabricantes ofrecen versiones mejoradas que solo requieren de 2 a 4 ciclos de reloj por cada instruccion maquina.

Los microcontroladores 8051 modernos ofrecen muchas mejoras sobre el original. Mejoras comunes incluyen watchdog timers (un temporizador programable que "resetea" el microcontrolador si no se refresca en cierto tiempo), osciladores internos, memoria de programa Flash ROM interna, codigo de inicializacion en ROM, almacenamiento en EEPROM interna, I²C , SPI , USB , generadores PWM , conversores analogicos A/D y D/A , relojes de tiempo real RTC , temporizadores y contadores extra, facilidades de depuracion internas, mas fuentes de interrupcion, modos de bajo consumo, interfaz CAN , etc.

Software [ editar ]

Existen varios compiladores de lenguaje C disponibles para el 8051, asi como en lenguaje ensamblador . La mayoria anaden extensiones al lenguaje que permiten al programador especificar por ejemplo el tipo de memoria donde se ubicara la variable, especificar manejadores de interrupcion, especificar el banco de registros, acceder a instrucciones especiales de manipulacion de bits...

El predecesor del 8051, el 8048 , se uso en el teclado del primer IBM PC , donde convertia pulsaciones de tecla en un stream serie que se envia a la unidad central del ordenador. El 8048 y sus derivados aun se usan actualmente en teclados basicos.

Versiones [ editar ]

El 8031 fue una version reducida del Intel 8051 original que no contiene memoria interna.

El 8052 fue una version mejorada del Intel 8051 original con:

  • 256 bytes de RAM interna, en vez de 128 bytes
  • 8 kB de ROM, en vez de 4 kB
  • un tercer temporizador de 16-bit

Ademas de todas las facilidades de Timers que poseen estos controladores, estos cuentan con diferentes sistemas de comunicacion serial y paralela.

Vease tambien [ editar ]