What is Embedded Systems – You may have seen nowadays there are so many small gadgets are available around us. These gadgets are intelligent, they have some programming, some processing unit and more.
They all come under the categories of embedded systems. But if you are finding the exact Definition of embedded systems then you will get lots of different views and you may be confused.
A microcontroller or microprocessor-based system with some hardware and software in it. This must perform the dedicated, single functioned or specific task. And can also be used to perform the time-critical task.
The main key point to be an embedded system is it should perform a single task only. Like a digital wristwatch is always a wristwatch. It can’t change the functionality because the firmware inside is written to perform the timing related calculation. Even a use not having an option to change the functionality that is why it is dedicated.
The application of embedded systems is not limited so we list its application based on the application area. Almost all area containing the embedded system product.
Based on functionality and application area:
Based on performance and architecture:
A system should have the following characteristics:
The embedded system should perform the single given task throughout the life. This feature makes it dedicated and performs the accurately on time. A user of the system can not change the feature or functionality.
There are some contained that should be followed by the system to be an embedded system. The constrained are cost, size, performance and battery life etc.
Means at the time of designing the system the following constrained should be followed tightly. And it takes a lot of expertise to make the system according to the certain rules and design skills.
A reactive system is reacting on a given input. Like in an oven when we press the button to start cooking. It takes input and starts acting. This type of systems is the reactive system.
But what happens if the oven responds in a random interval like some time it starts in 30sec and sometime in 5min. The point is there should be some time limit to start the action. This is called the deadline. Depending on the application this time limit may very.
The systems are divided into two parts based on the deadline
They are smart. There are some key features and based on this the embedded system is so popular. The features are:
A microcontroller or microprocessor-based system performing the dedicated, single function and time-critical task.
No. You will think that the laptop has all the components like microprocessor, hardware and software. But even why it is not an embedded system.
A laptop or desktop computer is general purpose computer. They do all the task like internet surfing, playing game, listing music, software development and other tasks by using respective software application.
There is no fixed or dedicated task it is performing. An embedded system should be single function and dedicated. It should perform one and only one task. Based on the functionality it is not an embedded.
But part of its like ethernet card, sound card, RAM and wifi modules are embedded systems. Because they perform one and only one task.
Microcontroller – It contains the processing element and another functional unit like RAM, ROM, timer-counters, communication port like I2C, SPI, UART and other on-chip features all are fabricated on a single chip.
Means when you design an embedded system using the microcontroller, you will get all the things. And you don’t need to connect too many circuits. The development will be fast, cost-effective and small in size.
Microprocessor – It contains only the processing element. To make a complete system we need to add the basic elements like RAM and ROM external to the processor. Means we first need to make the basic computing system. Then we go for our main task and programming. The overall process will be more technical and sometimes time-consuming for the beginner.
So for the beginner, the microcontroller based embedded systems are better to develop and design.
An embedded system can be programmed using the assembly or embedded c programming language. The program size could be from few lines to hundreds of lines.
Once the program is ready, it is written (flashed) into the ROM space of the system. The firmware is nothing but a piece of program that can be modified by the designer or user by following certain steps.
Some advanced level of embedded systems is programmed in such a way that they can be upgraded in future. Like we are using the mobile phone and we update it when new updates are available. But the firmware is smaller in size and has more control over the hardware.