Hi Guys! I welcome you on board. In this post today, we’ll discuss the components of embedded systems.
An embedded system is a custom-built special purpose computer used for a specific purpose. It is a system that combines both hardware and software to perform a certain task.
It can be used as an individual system or a part of another large system. You will find embedded systems incorporated in a range of applications including consumer electronics, industrial machinery, automobiles, agriculture, processing industrial devices, airplanes, digital watches, vending machines, air-conditioners, mobile devices, and much more.
To understand the embedded system, we need to understand the difference between a special-purpose computer and a general-purpose computer. General-purpose computers are those that we use every day like our desktops, laptops, and Macs. Even our smartphones stand in the general-purpose end of the spectrum which means they have more than one specific task to perform. Special purpose computers are very specific to serve a particular function. A calculator is a special-purpose computer as compared to a laptop that is a general-purpose computer. The only job of a calculator is to do calculations. You cannot use it for more than one purpose like general-purpose computers.
An automated system that doesn’t involve human interference is also an example of an embedded system. For example, you can interface the conveyer belt with the sensor to count the number of filled bottles. Once you install a combination of both hardware and software embedded programming, you can watch the number of filled bottles on the computer screen without any human interference. The devices that perform certain tasks where no user is involved are termed as the no user interface (UI) embedded systems and where user interference is involved are termed as graphical user interface (GUI) embedded systems.
Read this post all the way through as we’ll discuss the basic components of embedded systems in detail.
Let’s get started.
Components of Embedded Systems
This section is dedicated to the hardware components of embedded systems. In the following section, we’ll cover the software components used for the embedded systems.
1. Power Supply
- A power supply is a crucial component of the embedded system design.
- It is an electrical device mainly used to power up the electrical load.
- Normally, a 5V power supply is required for the system, however, it can also range from 1.8 to 3.3V.
- You can pick either one based on your requirements and application.
To work the embedded system properly, a smooth and efficient power supply is needed. Both wall adopter and battery can be used as a power supply. Some power supplies work as independent equipment while others are incorporated into the embedded technology they power.
- An embedded system is either a microcontroller-based or microprocessor-based system. They give a system computing power and are called integrated circuits.
- The embedded hardware performance is mainly dependent on the processor which is normally called the brain of the embedded system.
- Pick from a range of processors including 8-bit, 16-bit, and 32-bit processors.
- They are different in terms of processing speed. For example, a 32-bit processor comes with more processing speed and can manipulate 32-bits at a time while an 8-bit processor comes with less processing speed and can manipulate 8-bits at a time.
For simple applications, an 8-bit processor would suffice while for complex and advanced applications, processors with more bits are used. The 8-bit processor is normally clocked to 8MHz while the 32-bit processor can run up to hundreds of MHz.
- Memory is essential to store important information in the embedded computer system.
- Memory is integrated into a microcontroller or microprocessor.
There are two types of memories including ROM (read-only-memory) and RAM (random access memory). The former is called the code memory that stores the program code and is non-volatile which means it stays stored in the system when the power supply is removed. While latter is called the data memory and is a volatile memory which means it is used for temporally storing the information and is removed from the system when the power supply is turned off.
4. Timers / Counters
Sometimes you need to create a delay before a specific function. Timers are used in such cases. While at times you want to count the number of times a particular event occurs. Counters are used in such cases. If an up counter is used in the system, it will count up from the initial value to 0xFF and if it is down counter, it will count down to 0x00. The counters are integrated using register-type circuits like a flip-flop.
5. Communication Ports
Communication ports are used in embedded systems to establish communication with other embedded systems. There are several communication ports including USB, UART, USB, I2C, SPI, and RS-485. For simple applications, communications ports are utilized from the microcontroller, and for complex and advanced applications these ports are externally installed inside the embedded systems.
6. Output and Input
Input is required to interact with the embedded system. A sensor can be used to provide input to the system. The microcontroller used in the system can be configured as an input or output port. In the microcontroller, there are a fixed number of input and output ports that you can utilize as per your requirement.
7. Electrical Circuit
You need to design an electrical circuit based on your application. The following are the basic circuit components that can be used in an electrical circuit.
a. PCB (printed circuit board)
A PCB is an essential part of the electrical circuit. It is a mechanical circuit board that electrically connects the electronic components with conductive copper traces. Before making the electrical design on the PCB, you need to design the electrical circuit on the PCB simulation software to test if the required design will work in reality. Making electronic circuits with PCB is cheaper and more efficient than point-to-point and wire wrap construction.
A resistor is an electrical component mainly used to produce resistance in the current flow. It is mainly employed to reduce the flow of current, for adjusting the signal levels. In power distribution systems and motor controls, resistors with high power are used that can dissipate more heat in the form of energy. Resistors are further divided into two types i.e fixed resistors and variable resistors.
The resistance of fixed resistors changes with temperature and variable resistors can be utilized as sensing devices for humidity, light, force, and heat. The resistor’s electrical function is dependent on its resistance. The more the resistance, the more it will create resistance in the current flow.
A capacitor is a two-terminal electrical device mainly employed to store energy. The capacitance of the capacitor is commonly known as the effect of a capacitor. Capacitors are available in various forms though, most capacitors come with two electrical conductors which are separated by a dielectric material. Capacitors are widely used in many applications for various purposes including smoothing, bypassing, and filtering the electrical signal. Capacitors store energy and release it when it is required by the circuit.
Transistors are used in the electrical circuit for amplification and switching purposes. They are divided into two main types i.e. bipolar junction transistors and MOSFETs (metal-oxide-semiconductor field-effect transistors). The former is the current-controlled device and comes with terminals like base, collector, and emitter.
The latter is the voltage-controlled devices and comes with terminals like a drain, source, and gate. They are used in a range of applications including computers, stoves, pacemakers, aircraft, motor control, and much more. Their working principle is simple and straightforward. The small current at one terminal is used to produce a large current at the remaining terminals. This phenomenon is used for amplification purposes.
A diode is an electrical component that uses PN-junction and allows the current to flow in one direction only. Mostly didoes are made of semiconductor material like silicon but some diodes are also composed of germanium. Diodes are used in a range of applications including signal mixers, switches, voltage regulators, logic gates, clippers, limiters, clampers, and gain control circuits.
f. Integrated Circuits
An integrated circuit is a chip that combines various electrical components into a single chip. An IC is a ready-made chip that you incorporate into your electrical project without having to include lots of capacitors and resistors. A small integrated chip can work as an oscillator, amplifier, microprocessor, timer, and computer memory. If you open the CPU of your computer, you will find scores of ICs integrated into the motherboard of the computer. A single IC can hold hundreds of thousands of resistors, transistors, and capacitors inside.
LED (light-emitting diode) is widely used in electronic circuits. LEDs are included in circuits for some indication to check if the circuit is working properly. This electrical component is so reliable and can last decades without decaying. Using LEDs you can identify the state of current in an electrical circuit. For example, you can integrate LED into your circuit where the blinking of LED will indicate the circuit is working properly.
An inductor is an electrical component used to store energy in an electric field in the presence of an electrical current. The inductors come with an insulated wire that circles the coil. These electrical components work on Faraday’s law of induction where the electric motive force is induced in the conductor by varying magnetic fields in the presence of current passing through the coil. Inductors are employed to block AC while permitting the DC to flow. Inductors utilized for this purpose are named… chokes.
Embedded System Software Components
Recall, an embedded system is a combination of both hardware and software modules. We have briefly explained above the hardware embedded system components. This portion is dedicated to software components of embedded systems. Both computer software and embedded system software are different in terms of their purposes. The computer software can be installed on many devices to achieve the required goals while embedded system software, on the other hand, is specifically written for a certain device to meet a certain goal.
The following are the software components of embedded system.
- The editor is the first tool you required for embedded system software.
- The code you write in C and C++ programming languages will be saved in a text file in the editor.
- Geany editor is a great example of a text editor.
- This editor supports scores of languages including Java, C, HTML, Python, PHP, Pascal, and Pearl.
- The code is written in a text editor. But how does a machine understand this code?
- A compiler is used to turn this written code into low-level machine language that the machine can comprehend.
- The main purpose of this tool is to develop an executable program.
- The name ‘compiler’ is mainly used for the written programs that convert high-level programming language source code into a low-level programming language.
- The assembler tool converts the written code into a machine language. It is slightly different than a compiler.
- The compiler directly converts the written code into machine language while the assembler, on the other hand, first converts source code to object code and then to the language that the machine can understand.
- The main task of the emulator is to make the embedded system act like a real system in a simulation environment.
- Using an emulator, you’ll get an idea of how the code will function in real-time. It is used to simulate software performance, and it helps in achieving the ideal performance of the written code.
- With an emulator, you can run one operating system into another device. For example, using an emulator you can run Mac operating system into your windows operating system.
- Typically, software code is written in small modules and pieces.
- A linker, also called a link editor, is a tool that takes one or more object files and combines them to develop a single executable code.
- A debugger is a tool used for testing and debugging purposes. It scans the code thoroughly and removes the errors and bugs, and identifies the places where they occur.
- Programmers can quickly address the errors and fix them.
That’s all for today. Hope you find this article helpful. If you have any questions, you can approach me in the section below. I’d love to help you the best way I can. Feel free to share your valuable feedback and suggestions around the content we share. They help us produce quality content customized to your exact needs and requirements. Thank you for reading this article.