Course Outline

Introduction

Understanding Real-Time Operating Systems (RTOS)

Learning the Concept of Multitasking in Embedded Systems

Overview of the FreeRTOS Kernel

Overview of the STM32 MCU Board

Setting Up the Development Environment

  • Downloading and Installing All Required Software
  • Setting Up the STM32 Firmware and Hardware

Understanding Task Management in RTOS

  • Understanding Stack Memory and Task Stack Size
  • Creating Your First Tasks
  • Using Task Parameters
  • Implementing Task Priorities
  • Exploring Task States
  • Implementing Delays
  • Using the Idle Task Hook
  • Deleting Tasks

Communicating Between Tasks

  • Managing Queues
    • Overview of Queues
    • Using a Queue
  • Managing Interrupts (Semaphores)
    • Overview of Interrupts and Semaphores
    • Writing an Interrupt Handler on FreeRTOS
    • Using Semaphores to Synchronize Tasks with Interrupts
    • Queuing within an Interrupt Service Routine

Managing Resources

  • Using Mutexes
  • Using Binary Semaphores
  • Using Counting Semaphores

Managing Memory and Time

Learning the Internals of FreeRTOS    

  • Debugging and Performance Tools
  • Kernel Internals

Creating a Blinking Board Using FreeRTOS

  • Learning the GPIO pins on STM32
  • Using Tasks to Blink an On-Board LED
  • Turning the LED On/Off Using Queueing
  • Turning the LED On/Off Using Interrupts

Troubleshooting

Closing Remarks

Requirements

  • Familiarity with embedded systems
  • Basic experience with C programming

Audience

  • Engineers
  • Engineering students
  • Anyone interested in learning FreeRTOS
  • Anyone interested in embedded systems
 7 Hours

Number of participants



Price per participant

Testimonials (1)

Related Courses

ARM Technology

14 Hours

Berkeley DB for Developers

21 Hours

C Programming for Embedded Systems

21 Hours

C++ for Embedded Systems

21 Hours

Embedded Linux Kernel and Driver Development

14 Hours

Introduction to Embedded Computers

14 Hours

Using C++ in Embedded Systems - Applying C++11/C++14

21 Hours

Embedded Systems Security

21 Hours

Embedded System Programme

140 Hours

FPGA Design for Embedded Systems

7 Hours

Model Based Development for Embedded Systems

21 Hours

Object Oriented Programming with C++

7 Hours

PCB Circuit Design with Eagle

21 Hours

PCB Circuit Design with Altium

21 Hours

Raspberry Pi

7 Hours

Related Categories

1