• Real Time Signals India

Embedded C Programming


Knowledge of C programming and microcontrollers is good enough to start this course.

About this course

Someone will learn C programming basic and advance topics. Course is helpful for learning data structures and computer science algorithms. This course will also be helpful for writing C code on microcontroller. Trainer has 13+ years of experience from industry. He will highlight industrial issues and important topics of computer science algorithms and embedded systems.

What you'll learn

Introduction - Differences between ANSI C & Embedded C - Reasons for difference

Functions - Inline functions - When to use global scope functions - When to use local scope functions - Returning values from functions - Passing values to functions - Implications on stack

Arrays - Different methods of accessing arrays (and their differences) - Multi dimensional arrays - Implications on data memory & stack

Storage Classes & Keywords - Usage of auto, static, extern, register, volatile (when to use what?) - Implications on memory - ROM (Code, const variables), RAM (Data (Initialized, Uninitialized), Stack, Heap)

Structures & Unions - practical usage of unions- - Memory holes in structures - Bit fields in structures - Structure overlapping - Accessing like objects

Enumeration, Type Casting - Need for type casting? - Mistakes made during type casting - Need for Enumeration

Bit Wise Operators - Practical usages - Mistakes to avoid

Pointers - Purpose in embedded systems - Null Pointer - Function pointers - Far, Near, Huge Pointers - Array of pointers, pointer to pointer - Mistakes made and how to avoid them

Memory Management - Need for dynamic memory creation in embedded - Memory Allocation - Memory De allocation - Mistakes made and how to avoid them- - Implications on heap

Compilation - Preprocessor directives - Difference between #define and enum - Compiler - Conditional Compilation, Multi file compilation - Linker - Memory paging during linking - Object files and methods of linking multi language environment - Compiler and linker optimization - Assembler - Make Utility system - Scatter files in ARM and their usage

Data Structures - Sorting, searching, linked lists, trees - Usage in embedded systems

Others - Adaptation of RTOS based systems - State Machine Theory - Finite State Machines - Hierarchal State Machines - Object Oriented Programming using C - Dealing with Little/Big endian

Embedded - Realizing Registers using C - Realizing GPIO using C - Peripheral Programming using C - Interrupt handling - Boot strap and control of jump from assembly to C

11 views1 comment