INTRODUCTION TO EMBEDDED STSTEM
Software Hardware Application
Embedded systems are a combination of hardware and software. Also we can define an embedded system in various points. An embedded system has specific requirements and performs pre-defined tasks. An embedded system is a programmed hardware device.
Where it Required
Any device that measures, stores, controls, calculates, or displays information is a candidate for putting a micro-controller inside.
Embedded System Development Process
- Determine the requirements
- Design the system architecture.
- Select the operating system.
- Choose the processor and associated peripherals.
- Choose the development platform.
- Coding issues
- Optimize the code according toย code optimization guidelines.
- Verify the software on the host system &target system.
Application Knowledge
There are two types of Application requirement
Application requirement
Functional Requirements โ Specifies the hardware requirement
Non-Functional Requirements โ specifies cost, power consumption, size
DEVELOPMENT PLATFORM
The program or code of embedded system is based or depends on choosing micro-controller. Most of the micro-controllers use C programming. Like Raspberry Pi supports Python language.
LANGUAGE
Basically or technically we can define language is a communication media. It is divided into two.
They are low level language and High level language.
Again low level language is divided into two. They are Machine language and Assembly language.
What is Machine language? It is the combination of binary numbers. The system only understand this language. So its execution is very fast. But we have difficult to develop a program in this language.
What is Assembly language? In this we develop program with the help of mnemonic codes that means Instruction set. This language is easier than machine language for us. We can understand this. But the system only can understand machine language so we want to convert assembly to machine language so we use assembler. And one more thing is each controllers have different instruction sets.
Assembly level language
Org 4000h
mov a, #10h
mov b, # 20h
cjne a,b ,Label1
mov r0,a
sjmp Label2
Label1: setb psw.3
mov r0,a
Label2:
end
What is high level language? It is the combination of alphabets,numeric and mathematical operators. It is very useful and understandable language like python java etc. C is a powerful middle level language. We want to convert high level language to machine language so we use compiler.
#include< reg51.sfr>
Void main()
{
int A=10;B=20;
if( A==B)
R0=A;
else {
Psw.3 = 1;
R0 =A;}
}
Native Compiler
Native compiler is a program which converts a high level programming language to machine understandable format with respect to the target processor available in the system box.
Cross Compiler
Cross compiler is a program which converts a high level programming language to machine understandable format with respect to the target processor selected in the cross compiler software.