Microcontrollers are compact integrated circuits designed to control electronic systems and typically combine a processor core with memory and peripheral interfaces on a single chip. A Microcontroller commonly contains a CPU, non-volatile program memory, volatile data memory, timers, counters, digital input/output, serial communication interfaces and analogue peripherals. Unlike general-purpose computer processors, microcontrollers are usually designed for dedicated control tasks and often emphasise predictable operation, low power consumption, low cost and direct interaction with physical hardware. They are ubiquitous in appliances, vehicles, industrial equipment, sensors, toys, instruments and embedded control systems.
The defining characteristic of a Microcontroller is integration around an embedded control function. Program code can be stored in on-chip flash or other non-volatile memory, while SRAM or another volatile memory type stores runtime data. Peripherals can include general-purpose input/output pins, analogue-to-digital converters, digital-to-analogue converters, pulse-width modulation units, timers, watchdog timers and communication controllers. Because these peripherals are integrated, the microcontroller can directly sense inputs and control outputs without requiring a large collection of external support chips. This integration contributes to low system cost and compact physical design.
Microcontrollers operate according to firmware stored in their program memory. On startup, the processor executes reset code that establishes hardware configuration and begins application execution. Firmware can poll peripherals continuously or respond to interrupts generated by timers, communication interfaces, sensors or external events. Interrupts allow the processor to suspend normal execution temporarily and service time-sensitive events. Real-time applications depend on predictable timing, and microcontrollers often provide hardware features specifically intended to make timing control straightforward. Some systems use a real-time operating system, while simpler devices execute a single main program loop with interrupt-driven peripheral handling.
Microcontrollers are available in many architectures and performance classes. Small devices may contain an inexpensive eight-bit or sixteen-bit CPU and only a modest amount of memory, while modern thirty-two-bit microcontrollers can provide substantial processing capability, floating-point support, sophisticated timers and extensive connectivity. Low-power microcontrollers are optimised for battery-operated sensors and wearable devices. Automotive microcontrollers often include specialised communication interfaces and safety features. Industrial microcontrollers may provide deterministic timing, high reliability and specialised analogue or control peripherals. Selection depends on memory requirements, processing workload, I/O count, voltage, peripheral needs, environmental conditions, power budget and development ecosystem.
Microcontrollers are particularly important in embedded systems because they interact directly with physical processes. A thermostat can read temperature sensors and control heating equipment, a motor controller can generate pulse-width-modulated signals, and a washing machine can monitor switches, valves, motors and safety sensors. Automotive systems use numerous microcontrollers for functions such as body electronics, engine control, braking, steering, sensing and communication. Industrial equipment can use them for instrumentation and machine control. The same basic architecture can therefore support extremely different applications because software and peripheral configuration determine the device's particular behaviour.
Low-power operation is a major design consideration. Microcontrollers can enter sleep or standby modes in which much of the circuitry is disabled while selected peripherals remain active. Interrupts can wake the processor when an event occurs. Clock gating, voltage scaling and peripheral shutdown can further reduce energy consumption. This makes microcontrollers suitable for battery-powered systems that spend most of their time waiting for events. However, energy efficiency depends on the entire system, including sensors, communication modules, voltage regulators and external components. A highly efficient microcontroller cannot compensate for an application that continuously operates power-hungry peripherals.
Microcontrollers differ from Microprocessors primarily in integration and intended application. A general-purpose microprocessor traditionally requires external memory and peripheral controllers and is optimised for running complex operating systems and applications. A microcontroller integrates much of the supporting hardware and is commonly used for dedicated embedded control. The distinction is not absolute because modern processors can integrate peripherals and modern microcontrollers can run sophisticated operating systems. Microcontrollers also differ from programmable logic devices because their behaviour is primarily defined by sequential software execution, whereas programmable logic implements configurable hardware structures.
Microcontroller development has evolved from simple firmware-controlled devices to highly capable embedded computing platforms with connectivity, security, machine-learning acceleration and advanced real-time features. Modern microcontrollers may include cryptographic accelerators, secure enclaves, USB, Ethernet, wireless interfaces and hardware safety mechanisms. Their limitations include restricted memory, computational resources and peripheral bandwidth compared with desktop-class processors. Nevertheless, their combination of low cost, integrated peripherals, deterministic control and low energy consumption makes them fundamental to the Internet of Things and embedded electronics. A large proportion of everyday electronic products contain microcontrollers even when users never interact with them directly.