An Arduino is a development platform for creating embedded systems, which are self-contained computer systems with a dedicated function, often built around a microcontroller.
Outline
• Types ofComputer: Embedded Systems v/s
General Computing Systems
• History of Embedded Systems
• General view of an embedded system
• Hardware elements in an embedded system
• Software elements in an embedded system
• Classification of Embedded Systems
• Major application of Embedded Systems
• Purpose of Embedded Systems
• Components of Embedded Systems
• Challenges and Limitations of Embedded
Systems
Embedded
System
What is an
EmbeddedSystem
• An embedded system is a computer system designed to perform a specific task (usually with very
specific requirements) or a set of tasks within a larger device.
• Ex: Mobile phones, MP3Player, Digital camera, washing machine, microwave oven
• Unlike general-purpose computers (like laptops or desktops), embedded systems are usually
optimized for efficiency, reliability, and real-time performance.
• Since the system is dedicated to a specific task, design engineers can optimize it and reduce the size
and cost of the product.
• Power Constraint and performance requirements
• Embedded systems are often mass-produced, so the cost savings may be multiplied by millions of
items.
Embedded
System
5.
EMBEDDED SYSTEM &GENERAL-
PURPOSE COMPUTER
Embedded
System
• Embedded System is a specialized computer system designed to perform a specific
function within a device.
• General-Purpose Computer is a computer designed to perform a wide range of tasks and
applications (e.g., PCs, laptops).
Feature Embedded System General-Purpose Computer
Purpose Dedicated, specific task Multiple tasks, flexible
Hardware Microcontroller / SoC High-performance CPU, GPU
Memory & Storage Limited Large and expandable
Operating System Firmware / RTOS Windows, Linux, macOS
Real-Time Often required Not necessary
Examples
Washing machine, ECU, IoT
sensor
Laptop, PC, Server
6.
History of
Embedded Systems
Embedded
System
1960s
Military& space origins
(missiles, Apollo).
1970s
Birth of microprocessors
& microcontrollers.
1980s
Widespread consumer
use (home appliances,
RTOS).
1990s
Automotive, telecom,
networking boom.
2000s
Internet, SoCs, open-
source OS in devices.
2010s
IoT explosion.
2020s
AI-driven, edge computing,
5G-enabled embedded
systems .
7.
1960s – TheBeginning
• The concept of embedded systems started when computers were first used inside
machines to control them.
• 1961: Autonetics (a division of North American Aviation) developed the D-17B computer for
the Minuteman I missile guidance system – considered one of the first embedded systems.
• 1969: The Apollo Guidance Computer (AGC) used in NASA’s Apollo missions is another
famous early embedded system.
8.
1970s – TheRise of Microprocessors
• 1971: Intel released the Intel 4004, the first commercial microprocessor, which laid the
foundation for embedded systems.
• 1974: Development of microcontrollers began (single chips with CPU, memory, and I/O).
• Embedded systems started appearing in automobiles, calculators, and industrial machines.
• The term “embedded system” became common.
9.
1990s – Networkingand Mobile
• Embedded systems became key in telecommunications (mobile phones, network
equipment).
• Development of 32-bit microcontrollers made devices more capable.
• Automotive industry adopted embedded systems heavily (engine control units, ABS,
airbags).
• Embedded systems became connected to networks, paving the way for the Internet of
Things (IoT).
10.
2000s – TheInternet & Smart Devices
• Explosion of smartphones, PDAs, and consumer gadgets with embedded systems.
• Wireless communication (Wi-Fi, Bluetooth) integrated into embedded devices.
• Linux and other open-source operating systems started being used in embedded
platforms.
• Rise of System-on-Chip (SoC) technology, combining CPU, GPU, memory, and I/O in a
single chip.
11.
2010s – IoTEra
• Internet of Things (IoT) became mainstream – billions of connected devices rely on
embedded systems.
• Embedded systems appeared in smart homes, healthcare, industrial automation, and
wearables.
• ARM processors became the dominant architecture in smartphones and IoT devices.
12.
2020s – AI& Edge Computing
• Embedded systems now integrate Artificial Intelligence (AI) and Machine Learning (ML) for
real-time decisions (e.g., face recognition, autonomous driving).
• Edge computing allows processing data locally on embedded devices without always
sending it to the cloud.
• Ultra-low-power embedded systems for 5G, LoRaWAN, smart cities, and healthcare are
being developed.
13.
General view ofan
embedded system
System Inputs
These are signals or data coming from the outside world.
Examples: sensor readings (temperature, pressure, speed), button presses, or
communication signals.
Software Components
Instructions, algorithms, or firmware that tell the system how to behave.
Example: code that decides when to turn on a fan if temperature > 30°C.
Hardware Components
Physical parts such as microcontrollers, processors, memory, and I/O devices.
They execute the software instructions and interact with the physical world.
Hardware provides status/data back to software.
Software gives commands to hardware.
System Outputs
These are the results or actions taken by the embedded system.
Examples: turning on a motor, displaying data on a screen, sending data to the
internet, or activating an alarm.
14.
Hardware elements in
anembedded system
Communication ports for serial and/or parallel information exchanges
with other devices or systems. USB ports, printer ports, wireless RF and
infrared ports, are some representative examples of I/O
communication devices.
User interfaces to interact with humans. Keypads, switches, buzzers
and audio, lights, numeric, alphanumeric, and graphic displays, are
examples of I/O user interfaces
Sensors and electromechanical actuators to interact with the
environment external to the system. Sensors provide inputs related to
physical parameters such as temperature, pressure, displacement,
acceleration, rotation, etc
Data converters (Analog-to-digital (ADC) and/or Digital-to-Analog (DAC)) to allow interaction with analog sensors
and actuators. When the signal coming out from a sensor interface is analog, an ADC converts it to the digital format
understood by the CPU. Similarly, when the CPU needs to command an analog actuator, a DAC is required to change
the signal format.
15.
Software structure in
anembedded system
System Tasks
• The application software in embedded systems is divided into a set of
smaller programs called Tasks.
• Each task handles a distinct action in the system and requires the use of
specific System Resources.
• Tasks submit service requests to the kernel in order to perform their
designated actions.
System Kernel
• The software component that handles the system resources in an embedded
application is called the Kernel.
• System resources are all those components needed to serve tasks. These include
memory, I/O devices, the CPU itself, and other hardware components.
• The kernel receives service requests from tasks, and schedules them according
to the priorities dictated by the task manager.
16.
Software structure in
anembedded system
Services
• Tasks are served through Service Routines.
• A service routine is a piece of code that gives functionality to a system
resource. In some systems, they are referred to as device drivers.
• Services can be activated by polling or as interrupt service routines (ISR),
depending on the system architecture.
17.
• Stand-alone EmbeddedSystems: Work independently without a host
computer.
Example: Microwave oven, Washing machine.
• Real-Time Embedded Systems: Provide output within a strict time limit.
Example: Airbag system in cars, Pacemaker.
• Networked Embedded Systems: Connected to a network (LAN, WAN,
Internet) for communication.
Example: Smart home devices, IoT sensors.
• Mobile Embedded Systems: Small, portable devices with limited
resources.
Example: Smartphones, digital cameras.
Classification of
Embedded Systems
1. Based on Functionality
18.
• Small-Scale EmbeddedSystems
⚬ Use 8-bit or 16-bit microcontrollers.
⚬ Low cost, simple tasks.
⚬ Example: Toys, simple remote controllers.
• Medium-Scale Embedded Systems
⚬ Use 16-bit or 32-bit microcontrollers, often with RTOS.
⚬ More complex tasks.
⚬ Example: Smart appliances, car dashboards.
• Sophisticated (Large-Scale) Embedded Systems
⚬ Use powerful processors, often multi-core with networking.
⚬ Example: Air traffic control systems, Autonomous vehicles.
Classification of
Embedded Systems
2. Based on Performance and Power
19.
• Hard Real-TimeSystems
⚬ Must strictly meet deadlines; failure can be catastrophic.
⚬ Example: Aircraft control, Medical devices.
• Soft Real-Time Systems
⚬ Missing a deadline degrades performance but is not fatal.
⚬ Example: Streaming audio/video, Online transactions.
Classification of
Embedded Systems
3. Based on Real-Time Operation
20.
• Consumer Electronics
Cameras,Smart TVs, Home appliances.
• Automotive
Engine Control Units (ECU), ABS, Airbags.
• Industrial
Robotics, CNC machines, Process controllers.
• Medical
Pacemakers, MRI machines, Infusion pumps.
• Telecommunication
Routers, Switches, Mobile phones.
• Defense/Aerospace
Drones, Missile guidance, Satellites.
Major application of
Embedded Systems
Based on Application Domain
The Purpose of
EmbeddedSystems
Enabling Real-Time Functionality
Enhancing System Reliability and Safety
Enabling Connectivity and Internet of Things (IoT)
Enabling Automation and Control Systems
Challenges and Limitationsof
Embedded Systems
• Power Consumption and Efficiency
The purpose of embedded systems is often to provide continuous operation in remote or
portable devices, such as wearable devices or Internet of Things (IoT) sensors. Thus,
minimizing power consumption is crucial to ensure the devices can function for extended
periods without frequent recharging or battery replacements.
• Security and Privacy Concerns
Unauthorized access to an embedded system can lead to theft or manipulation of sensitive data,
and even compromise the overall system’s security and functionality
• Scalability and Upgradability
due to the limited resources and hardware constraints of embedded systems, scaling up or
upgrading them can be challenging.