Intel 8051
Encyclopedia : I : IN : INT : Intel 8051
-->
The Intel 8051 was a Harvard architecture single chip microcontroller (µC) developed by Intel in 1980 for use in embedded systems. It was extremely popular in the 1980s and early 1990s, but today it has largely been superseded by a vast range of enhanced devices with 8051-compatible processor cores that are manufactured by more than 20 independent manufacturers including Atmel, Maxim IC (via its Dallas Semiconductor subsidiary), Philips, Winbond, and Silicon Laboratories. Intel's official designation for the 8051 family of µCs is MCS 51.
Intel's original 8051 family was developed using NMOS technology, but later versions, identified by a letter "C" in their name, e.g. 80C51, used CMOS technology and were less power-hungry than their NMOS predecessors - this made them eminently more suitable for battery-powered devices.
Important Features of 8051 :
- It contains Processor (CPU), RAM, ROM, Serial Port, Parallel Port, Interrupt logic, Timer etc.
- Data bus - 8 bit data bus. Can access 8 bit data in one operation. Hence called 8-bit microprocessor.
- Address bus- 16 bit address bus. Can access 216 memory locations i.e 64 KB of memory each of RAM and ROM.
- On chip RAM - 128 Bytes (Data Memory).
- On chip ROM - 4 KB (Program Memory).
- Four Byte bi-directional Input Output port.
- UART (Serial Port).
- Two 16 - bit Up-Counter.
- Two level interrupt priority.
- Power saving mode.
The 8051 UART can be configured to use a 9th data bit that can provide addressable communications in an RS-485 multi-point communications environment.
8051 based microcontrollers typically include one or two UARTs, two or three timers, 128 or 256 bytes of internal data RAM (16 bytes of which are bit-addressable), up to 128 bytes of I/O, 512 bytes to 128kb of internal program memory, and sometimes a quantity of extended data RAM (ERAM) located in the program address space. The original 8051 core ran at 12 clock cycles per machine cycle, with most instructions executing in one or two machine cycles. With a 12 MHz clock frequency, the 8051 could thus execute 1 million one-cycle instructions per second or 500,000 two-cycle instructions per second. Enhanced 8051 cores are now commonly used which run at six, four, two, or even one clock per machine cycle, and have clock frequencies of up to 100 MHz, and are thus capable of an even greater number of instructions per second. All SILabs, some Dallas and a few Atmel devices have single cycle cores.
Even higher speed single cycle 8051 cores, in the range 130 MHz to 150 MHz, are now available in internet downloadable form for use in programmable logic devices such as FPGAs, and at many hundreds of MHz in ASICs, for example the netlist from e8051.com.
Common features included in modern 8051 based microcontrollers include built-in reset timers with brown-out detection, on-chip oscillators, self-programmable Flash ROM program memory, bootloader code in ROM, EEPROM non-volatile data storage, I2C, SPI, and USB host interfaces, PWM generators, analog comparators, A/D and D/A converters, RTCs, extra counters and timers, in-circuit debugging facilities, more interrupt sources, and extra power saving modes.
Several C compilers are available for the 8051, most of which feature extensions that allow the programmer to specify where each variable should be stored in its six types of memory, and provide access to 8051 specific hardware features such as the multiple register banks and bit manipulation instructions. Other high level languages such as Forth, BASIC, PASCAL, PL/M and Modula 2 are available for the 8051, but they are less widely used than C and assembly.
The 8051's predecessor, the 8048, was used in the keyboard of the first IBM PC, where it converted keypresses into the serial data stream which is sent to the main unit of the computer. The 8048 and derivatives are still used today for basic model keyboards.
The 8031 was a cut down version of the original Intel 8051 that did not contain any internal program memory.
The 8052 was an enhanced version of the original Intel 8051 that featured 256 bytes of internal RAM instead of 128 bytes, 8 kB of ROM instead of 4 kB, and a third 16-bit timer. The 8032 had these same features except for the internal ROM program memory. The 8052 and 8032 are largely considered to be obsolete because these features and more are included in nearly all modern 8051 based microcontrollers.
External links
- [8051 Forum]
- [e8051 netlist download]
- [Microcontroller.com]
- [8051 Tutorial] (8052.com)
- [Official 8051 FAQ]
- [Intel MCS 51 series microcontrollers]
- [Maxim/Dallas 8051 Drop-In microcontrollers]
- [Open Core 8052 Cores with and without Wishbone bus]
- [8051 Macro Assembler ASEM-51]
- [SDCC, a free open-source C compiler]
- [Free resources for 8051 and other development tools]
- [8051 assembler]
|
|
|
MCS-48 (8048 family) |
MCS-51 (8051 family) |
8061 |
MCS-96 (8096 family) |
(80186) |
(80188) |
80376 |
80386EX |
i960 (80960)
(italics indicate non-x86-architecture controllers)
|
- This article was originally based on material from the Free On-line Dictionary of Computing, which is [Foldoc licenselicensed] under the GFDL.
From Wikipedia, the Free Encyclopedia. Original article here. Support Wikipedia by contributing or donating.
All text is available under the terms of the GNU Free Documentation License See Wikipedia Copyrights for details.
