Processors & Compute
What is MCU?
Microcontroller
A microcontroller (MCU) is a single chip integrating a processor core, memory, and peripherals, designed to run dedicated firmware for real-time control.
The MCU is the brain of most embedded devices. Choosing the right one — balancing performance, power, peripherals, and cost — is one of the most consequential early design decisions.
What is inside an MCU?
A microcontroller puts a CPU core, flash memory for the program, SRAM for data and a set of peripherals on one chip. Typical peripherals are GPIO, timers, UART, SPI, I²C, ADC and DAC channels, USB and CAN, and on wireless parts a Bluetooth LE, Wi-Fi, Thread or sub-GHz radio. Most modern MCUs use Arm Cortex-M or RISC-V cores running from a few MHz to several hundred MHz.
MCU vs MPU: which one does a product need?
Choose an MCU when the product runs one dedicated job in real time with tight power limits: sensors, motor control, wearables, battery-powered IoT nodes. Choose an MPU when it needs a full operating system such as Linux, a rich display UI, large external memory or heavy networking. An MCU boots in milliseconds and can sleep at microamps; an MPU needs external DRAM, a power-management IC and more board area.
How to choose an MCU
Start from the product's peripherals and power budget, then check memory headroom (leave 30–50% free flash for updates), the radio and certification status if wireless, supply-chain availability, the vendor SDK and RTOS support, security features such as secure boot and a hardware crypto engine, and unit price at your volume. Common families include STM32, Nordic nRF52/nRF54, ESP32, NXP LPC/i.MX RT, Microchip SAM/PIC and Silicon Labs EFR32.
MCU FAQ
- What does MCU stand for?
- MCU stands for microcontroller unit: a single chip with a processor core, memory and peripherals that runs one embedded program.
- Is an Arduino an MCU?
- An Arduino is a development board built around an MCU (for example an AVR ATmega328P or an Arm Cortex-M part); the MCU is the chip on the board.
- Can an MCU run Linux?
- Mainstream embedded Linux needs a memory-management unit (MMU) and tens of megabytes of external RAM, which MCUs lack. MMU-less Linux on high-end Cortex-M parts with external SDRAM exists but is rarely used in products, so MCUs run bare-metal code or a real-time OS such as FreeRTOS or Zephyr instead.