Professional Documents
Culture Documents
00 2
00 2
01 02 03
Input Process output
3
Systems
Example of systems :
Stopwatch is a good example of a system that involves input, output, and
processing. Here's how the different components of a stopwatch system work
together:
01 02 03
Input Process output
The user presses a button to
Once the user presses the The display on the stopwatch
start the stopwatch.
button, the stopwatch begins shows the elapsed time to the
This button press is the input
processing the time user. The display is the output
to the system.
of the stopwatch system.
4
Bread preparation is an example of a system that
involves inputs, outputs, and processing
1
Input
3
Process
Output
5
Computer system
There are many different systems
that are used in everyday life, and Input devices Process Output devices
the computer system is one of these
systems.
Microcontroller
• Microcontroller unit, is a small computer system that is designed to perform specific tasks.
• Used in a wide range of applications like remote controls and automobiles
• All integrated onto a single chip. It's designed to be a self-contained system that can perform its task without the need for
external components or hardware.
Embedded Systems
What is the meaning of Embedded :
Embedded systems are computer systems that are designed to perform specific tasks or functions within
a larger system or device.
Constraining Embedded
8
Any Embedded Systems Must Be :
low-cost
Small Size
Advantages
High Performance
10
The Raspberry Pi is a big buffet and you choose what you
want from it in order to get the microcontroller that will
spend you and the microcontroller is the dish that you will eat
Raspberry pi Microcontroller
11
Comparison between
MCU Raspberry pi
raspberry pi and MCU
RAM 2KB RAM 4-8GB
90%
Memory:
Raspberry Pi typically has much more
ROM 32KB ROM Up to 2 TB
memory than MCUs. For example, the latest
Raspberry Pi 4 model comes with up to 8GB
of RAM
Speed 16 MHz Speed 1.5- 1.8 GHz
while MCUs typically have only a few
kilobytes to a few hundred kilobytes of
memory.
This difference in memory capacity allows
Raspberry Pi to run more complex software
applications
12
Comparison between
MCU Raspberry pi
raspberry pi and MCU
RAM 2KB RAM 4-8GB
90%
Processor speed:
Raspberry Pi is generally much faster than
ROM 32KB ROM Up to 2 TB
MCUs in terms of processor speed.
The latest Raspberry Pi 4 model has a quad-
core ARM Cortex-A72 CPU with a clock
Speed 16 MHz Speed 1.5- 1.8 GHz
speed of up to 1.5GHz,
while MCUs typically have much slower clock
speeds, ranging from a few megahertz to a
few hundred megahertz.
This difference in processor speed allows
Raspberry Pi to perform more complex
computations and handle more data-
intensive tasks.
Do we embedded a microcontroller or a Raspberry Pi
in the washing machine?
System on board (SoB) VS System on chip (SoC)
Ex : Raspberry Pi Ex : Microcontroller
Size : Size :
Cost : Cost :
Performance : Performance :
Power : Power :
• to talk to computer you need to give it instructions in a way that it can understand.
Machine language
consists of binary code, which is a series of 0s and 1s that represent the basic instructions that a computer can execute.
Each machine language instruction corresponds to a specific operation that the computer can perform,
such as adding two numbers represent as : 010 10 110
Operations-Operand1-Operand2
Operations : Operations can include arithmetic (e.g. addition, subtraction, multiplication, division),
logical (e.g. AND, OR, NOT), comparison (e.g. equal to, less than, greater than), and others.
Operand is a value or variable that is used in an operation.
Example : "5 + 3", the operands are the values 5 and 3, and the operation is addition.
Assembly Language :
Machine language is difficult to write and understand, so programmers developed other languages called
low-level programming languages to make programming easier.
Among these languages is Assembly language, which is closer to human language and easier to
understand than machine language.
Tool Chain
Machine languge
20 20
Why C in Embedded Systems
Portability
C is a portable language that can be compiled to machine code for a
01 wide range of hardware platforms, making it an ideal choice for
embedded systems that need to run on different hardware
architectures.
Intermediate language
21
Tool chain
What is the Tool chain :
A tool chain in the context of C programming refers to a set of software tools used in the development of C
programs. The tool chain typically includes a compiler, linker, assembler, and various other tools for building
and debugging C programs.
There are several popular tool chains used in C programming, depending on the specific needs and
requirements of the project.
Some of the popular tool chains are:
Clang/LLVM
GCC toolchain: GCC Keil toolchain
toolchain
(GNU Compiler Collection)
22
GCC
GNU Compiler Collection
The GNU Compiler Collection (GCC) is a popular open-source compiler system that supports several
programming languages, including C, C++
GCC
GNU
Unix
23
Native tool chain VS cross tool chain
Native tool chain Cross tool chain
24
TEC
THANK