recent success story


PG-55 - Introduction to C for Embedded Systems

'The lecturer was very quick to assess the level of experience of the staff attending the course and was able to tailor the course accordingly. '

- QinetiQ

PG-55 - Introduction to C for Embedded Systems

'The lecturer provided an excellent and well structured hands-on course in C Programming and DSP in a comfortable and productive atmosphere. '

- QinetiQ

Introduction to C for Embedded Systems

Make an enquiry Print

Reference: PG-55
Duration: 5 Day(s)


The course discusses C programming in the context of implementing C applications for 8 bit and 16 bit micro-controller architectures. A distinction is made between pure ANSI C programming and use of pragmas and extensions as found with various embedded C compilers targeted at specific microcontrollers. General ANSI C programming is taught using a PC oriented IDE such as Microsoft's Visual Studio or the GCC compiler under Eclipse. Embedded target specific aspects are illustrated using one or more C compilers for PIC16, PIC18 and PIC24 / dsPIC architectures. You will also learn basic techniques for mixed C and Assembler programming.

The hands on exercises also cover the use of simulation, debugging and In Circuit Debugging techniques, as well as techniques for In System Programming.

Company Benefits

Students successfully completing this course will have a sound understanding of C programming. You will understand the basic C data types, arrays and pointers. You will have a good appreciation of data structures and their uses, and the use of pointers to data structures and arrays of data structures. You'll learn how to use arrays to implement circular buffers and how to use them, and how to use arrays to implement stacks, and the uses of software stacks.

Personal Benefits

You will be introduced to basic techniques of memory management and programming with dynamic data structures - being able to implement circular buffers and stacks using singly linked and doubly linked lists. You'll also learn techniques for implementing interrupt handler code in C, multi-module programming including applications containing a mixture of C and assembly language modules, and techniques for manipulating hardware registers and special function registers.


  • C basic data types
  • Programming constructs
  • Implementing Functions in C
  • Defining data structures
  • Using arrays to implement circular buffers and stacks
  • Overview of the C standard library
  • Embedded System Oriented Topics
  • Basics of event driven programming

Who should attend

Attendees should have a basic knowledge of programming and computers.


No previous knowledge of the C language is assumed.
Make an enquiry

Related courses