FreeRTOS in Theory and Practice

FreeRTOS in Theory and Practice

COURSE OBJECTIVES

To provide a practical knowledge and understanding of real-time kernel usage. What are the advantages? What are the trade-offs? Learn from an experienced trainer and take home a working knowledge of FreeRTOS and the ability to use it efectively in your own embedded development project.

Description

This 3-day training class uses hands-on exercises combined with instruction to illustrate the concepts of a real-time kernel. Examples using FreeRTOS form a series of practical coding exercises designed to bring you quickly up to speed. The concepts and commands necessary to make effective use of FreeRTOS are described through a combination of theory and ‘hands-on’ training. Learn from an experienced trainer and take home a working knowledge of FreeRTOS and the ability to use it effectively in your own embedded development project.

Prerequisites

  • Familiarity with embedded C concepts and programming
  • Ability to develop software using C syntax
  • Ability to use basic embedded compiler and debug tools
  • Basic knowledge of embedded processor development boards

Who should attend?

People with interest in or tasked with development of a resource constrained real-time system. For example - software engineers, field engineers, (project) managers.

Course Outline

  • Introduction

    • FreeRTOS overview, market position, the "free" in FreeRTOS, understanding the FreeRTOS license, software architecture, features.
    • LPCXpresso IDE download and installation, importing an example workspace.
  • Task Management

    • Tasks - Creation, states, priorities, the idle task, deletion.
    • Scheduling - Determinism, multitasking, endless loop, cyclic executives, issues with interrupts, non-preemptive, prioritized preemptive, rate monotonic, deadline, cooperative, hybrid.
  • Queue Management

    • Creation, sending, receiving
  • Interrupt Management

    • Deferred interrupt processing, interrupt handlers, interrupt safe functions, task with interrupt synchronization, efficient queue usage even from within an interrupt, interrupt nesting.
  • Resource Management

    • Mutual exclusion, critical sections, suspending/locking the scheduler, mutexes, priority inversion, priority inheritance, deadlock, gatekeeper tasks.
  • Memory Management

    • Resource constrained memory allocation schemes, determining the amount of free memory remaining.
  • Trouble Shooting

    • avoiding bugs and how to find those you did not avoid
  • FreeRTOS-MPU

    • User vs. privileged mode, access permissions, defining MPU regions, linker configuration, practical usage tips.
  • The FreeRTOS Download

    • Files and directories, demo apps, data types and coding style.

A customized version of this training like FreeRTOS on LPCXPresso 1769 is offered by FreeRTOS.

 

Please fill in this form if you have further questions regarding this or any other training and do not hesitate to contact us if you have any further questions.

TRAININGS

Reliable Embedded Systems provides trainings to help you create better embedded software!

title-1

Embedded Linux - From
Systems Architecture to Real-Time:

Our in-depth introduction to Embedded GNU/Linux.

Read more
title-1

Embedded GNU/Linux Kernel Internals and Device Drivers:
We describe processes, concepts and commands necessary to write GNU/Linux device drivers.

Read more
title-1

The Yocto Project - An Overview:
After the training you should have a much better overview about the Yocto Project and be able to decide whether you need it or not.

Read more
title-1

Introduction to Embedded Linux and the Yocto Project:
A quick introduction to Embedded Linux (2 days), essentials to utilize the Yocto Project (3 days).

Read more
title-1

Introduction to Embedded Linux in Theory and Practice - a Crash Course:
The aim of this crash course is to provide a basic overview of embedded GNU/Linux.

Read more
title-1

(Embedded) Linux Debugging:
We'll give you a basic overview of debugging/tracing/profiling facillitites available with (embedded) GNU/Linux kernel/user-space.

Read more
title-1

Embedded Linux Hardware Interfacing:
Is it really that hard to use digital I/O, Analog I/O(pwm), Sensors/Actors, IoT and friends with Linux?

Coming soon
title-1

FreeRTOS in Theory and Practice:
Take home a working knowledge of FreeRTOS and the ability to use it effectively in your own embedded development project.

Read more
title-1

The Zephyr Project - An Overview:
Take home a working knowledge of the Zephyr Project and the ability to use it effectively in your own embedded development project.

Coming soon
title-1

FlexNgage + Training:
Add trainings as you like to the various steps of your development process.

Read more
title-1

Custom Training:
Ask for a custom training e.g. by combining stuff from various trainings or something totally new.

Read more
title-1

3rd Party Training Material:
We customize/deliver your Embedded Linux training material in English/German.

Read more