Getting Started – Week-1
- Introduction : What is baremetal programming ? Why is it useful ?
- Overview of the Boards used.
- Hardware Requirements
- Required Documentation
- Setting up Keil uVision5 IDE (Hands-On)
- Opening a new project on Keil (Hands-On)
Debugging with Keil – Week-2
- Writing first code (Hands-On)
- Breakpoints (Hands-On)
- Disassembly View (Hands-On)
- Registers Windows (Hands-On)
- Watchpoint (Hands-On)
- Memory Window (Hands-On)
- System View (Hands-On)
- Serial Windows (Hands-On)
- Quiz
Introduction to ARM Cortex-M -Week-3
- What is ARM Cortex-M ?
- Cortex M family of Processors
- Microcontroller v/s Microprocessor
Understanding ARM Cortex-M based MCUs -Week -4,5
- Understanding the Block Diagram of MCU (Micro-controller)
- Understanding MCU Bus Interfaces
- I-Code/D-Code/S-Bus
- Overview of ARM’s AMBA Bus Architecture
- Understanding the Bus Matrix
- Understanding Memory Map of MCU
- Understanding MCU Clock Tree
- Understanding MCU Vector Table
- Understanding MCU Interrupt Design ( NVIC )
- Understanding Cortex M Boot Process
- Examining startup file of MCU
Embedded C Essentials -Week-6
- Bitwise Operators (Hands-On)
- Pointers (Hands-On)
- Importance of “Volatile” Keyword (Hands-On)
- Significance of “const” keyword (Hands-On)
- Structures (Hands-On)
- Power of Typedef (Hands-On)
- Accessing Structure members (Hands-On)
- Bitwise mapping of structures (optional) (Hands-On)
Understanding CMSIS (Cortex Microcontroller Software Interface Standard) -Week-7
- Writing Blinky by using raw addresses and pointers (Hands-On)
- Introduction to CMSIS
- Overview of CMSIS Documentation
- Writing CMSIS compliant blinky program
- Examining Vendor Specific header files
Peripheral Driver Implementation : GPIO – Week 8,9
- Understanding GPIO hardware block diagram
- Understanding different I/O Modes (Digital / Analog)
- Understanding different GPIO States ( High Impedance / Pull-up/down / Open Drain / Push Pull)
- Understanding Alternate Functionality MUXing
- Examining GPIO registers from documentations
- Implementing generic GPIO Driver APIs
- GPIO Clock Control (Hand-On)
- GPIO Alternate Mode Configuration (Hand-On)
- Implementing GPIO Read / Write APIs
- Output Driver APIs(Hands-On)
- Input Driver APIs (Hand-On)
- Implementing GPIO Interrupts (Hand-On)
- Developing a library for GPIO Drivers for future use (Hands-On)
Peripheral Driver Implementation : SysTick Timer -Week-10
- Understanding the SysTick Timer and it’s registers
- Implementing SyTick Timer Delay API with Interrupts (Hands-On)
Peripheral Driver Implementation : ADC -Week -11
- Understanding ADC Hardware Block Diagram
- Understanding ADC Functional Modes
- Implementing ADC Driver APIs (Hands-On)
- ADC Interrupts (optional) (Hands-On)
Peripheral Driver Implementation : UART -Week-12,13
- Understanding UART Protocol in detail
- Understanding UART Hardware Block Diagram
- Understanding UART Clock Generation ( BAUD Rate Calculations)
- Implementing UART Transmit Driver APIs (Hands-On)
- Polling Mode Transmit
- Interrupt Mode Transmit
- Implementing UART Receive Driver APIs (Hands-On)
- Polling Mode receive
- Receive on Interrupts
- Exercises (Hands-On)
- Interfacing some Device (optional)
Peripheral Driver Implementation : SPI – Week 14,15
Peripheral Driver Implementation : I2C -Week 16
Special Sessions
- Embedded System Design Highlights
- Write your First Firmware program without hardware or Simulator (Working with Remote team)
- Team Activity
- Best Practice – Embedded C
- Board Bring-up Tips
- Route to Bootloader ,
- Beyond MCU
- Role of JTAG
Technical Support
- English
- Regional Language (Depending on availability of resources and number of students)
Online Recorded Content – Rs 1500 (Mandatory)
Weekend support for doubt clarification – Rs 100 per week ( First 4 weeks are Mandatory)
So The weekend program is min Rs 1900 (including everything except hardware) . Hardware is individual choice and can’t be provided at this cost
Note : Weekend support can be extended every month in advance.
Default support on whatsapp chat will be available as community learning.