Embedded Systems Course Content

Introduction to Embedded Systems

  • Introduction to Embedded Systems, Application areas, Architecture of Embedded systems, Characteristics of an embedded system.
  • Embedded Development Cycle, Processor selection, Harvard Vs Von Neumann Architecture, Concepts of RISC and CISC
  • High level languages through machine level languages. Data type and size, variable, constant, type modifiers, Operators and Expression.
  • If Statement, if-else Statement, nested if-else Statement, if-else ladder, break, continue, go to, switch statement
  • Loops: while, do-while, for, nested loops and example programs
  • Arrays -Single dimensional and Multidimensional arrays
  • Pointers and pointer arithmetic
  • Functions and Recursion
  • Static and Dynamic memory allocation
  • Storage classes and Pre-processor Directives
  • Searching and sorting algorithms
  • Strings
  • File pointers, working with ASCII data files
  • ENUM and Command line arguments
  • Structures and Unions

8051 Microcontroller –Architecture and Programming

  • Introduction to MCS 51 Architecture, memory management, addressing modes
  • Instruction set and Working with Keil IDE.
  • I/O Port construction and Programming
  • Working with timers and counters
  • Implementing serial communication, Interrupt Programming
  • Introduction to Embedded C
  • Interfacing LCD and ADC
  • Interfacing RF and IR Modules
  • Temperature, smoke and Gas sensors interfacing
  • Stepper Motor and DC Motor Interfacing
  • Keypad Interfacing
  • I2C and SPI Protocol
  • Interfacing DS1307 and EEPROM
  • Working with 8051 Simulators
  • Mini project on 8051


  • Introduction to ARM, RISC Vs ARM, Programming model, Advantages of ARM Processor. Core Extensions, Architecture Revisions, ARM Processor Families., ARM Registers, Current Program Status Register, Pipeline and System connect block.
  • Introduction to LPC2129,Pin Configuration , Pin Connect Block , GPIO, Led Programming
  • LCD and Stepper Motor Programming
  • UART Programming and Serial EEROM Interfacing
  • Timers and PWM Programming
  • ADC and RTC Programming
  • Implementing CAN Protocol on LPC 2129
  • Interfacing of LPC2129 with RF and RFID
  • Interfacing of LPC2129 with GSM and GPS
  • Interfacing of LPC2129 with Finger Print Module and Zigbee Module


  • PIC18C / PIC18F Architecture
  • Introduction to MPLAB and C18 IDEs
  • Digital I/O port Programming
  • UART,LCD and ADC Programming
  • Interrupts, RTC and PWM programming



Embedded Android Course Content

Android Basics

  • Introduction to Programming
  • Introduction to C, C++ & Java
  • Introduction to Android
  • Introduction to Embedded Android
  • Introduction to Android Open Source Project (AOSP)

Android Architecture

  • Android OS internals
  • Android Framework
  • Getting Android sources
  • Install ADK, Eclipse & Android Studio
  • Introduction to the Linux kernel
  • Compiling and booting the Linux kernel

Building and booting Android

  • Android kernel and boot files
  • Android changes to the Linux kernel
  • Android boot loaders
  • Booting Android
  • Using ADB
  • Device driver development overview

Executing code in Android

  • Android file system
  • Resources
  • Hardware porting and support:
  • Customization for solid-state storage devices
  • Choosing and installing the root file syste

Develop, Customize & Support a new product

  • Android build system. Add a new module and product.
  • Android native layer – Bionic, Toolbox, init, various daemons,
    Dalvik, hardware abstraction, JNI…
  • Android framework and applications
  • Introduction to application development
  • Android packages
  • Advise and resources