โœ… Task 10: Stack Overflow & Other Function Pitfalls

๐ŸŽฏ Objective:
Understand stack behavior and common mistakes while working with functions in C.

๐Ÿ”น To Do:
๐Ÿ“บ Watch Session 10: Stack Overflow and Other Pitfalls of Functions


๐Ÿ”— Link: https://drive.google.com/file/d/1D8WnkTUjwSn5XRGpdZaQ3jQlFaIAeTLS/view?usp=drive_link

๐Ÿ“ Make notes on:

  • What is stack overflow?
  • Function call stack behavior
  • Recursion pitfalls
  • Memory mismanagement in functions
  • Debugging techniques

๐Ÿ” Revise concepts carefully

๐Ÿ“Œ Mini Practice:

  • Write a recursive function and test limits
  • Create a scenario causing stack overflow
  • Debug and fix the issue


โœ… Task 11: Standard Integers in C

๐ŸŽฏ Objective:
Learn about integer types and their importance in embedded programming.

๐Ÿ”น To Do:
๐Ÿ“บ Watch Session 11: Standard Integers
๐Ÿ”— Link: https://drive.google.com/file/d/1ybhad1E-hH5FH6DwnAtXrtTh65IhzRC5/view?usp=drive_link

๐Ÿ“ Make notes on:

  • Integer types (int, short, long)
  • Signed vs unsigned
  • Fixed-width integers (stdint.h)
  • Memory size and range
  • Embedded system relevance

๐Ÿ” Revise concepts carefully

๐Ÿ“Œ Mini Practice:

  • Write programs using different integer types
  • Print size of each type
  • Use uint8_t, int32_t in examples


โœ… Task 12: Structures in C & Cortex Interface

๐ŸŽฏ Objective:
Understand structures and their role in embedded system programming.

๐Ÿ”น To Do:
๐Ÿ“บ Watch Session 12: Structures in C and Cortex Microcontroller Interface
๐Ÿ”— Link: https://drive.google.com/file/d/1Y_-RXGoHBAC3m1YAlsrZTEC_ljIchyyW/view?usp=drive_link

๐Ÿ“ Make notes on:

  • Structure syntax
  • Nested structures
  • Memory alignment
  • Use in embedded systems
  • Peripheral mapping concepts

๐Ÿ” Revise concepts carefully

๐Ÿ“Œ Mini Practice:

  • Create and use structures in programs
  • Access and modify structure members
  • Simulate embedded-style structure usage


โœ… Task 13: Startup Code (Part 1)

๐ŸŽฏ Objective:
Learn how startup code initializes the system in ARM-based microcontrollers.

๐Ÿ”น To Do:
๐Ÿ“บ Watch Session 13: Startup Code Part 1
๐Ÿ”— Link: https://drive.google.com/file/d/1VmoI_i-3Tzv72WfSHxU9PKqaeh75vyFf/view?usp=drive_link

๐Ÿ“ Make notes on:

  • What is startup code?
  • Reset handler
  • Memory sections (.data, .bss)
  • Initialization flow
  • Boot process basics

๐Ÿ” Revise concepts carefully

๐Ÿ“Œ Mini Practice:

  • Analyze a simple startup file
  • Identify memory sections
  • Trace execution from reset to main()


โœ… Task 14: Startup Code (Part 2)

๐ŸŽฏ Objective:
Understand advanced startup code concepts, including vector tables and interrupt handling in ARM-based systems.

๐Ÿ”น To Do:
๐Ÿ“บ Watch Session 14: Startup Code Part 2
๐Ÿ”— Link: https://drive.google.com/file/d/15OgVMceVZSC4ZdMfsRPijvAqHtCllQ1m/view?usp=drive_link

๐Ÿ“ Make notes on:

  • What is a vector table?
  • Interrupt and exception handling basics
  • Role of interrupt service routines (ISR)
  • Linking startup code with application code
  • Execution flow after reset

๐Ÿ” Revise concepts carefully

๐Ÿ“Œ Mini Practice:

  • Analyze a vector table structure
  • Identify ISR functions in startup code
  • Trace execution from reset handler to main()