Embedded Systems- Tailored For Working Professionals

Durations – 360 Hrs. 

Modules

Core Engineering
  • Electronics and Hardware Familiarization
Core Programming Fundamentals
  • Mastering C Programming
  • DSA & Competitive Problem Solving
  • Mastering OOP using C++
  • Linux System Programming using C

SPECIALIZATIONS

Embedded Systems Programming & Real-Time Control
  • ARM Cortex-M Architecture with Embedded C Programming
  • Embedded Protocols and Peripheral Driver Development
OS Development
  • Embedded RTOS (Free RTOS) Firmware Programming

Projects:

  • Apply statistical methods to make decisions in various business problems, including banking, stock market, etc.
  • Apply regression to predict future flight prices
  • Apply classification to classify customers
  • Use clustering to segment banking customers
  • Gesture recognition captured through image or video data

Experiential Project Based Learning

  • A prototype embedded System development using LPC1768 and KEIL IDE

Project stream:

Core Programming

  • Application development based on Data Structure (e.g., Multi Client Chat Application, Memory Leak Detection Toolkit, E-Commerce Cart Simulator)
  • A concurrent server to replicate a chat application using Socket Programming

Embedded Systems

  • Multi-Peripheral Integration Project (Combining GPIO, UART, SPI, I2C)
  • Real-Time Data Acquisition using ADC & DMA
  • Wireless Communication using LPC1768 + GSM/Bluetooth/Wi-Fi Modules
  • Automated Sensor Data Logging with RTC & SD Card Storage
  • Developing a Custom CAN-based Protocol for Vehicle Networks

Platform:

  • Ubuntu (Linux OS, with gcc compiler)
  • WSL (Windows Subsystem for Linux)
  • Code: Blocks, VSC, Dev-C++
  • LPC1768 Development Board
  • FreeRTOS
  • Keil uVision IDE, Flash Magic
  • Raspberry Pi 4 Board, Raspberry OS
Core Engineering
Electronics and Hardware Familiarization – 40hrs. – 10 Days – 2Weeks/ 20 Days – 4Weeks
Analog Electronics: Passive and Active components
Circuit analysis using KCL and KVL
Diode, Transistor and Op-amp Circuits
Digital Electronics: Combinational circuits design: Adders, Multiplexers, Encoders, Decoders
Sequential circuits design: Flipflops, Registers, Counters
Microprocessors and Microcontroller architecture
Basic Embedded System Architecture
Standard Interfaces
Understanding schematics/datasheet
Core Programming Fundamentals
Mastering C Programming – 40hrs. – 10 Days – 2Weeks/ 20 Days – 4Weeks
Introduction to C: Simple C program structure, Literals, constants, variables and
Operators with precedence and associativity
Control flow statements with Examples
Modular Programming using functions Numeric Arrays :1D and 2D arrays Character Arrays, String functions
Searching algorithms Sorting Algorithms Problem Solving using Hacker rank
DSA & Competitive Programming – 60hrs. – 15 Days – 3Weeks/ 30 Days – 6Weeks
Time and Space Complexity Utopian Tre Viral Advertising
Birthday Cake Candles Migratory Birds Kaprekar Number
Pangram String and Anagram String Palindrome Index Array Rotation
Pointers: Declaration and Initialization, types, pointer to pointers Structures: Definition, structure variable, member access, nested structures Introduction to Data Structures: Stacks, Queues, Linked List
Dynamic Memory Allocation Static Stack and Dynamic Stack Static Queue and Dynamic Queue
Circular Queue Linked List: Singly Linked List Doubly Linked List
File Handling Using C Text and Binary Files Problem Solving using Hacker rank
Mastering OOP using C++ – 60hrs. – 15 Days – 3Weeks/ 30 Days – 6Weeks
Basic input / output: cin, cout, >> and << operators, endl, setw Understanding namespace Introduction to Object-Oriented Programming Classes and objects, Encapsulation, Data hiding, abstraction
Access Specifiers – Private and Protected, This pointer Constructors and Destructors Friend functions and operator overloading
Inheritance Run time polymorphism Exception Handling
Lambda Expression Smart Pointers Templates
STL Algorithms STL Container Classes Iterators
Linux System Programming using C – 40hrs. – 10 Days – 2Weeks/ 20 Days – 4Weeks
Linux Shell Commands Manipulating files and directories Manipulating data
Find and Grep Variables in Bash Scripting Control Statements in Bash
File Related System Calls Process Management Signal
IPC – Pipes, Message Queue, Shared Mem Multithreading Handling Race Condition using Mutex
Embedded Systems Programming and Real-Time Control
ARM Cortex-M Architecture with Embedded C Programming – 60hrs. – 15 Days – 3Weeks/ 30 Days – 6Weeks
Cross Compilers- arm-none-eabi-gcc, armclang, Toolchain: compiler(gcc), assembler(as), linker (ld), debugger(gdb) Conditional compiler directives and their significance in Embedded Software Const, volatile qualifier and their use in Embedded Systems
Bit-wise operators and their use in low level programming Structure padding, bitfields Function pointers
Make-file Building an Executable Stratup code, linker script and their use
Object file and map file Debugging and Tracing Coding standards/guidelines for secureand safe coding
ARM Cortex-M3 Architecture & LPC1768 Overview GPIO Registers, GPIO Programming: LED Programming buzzer and switch programming IO device programming: 16 x 2 LCD interfacing and programming
4X4 matrix keypad Interfacing and programming ADC Programming: LM35 temperature sensor interfacing and programming Timer Peripheral Programming
Embedded Protocols and Driver Development – 40hrs. – 10 Days – 2Weeks/ 20 Days – 4Weeks
PWM peripheral Programming RTC (Real-Time Clock) Watchdog Timer (WDT)
PLL (Phase-Locked Loop) & Clock Configuration NVIC (Nested Vectored Interrupt Controller) & Interrupt Handling UART (Universal Asynchronous Receiver Transmitter) Communication
SPI (Serial Peripheral Interface) Communication SSP (Synchronous Serial Peripheral) Communication I2C (Inter-Integrated Circuit) Communication
Embedded RTOS (Free RTOS) Firmware Programming – 20hrs. – 5 Days – 1Weeks/ 10 Days – 2Weeks
Overview of FreeRTOS: Features of freeRTOS, FreeRTOS source code organization RTOS Concepts: Hard real time vs soft real time, Multi-threading/ Multi-tasking / Concurrent execution Scheduling and Context switching
Memory management: Heap vs Stack memory, program memory vs data memory freeRTOS Heap Memory Management, different memory allocation schemes free RTOS Heap Utility Functions, Optimizing memory Concept of freeRTOS Tasks freeRTOS Tasks APIs, Creating Tasks, Task Priorities, Task State Transitions
Scheduler: Scheduler Algorithms, Tick Interrupt, Idle task Inter task Communication and synchronization: freeRTOS Queue APIs Data storage for Queue Blocking read, write
Receiving data from multiple queues
Mailbox (using queue)
Interrupt Management: Events and ISRs, Tasks vs ISRs Semaphores: Concept of semaphores, Binary Semaphores, Counting semaphores Resource Management: Shared resources. Mutual Exclusion,
Experiential Project based Learning

Enquire Now

Enquire Now

Enquire Now

Please Sign Up to Download

Please Sign Up to Download

Enquire Now

Please Sign Up to Download




    Enquiry Form