embedded and real time systems training and consultancy

PIC32 FreeRTOS C Programming

Duration: 5 Days

Course Background

As applications become more complex and more likely to evolve over the course of their product lifetime so the advantages of adopting a multi-tasking approach based on an embedded operating system become more attractive. FreeRTOS is a well designed and widely used embedded operating system, with a small code footprint and a rich API (Application Programming Interface). It is available as both a pure open source project and as a commercial certified and commercially supported RTOS. Implementing more complex multi-tasking application requires a sound understanding of various multi-tasking and inter-process communication idioms and patterns over and above an understanding of the basic operating system API. Issues such as integrating various device driver implementations, both polling and / or interrupt driven need to be considered carefully as well.

Course Prerequisites and Target Audience

A good knowledge of embedded systems C programming is assumed. Some knowledge of multitasking and multithreading would be helpful, but is not essential as it will be covered fully in the course.

Course Overview

The course will survey the essential concepts the essential concepts and rationale for the use of embedded operating systems and multi-tasking in the development of responsive multi-tasking applications. It will cover a variety of interprocess communication and synchronisation patterns and also discuss real time aspects of developing embedded systems using an RTOS such as FreeRTOS.

Course Benefits

The course will provide a comprehensive overview of both the FreeRTOS API as well as essential aspects of the FreeRTOS architecture and internals. This course is for engineers who have a good knowledge of embedded C programming but little experience of programming using real time operating systems application programming interfaces (APIs). It will also provide a good understanding of configuring FreeRTOS to work with a variety of PIC32 target board configurations.

Course Outline