Embedded System & Robotics

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.