- What is an Embedded System?
- Traits and Architecture of an Embedded System
- Embedded Hardware and Software
- Why C-language is Preferred for Embedded SW Development?
- How to Install Tool Chain, STM32CubeIDE, and GCC Compiler
- How to create a New Project
- Basic Elements of a C-Program
- C-Program Layout
- Standard I/O - Library
- getchar and putchar
- printf and sprintf
- scanf and sscanf
- C Data Types
- Signed Data Representation
- Datatype - Overflow/Underflow Issues
- C99 Data Types
- Fixed Point and Floating-Point Representation
- FPU Usage
- ‘Enum’ and ‘Typedef’
- Operators in C
- Operators Precedence and Associativity
Beginner
Online
3 Months
Quick facts
particular | details | |
---|---|---|
Medium of instructions
English
|
Mode of learning
Self study
|
Mode of Delivery
Video and Text Based
|
Course and certificate fees
certificate availability
certificate providing authority
The syllabus
Week 01 - C Language for Embedded Programming, C Input /Output Functions, C Data Types for Embedded Programming, C language Operators
Week 02 - C Control Statements, Function Prototypes and Introduction to Pointers, C Storage Classes and Type Qualifiers
- Control Statements in ‘C’ language
- ‘if-else’
- Loops for Iterations
- Switch Case for Multiple Selections
- Control Statements in ‘C’ language
- ‘if-else’
- Loops for Iterations
- Switch Case for Multiple Selections
- Functions ()
- Function Prototypes
- Recursive Function
- Function Pitfalls
- Introduction to Pointers
- Call by Value Vs Call by Reference
- Pointer Arithmetic
- Functions as ‘Pointer’
- C Storage Classes
Week 03 - C Compilation Process, C Preprocessor Directives, Arrays in C, Arrays to Functions and Array of Function Pointers
- Stages of the Compilation Process
- Pre-processing
- Compilation
- Assembling
- Linking
- GCC Commands for Each Stage
- Preprocessor Directives in C
- Macros and their Types
- Conditional Compilation
- #pragma
- Introduction to Arrays
- Array Initialization
- Accessing Array Elements
- 2D Arrays
- 3D Arrays
- Pointers and Arrays
- Passing Array Elements to a Function
- Array of Pointers
- ‘Function’ as ‘Pointer’ - Function Pointers
- Array of Function Pointers
Week 04 - Command Line Arguments and Variadic Functions, Strings and String Functions in C, Structures in C, Unions and Bitfields in C
- Command Line Arguments in C
- Variadic Functions in C
- Strings in C language
- String Functions from <string.h>
- Structure Declaration in C
- Array of Structures
- Pointer Objects to Structure
- Memory Allocation of Structure and Structure Padding
- Structure Padding Comparison
- Bit Fields
- Unions
Week 05 - Advanced Function Arguments, Advanced pointers -Void Pointers, File Operations in C, Standard Libraries C
- Function Pointers
- Passing Function Pointers as Arguments to a Function
- Inline Functions
- Passing a String as a Function Argument
- Returning a String from a Function
- Passing Arrays to Function Arguments
- Returning Multiple Values from a Function
- Passing Structure Pointers as Function Arguments
- Passing an Array of Structures to a Function
- Double Pointers with Example
- Void pointers with Example
- Miscellaneous Features
- Global ‘Static’ Variable
- Generic Functions in C
- Variable Length Arrays
- Understanding Little Endianness Vs Big Endianness
- Portable Code using ‘C’
- File I/O Handling
- Read and Write Operations
- Error Handling Mechanisms
- General Properties of the C Library and its Functions
- Need for Libraries - Static vs. Dynamic Libraries
- Utility Functions
Week 06 - C Memory Management and DMA, Modular C Programming, Modular C Programming, C Program Optimization
- C Memory Model
- Dynamic Memory Allocation on Heap
- Miscellaneous Memory Functions
- Variable Length Arrays
- Creating a User Defined Library
- Makefile Project in STMCubeMX IDE
- Creating a Custom Makefile
- Introduction to Debugging
- Debugging using GDB Tool
- Debugging using Preprocessor Directives
- Optimization for Memory Usage and Execution Speed
- Optimization Methods
- Code Level Optimization
Week 07 - Stack and Stack Operations, Queue and Queue Operations, Linked List, FSM
- Fundamental Concepts of Data Structures
- Operation on Data Structure
- Arrays and Array Operations
- Stack and Standard Stack Operations
- Fundamental Concepts of Queue
- Operations performed in Queue
- Different Types of Queue
- Fundamental concepts of Linked List
- Types of Linked List
- Singly Linked List
- Doubly Linked List
- Circular Linked List
- Doubly Circular Linked List
- Introduction to FSM (Finite State Machine)
- State Diagram
- Explanation of State Diagram
- State Table
- Implementation of State Machine
- Mealy State Machine
- Moore State Machine
Week 08 - Process Management in C, Embedded Design Patterns
- Threads
- Memory Model of Threads
- <pthread.h> Library
- Process Vs Threads
- IPC Mechanism
- Different Design Patterns of Embedded System
- Hardware Adapter Pattern
- Observer Pattern
- Debounce Pattern
- Interrupt Pattern
- Polling Pattern
Week 09 - C and Embedded C Standards
- C Standards
- K&R C
- K&R Standards
- ANSI C
- C90 Standards
- C99 Standards
- C11 Standards
- Embedded C
- C-General Coding Standards
- Embedded C Standards
Week 10 - AUTOSAR C Rules and MISRA C Guidelines
- Common Pitfalls in C Language
- Overstepping of Array Boundaries
- Example of Faulty Code
- Buffer Overflow
- Stack Overflow
- Glimpse into AUTOSAR and MISRA
- Prominent MISRA C Rules
Articles
Popular Articles
Latest Articles
Similar Courses
Fundamentals of Embedded Systems
Skill Lync
Advanced PCB Design Using Altium
Skill Lync
Introduction to Electrical and Electronic Engineer...
Tokyo Institute of Technology, Tokyo via Edx
Courses of your interest
Introduction to Urban Geo Informatics
The Hong Kong Polytechnic Univer... via Edx
Urban Design for the Public Good Dutch Urbanism
Delft University of Technology via Edx
Digitalization of Intelligent and Integrated Energ...
Delft University of Technology via Edx
Monotsukuri Making Things in Japan Mechanical Engi...
Tokyo Institute of Technology, T... via Edx
Cognitive Neuroscience Robotics Part A
Osaka University, Osaka via Edx
Model Based Systems Engineering Foundations
IsraelX via Edx
Engineering Vibration I Introduction Single Degree...
Georgia Tech via Edx
Structural Materials Selection and Economics
MIT Cambridge via Edx
More Courses by Skill Lync
C Programming for Telecom Engineers
Skill Lync
Introduction to Automotive Electronics
Skill Lync
Reinforced Cement Concrete Design
Skill Lync
Construction Planning using Primavera P6
Skill Lync
Business Analyst Fundamentals for Beginners
Skill Lync