Panel For Example Panel For Example Panel For Example

Choosing Peripherals for Embedded Systems

Author : Adrian March 20, 2026

 

Overview

Aside from selecting the processor, peripheral components are an important part of embedded systems. Common peripherals include memory, clock sources (oscillators), timers, communication interfaces, input/output, and analog-to-digital converters. These components should be chosen based on the system's actual requirements. This article describes the types of these peripherals and the factors to consider when selecting them.

 

Memory types and characteristics

memory

Memory is a key component in embedded systems for storing program code, data, and other information required for system execution. In addition to on-chip memory provided by microcontrollers, external memory can be added. Different memory types serve different purposes.

Flash memory is a common non-volatile memory type used to retain data even after reset or power loss. It typically stores program code, firmware, and other persistent data. Flash offers fast read speeds and relatively low power consumption. Flash comes in NOR and NAND variants with different read/write characteristics and use cases.

Random-access memory (RAM) is volatile memory used for temporary storage of data required during program execution. RAM offers fast read/write performance but loses stored data after reset or power loss. Common RAM types in embedded systems include SRAM (static RAM) and DRAM (dynamic RAM).

EEPROM (electrically erasable programmable read-only memory) is non-volatile and can be erased and reprogrammed, making it suitable for storing configuration parameters, calibration data, and other persistent information.

Some systems use external memory cards such as SD and MicroSD to expand storage capacity.

When selecting memory, consider cost, read/write speed, required capacity, power consumption, and endurance. Mobile and battery-powered systems often need low-power memory. Some applications require long write/erase lifetimes. Integrating multiple memory types on a single chip can save space and simplify design, while external storage devices provide scalability.

 

Clock sources for synchronization

Clock source ensures synchronized operations

Microcontrollers may include internal RC oscillators made of resistors and capacitors, or they may rely on external frequency sources to maintain timing. Clock sources synchronize system operations such as processor execution and peripheral communication. Common clock source types include:

RC oscillator: Built from resistors and capacitors, RC oscillators are temperature dependent and their frequency can vary by about 1-5%. They can satisfy slow timing requirements such as low-frequency ADC sampling.

Crystal oscillator: External crystal oscillators provide high accuracy and stability. Frequency variation is typically measured in parts per million (ppm) rather than percent. Crystal oscillators are suitable for applications requiring precise timing and are often paired with microcontrollers and processors.

Ceramic resonator: Lower cost than crystals but with lower accuracy and stability. Ceramic resonators may have tolerances on the order of 10%, so they suit cost-sensitive applications with relaxed timing requirements.

MEMS oscillator: Micro-electro-mechanical systems oscillators are compact, vibration resistant, and low power. Their accuracy is generally lower than crystal oscillators but they are well suited for size-constrained, low-power, vibration-prone applications.

Oscillator modules integrate an oscillator and related circuitry to provide a convenient external clock source and simplify system design.

GPS module: By receiving GPS signals, a GPS timing module can provide high-precision time synchronization for applications that require highly accurate timing.

Real-time clock (RTC): Low-power RTCs maintain timekeeping through power loss and are used when the system must retain wall-clock time across power cycles.

When choosing a clock source, consider accuracy and stability first, then cost, power consumption, integration level, and the operating environment such as temperature and vibration, as well as any synchronization requirements.

Timers are common hardware modules used to generate time bases for timing and counting operations. Timers produce precise delays and measure time intervals for tasks such as communication protocols and sensor polling. Counters track occurrences of external events, such as pulse counting or frequency measurement, and are used in devices like meters and step counters. Select timers and counters based on required precision and timing range.

 

Communication interfaces for hardware data exchange

Communication interfaces enable data exchange between hardware modules and are generally classified as parallel or serial. Parallel communication transmits multiple bits simultaneously over multiple lines, requiring wider data buses and more I/O lines and wiring. Serial communication transmits one bit at a time over a single line, reducing I/O and wiring complexity.

