freeRTOS in Theory and Practice

Date: 03. - 05.07.2018| 3 days, 9.00 - 17.00
Training Fee: 1.790 Euro plus VAT tax
Training Description: PDF


ICON - Eclipseina Embedded Academy Seminar - freeRTOS - Echtzeitbetriebssystem - OS

Training Description

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 effectively in your own embedded development project.

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.

Target Group

software engineers, field engineers, (project) managers

Requirements

  • 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

Training Content

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
  • LPCXpresso 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

Method and Training Materials

Presentation and practical examples with host (Laptops with Ubuntu 14.04.x LTS) and target system
(e.g.Beagle Bone Black Rev. C - http://beagleboard.org/BLACK)
The electronic devices will be provided during the training. There will be one workspace for two participants.
A customized version of this training like FreeRTOS on LPCXPresso 1769 is offered by FreeRTOS.

Trainer

Eclipseina Trainer - Robert Berger - gathered experience in software design and development for embedded systems