openskills.info
Course Preview

Embedded Systems Fundamentals

An embedded system is a computer built into a larger product to sense inputs, control hardware, communicate, or perform another dedicated function. Its software and electronics are designed together under timing, memory, power, cost, and reliability constraints.

itComputer architecture and hardware

Embedded Systems Fundamentals

An embedded system is a computer that forms an integral part of a larger system. It reads the physical world through inputs, computes a response, and changes the world through outputs. A thermostat, motor drive, keyboard, medical sensor, and network router can all contain embedded systems. The computer is present to perform the product's function rather than to serve as a general-purpose workstation.

Most small embedded systems center on a microcontroller unit, or MCU. An MCU combines a processor core, program memory, working memory, and peripheral controllers in one integrated circuit. The processor executes instructions. Flash memory retains firmware without power. Static random-access memory, or SRAM, holds stacks, variables, and buffers while the system runs. Peripherals connect the processor to timers, analog signals, digital pins, and communication buses.

This integration changes engineering priorities. A desktop program can assume an operating system, abundant memory, and replaceable hardware. Firmware often runs from reset with no process loader, no virtual memory, and a fixed hardware design. It may have kilobytes rather than gigabytes of memory. It may need to react before a deadline, sleep between events, survive unexpected resets, and remain serviceable for years.

The control path

A useful mental model is a repeating control path:

physical event → sensor or input → peripheral → firmware → peripheral → actuator or output
                                      ↑             ↓
                                  interrupt      stored state

A peripheral translates between the processor's digital execution and an external function. A general-purpose input/output pin can read a switch or drive an indicator. An analog-to-digital converter samples a voltage. A timer measures elapsed time or produces pulse-width modulation. A UART, SPI controller, or I²C controller exchanges data with another device.

Peripherals commonly expose control and status registers at memory addresses. Firmware reads and writes those memory-mapped registers using normal load and store operations. The device data sheet defines each register, bit field, electrical limit, and timing requirement. A hardware abstraction layer or device driver can wrap those details, but it cannot remove the underlying hardware contract.

The processor can poll a status register until an event occurs. Polling keeps control flow visible but consumes processor time while nothing changes. An interrupt lets hardware request attention. The processor pauses ordinary execution, saves enough context to resume later, and enters an interrupt service routine. The routine should capture or acknowledge the urgent event and defer longer work when possible. A long routine delays other interrupts and makes response time harder to bound.

Continue the course

This section is part of the paid course.

See pricing to subscribe, or log in if you already have access.

Where this skill leads

Relevant careers

See how this topic contributes to broader role-level skill maps.

Sources