Serial communication can be synchronous or asynchronous. Asynchronous serial transfers do not require a shared clock signal, whereas synchronous serial requires a shared clock signal across devices to synchronize data transfers. Synchronous serial can achieve higher speeds at the cost of an additional timing line.

Transfer modes include simplex (one-way), half-duplex (two-way but only one direction at a time), and full-duplex (simultaneous two-way communication).

I2C bus protocol

I2C is a two-wire serial bus that allows multiple endpoints to communicate with one or more controllers. I2C is typically half-duplex and supports data rates from 0.1 to 5 Mbit/s depending on bus configuration. It is commonly used for low-speed peripherals such as temperature sensors and EEPROMs.

SPI serial peripheral interface protocol

SPI is a full-duplex, synchronous serial interface that commonly uses 3 or 4 lines. SPI requires a shared clock signal and can reach high data rates, often up to tens of megabits per second for nearby devices. The trade-off is higher I/O pin usage. SPI is widely used for memory, sensors, and displays.

UART protocol

UART is a bidirectional asynchronous serial interface configurable for simplex, half-duplex, or full-duplex communication. UART is typically slower and used for one-to-one links. Many systems include multiple UARTs to support several devices such as sensors or GPS modules.

Other common interfaces include CAN, Ethernet, USB, and various wireless interfaces. When selecting a communication interface, consider required data rate, transmission distance, power consumption, cost, integration level, real-time requirements, durability, and software support.

 

Input/Output and signal conversion

I/O interfaces connect and control external devices, sensors, and displays. GPIO (general-purpose input/output) pins can be configured as inputs or outputs and are used for buttons, LEDs, switches, and other simple peripherals.

ADC (analog-to-digital converter) modules convert analog signals to digital data for reading sensors such as temperature and light. DAC (digital-to-analog converter) modules convert digital signals to analog outputs for functions such as audio generation.

 

Selection summary

Product type Selection advice
Memory Choose memory type based on intended use. Consider cost, speed, capacity, power consumption, endurance, integration, and expandability.
Clock source Select clock source based on required accuracy and stability. Also consider cost, power consumption, integration, environmental conditions, and synchronization needs.
Communication interface Choose based on required functionality, data rate, transmission distance, power consumption, cost, integration, real-time needs, durability, and software support.

 

Conclusion

Peripheral components for embedded systems cover a wide range and offer diverse options. Select components that meet the specific requirements of the application.

Recommended Reading
Determinism in Embedded Real-Time Systems and EDMS

Determinism in Embedded Real-Time Systems and EDMS

March 20, 2026

EDMS middleware for ADAS/AD: explains data-driven and time-driven scheduling, data determinism, and deterministic recompute with virtual drives for reproducible validation.

Article
Embedded Microprocessor Features and Functions

Embedded Microprocessor Features and Functions

March 20, 2026

Technical summary of embedded microprocessors: their SoC integration, low-power design, real-time capabilities, peripherals, security, and roles in IoT and embedded systems.

Article
Differences: DSP vs Microcontroller vs Embedded Microprocessor

Differences: DSP vs Microcontroller vs Embedded Microprocessor

March 20, 2026

Compare DSP, microcontroller, and embedded microprocessor designs: DSP signal processing optimizations, microcontroller peripheral integration, and power/performance tradeoffs.

Article
Two Embedded Microprocessor Architectures and Their Pros and Cons

Two Embedded Microprocessor Architectures and Their Pros and Cons

March 20, 2026

Overview of embedded microprocessor architectures (CISC vs RISC), trade-offs, advantages and limitations for embedded system design, power, performance, and integration.

Article
What Is an Embedded Microprocessor and Its Uses

What Is an Embedded Microprocessor and Its Uses

March 20, 2026

Survey of embedded microprocessor concepts, architecture, characteristics and applications, highlighting real-time performance, reliability, and trends in IoT and AI.

Article
Three Main Components of an Embedded Microprocessor

Three Main Components of an Embedded Microprocessor

March 20, 2026

Technical overview of the embedded microprocessor architecture, summarizing its three cooperating subsystems and how the compute unit enables arithmetic and logical execution.

Article