Real time systems programming. From theory to practice

Detalii

Year Published
2025
Author(s)
Cristina-Sorina Stângaciu, Eugenia-Ana Capota
Pages
166
Variant price modifier:
Base price with tax
Salesprice with discount
Sales price 32,00 lei
Discount

Description

Lucrarea își propune să introducă cititorul în universul programării sistemelor în timp real. Limbajul utilizat este riguros, iar expunerea este facilitată de prezentarea unor exemple de implementare care sprijină înțelegerea secțiunilor teoretice. Cartea se remarcă prin modul în care se pune în valoare legătura dintre teorie și aplicabilitatea practică, oferind cititorilor metode și instrumente esențiale pentru evaluarea și optimizarea aplicațiilor în timp real.

 

 

CONTENTS

 

 

Preface

 

  1. Real-time systems

- Introduction into real-time system

- Real-time scheduling

- Task models in real-time systems

- The Liu and Layland periodic task model

- Extensions and advantaced task models

- Scheduling algorithms in real-time systems

- Fixed-priority algorithms

- Rate Monotonic

- Deadline Monotonic

- Dynamic priority algorithms

- Earliest Deadline First

- Least Laxity First

 

  1. Real-time task scheduling with MATLAB

- Modeling periodic and aperiodic tasks in Simulink

- The Task Manager and Schedule Editor in SoC Blockset

- Implementing and simulating a scheduling algorithm

- Scheduling tasks across multiple cores

 

  1. Embedded Programming

- Working Environment Setup

- Lesson 1 – Blinky

- Objectives and Application Requirements

- Theoretical Aspects

- Hardware and Software Setup

- Creating a Project

- Implementing a Simple Application

- Running and Debugging the Application

- Bibliography, Further Reading and Exercises

- Lesson 2 - User Button

- Objectives and Application Requirements

- Theoretical Aspects

- Using Polling

- Using Interrupts

- Bibliography, Further Reading and Exercises

- Lesson 3 – Timers

- Objectives and Application Requirements

- Theoretical Aspects

- Configuring hardware timers

- Using Timer Interrupts

- Bibliography, Further Reading and Exercises

- Lesson 4 - Pulse Width Modulation

- Objectives and Application Requirements

- Theoretical Aspects

- Configuring the PWM

- Using the PWM

- Bibliography, Further Reading and Exercises

- Lesson 5 - Serial Communication

- Objectives and Application Requirements

- Theoretical Aspects

- Configuring the UART

- Adding a serial communication transmitting function

- Adding a serial communication receiving function

- Using the serial communication between the target and PC

- Bibliography, Further Reading and Exercises

 

  1. Real-Time Programming in FreeRTOS

- Working Environment Setup

- Lesson 1 - Task Creation

- Objectives and Application Requirements

- Theoretical Aspects

- How to setup a FreeRTOS project on STM32F470GDISC1 Board using STM32Cube MX

- Starting to Program in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 2 - Task Parameters

- Objectives and Application Requirements

- Theoretical Aspects

- Configuring FreeRTOS

- Tasks in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 3 - Periodic Tasks and Delay Functions

- Theoretical Aspects

- Configuring FreeRTOS

- Using vTaskDelay function in FreeRTOS

- Using vTaskDelayUntil function in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 4 - Task Scheduling

- Theoretical Aspects

- Configuring FreeRTOS

- Assigning task priorities in FreeRTOS

- Changing task priorities in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 5 - Software Timers

- Theoretical Aspects

- Configuring FreeRTOS

- Using Software Timers in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 6 - Interrupt Management

- Theoretical Aspects

- Configuring FreeRTOS

- Using Semaphores in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 7 - Resource Sharing

- Theoretical Aspects

- Configuring FreeRTOS

- Using Mutexes in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 8 – Queues

- Theoretical Aspects

- Configuring FreeRTOS

- Using Queues in FreeRTOS

- Bibliography, Further Reading and Exercises

- Lesson 9 - Tracing and Analysing

- Theoretical Aspects

- Installing Percepio Tracealyzer

- Installing Percepio Tracealyzer

- Adding the Trace Recorder Library

- Configuring Tracealyzer Mode

- Adding Percepio tools in the STM32CubeIDE

- Using Tracealyzer in STM32Cube with FreeRTOS

- Using Tracealyzer to visualize the execution of the application

- Bibliography, Further Reading and Exercises

- Lesson 10 – Benchmarks

- Theoretical Aspects

- Configuring the project

- Adding serial communication functions

- Configuring a timer in order to measure different time intervals

- Implementing a test for task switching time

- Bibliography, Further Reading and Exercises

 

  1. Project Proposals

 

List of figures

List of tables

Bibliography