Introduction to C Programming for Real-Time and Embedded Systems

4 Day Course
Hands On
Code PSD068

Book Now - 1 Delivery Method Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online


The course is 4 days long and comprises of 40% practical work which is based on a case study giving delegates experience of designing and developing a complete stand alone application in C.


On completion of the course delegates will be able to:

  • Write C applications for Real-Time and Embedded Systems
  • Understand the principles of well structured modular programs
  • Access hardware using the C programming language
  • Write low-level device drivers and interrupt routines in C.


Hide all

Introduction to C Programming (3 topics)

  • What is C
  • Structure of a C program
  • The C compilation process

Core C Syntax (7 topics)

  • Identifiers and reserved words
  • Primitive data types
  • Expressions and operators
  • Functions
  • Conditionals
  • Iteration
  • Storage classes

Arrays, Pointers and Structures (6 topics)

  • Arrays
  • Pointers
  • Relationship between arrays and pointers
  • Structures
  • Unions
  • Dynamic memory allocation

Accessing Hardware in C (8 topics)

  • Memory mapped and I/O mapped devices
  • I/O synchronization
  • Polling
  • Interrupts
  • Bit level manipulation of data
  • Implementing Interrupt routines in C
  • Maximizing portability
  • Protecting concurrently accessed data

Program Organization (3 topics)

  • Scope and lifetime of data
  • Separate compilation and linkage
  • Multiple file projects

The C Standard Library (1 topic)

  • Overview of the C standard library


Delegates are expected to have some programming experience in another language (e.g. assembler). No knowledge of C is assumed.

Course PDF


Share this Course


Recommend this Course