- central processing unit - ranging from small and simple 8-bit processors to sophisticated 32- or 64-bit processors
- input/output interfaces such as serial ports
- peripherals such as timers and watchdog circuits
- RAM for data storage
- ROM, EEPROM or Flash memory for program storage
- clock generator - often an oscillator for a quartz timing crystal, resonator or RC circuit
Microcontrollers are inside many kinds of electronic equipment. They are the vast majority of all processor chips sold. Over 50% are "simple" controllers, and another 20% are more specialized digital signal processors (DSPs). A typical home in a developed country is likely to have only one or two general-purpose microprocessors but somewhere between one and two dozen microcontrollers. A typical mid range vehicle has as many as 50 or more microcontrollers. They can also be found in almost any electrical device: washing machines, microwave ovens, telephones etc.
A PIC 18F8720 microcontroller in an 80-pin TQFP package. In addition to the key features listed above, most microcontrollers today take further advantage of not needing external pins for memory buses. They can afford to use a Harvard architecture: separate memory buses for instructions and data, allowing accesses to take place concurrently.
Microcontrollers also usually have a variety of input/output interfaces. Serial I/O (UARTs) are very common, and many include analog-to-digital converters, timers, or specialized serial communications interfaces like I?C, Serial Peripheral Interface and Controller Area Network.
Originally, microcontrollers were only programmed in assembly language, or later in C code. Recent microcontrollers integrated with on-chip debug circuitry accessed by In-circuit emulator via JTAG enables a programmer to debug the software of an embedded system with a debugger.
Some microcontrollers have begun to include a built-in high-level programming language interpreter for greater ease of use. The Intel 8052 and Zilog Z8 were available with BASIC very early on, and BASIC is more recently used in the popular BASIC Stamp MCUs.
Microcontrollers trade speed and flexibility against ease of equipment design and low cost. Manufacturers have to balance the need to minimize the chip size against additional functionality.
Finally, it must be mentioned that microcontroller architectures are available from many different vendors in so many varieties that they could rightly belong to a category of their own. Chief among these are the 8051, Z80 and ARM derivatives.
Atmel ATmega169 (64-pin MLF)