Microcontrollers are chips with peripherals in one package. Using microcontrollers reduces the over all costs and speed of embedded designs because main parts are integrated and does not require complicated prototyping, matching external circuits. Soldered PCB boards does not take much space as it would be done with processors.
As all peripherals are in one packed system, there is less energy required. Supply circuit may be simpler and less powerful.
Lets see what main parts microcontrollers have:
1.CPU ? central processing unit. This is a heart of microcontroller. It processes data using commands taken from memory. The CPU consists of ALU (Arithmetic Logic Unit) and registers.
2.Program memory. This is mainly flash memory where program code can be written and rewritten. This code is processed by CPU.
3.RAM for data storing. There are variables and stack stored.
4.EEPROM. EEPROM memory is optional and not included in all microcontrollers. But it is handy for storing constants and calibration data.
5.All microcontrollers are clocked by clock generator. Clock defines the speed of microcontroller. They may be internal or external.
6.Reset circuitry for correct startup of microcontroller.
7.Serial port for data communication between other embedded systems or devices like external memory or sensors.
8.Digital inputs and outputs I/O. Thes I/Os are for controlling external devices like buttons, LCDs.
9.Timers for exact timing.
10.Watchdog timers for controlling correct program flow.
11.ADC (Analog to Digital Converter). This is optional in bigger microcontrollers.
12.UART (RS232) ? standard serial interface interface to communicate to PC.
13.I2C- special serial interface developed by Philips.
There are more specific pheripherals which may vary from device to device like real-time clock, DAC(Digital to Analog Converters), Analog comparators.