Embedded Real-Time Operating System

Embedded Real-Time Operating System

Author: Xi Haijiao Publisher: Tsinghua University Press Publication Date: July 2023

Editor Recommendation

This book contains detailed content, rich cases, and is highly operational, accompanied by micro-videos and courseware; it can serve as a textbook for related majors such as Electronic Information, Communication Engineering, and Information Engineering in universities, and is also suitable as a reference for scientific researchers in the embedded field.

Content Introduction

This book is based on the FreeRTOS real-time operating system, using the STM32F407 as the core MCU development board, explaining the control of embedded real-time operating systems. The book is rich in content, with numerous cases and strong operational capability; it includes micro-videos and courseware to help readers learn efficiently.

Author Introduction

Xi Haijiao is a member of the Electronic Information Vocational Education Teaching Guidance Sub-Committee of the National Industrial and Information Technology Vocational Education Teaching Guidance Committee, a postdoctoral researcher at Beihang University, and has long been engaged in scientific research, technology development, and talent training in fields such as embedded systems, IoT, artificial intelligence, and drones. He has led the research and development of several major projects in aerospace, rail transit, wind power generation, and fiber optic communication, training and recommending nearly ten thousand embedded technology talents for enterprises. He has been rated as a key talent in the eighth batch of Wuhan’s “3551 Talent Introduction Plan”, holds nearly 20 various patents, and has published over 10 books.

Table of Contents

Chapter 1 Introduction to FreeRTOS 1.1 Overview of FreeRTOS 1.1.1 Real-Time Multi-Task Operating System 1.1.2 FreeRTOS 1.2 Porting FreeRTOS 1.2.1 Development Principles 1.2.2 Development Steps 1.3 FreeRTOS Configuration File Chapter 2 FreeRTOS Tasks 2.1 Task Creation 2.1.1 Development Principles 2.1.2 Development Steps 2.1.3 Running Results 2.2 Task Deletion

Show All Information

Foreword

In the embedded field, the Embedded Real-Time Operating System (RTOS) is being increasingly widely used. Using RTOS can utilize CPU resources more reasonably and effectively, simplify application software design, shorten system development time, and better ensure the real-time and reliability of the system.

Since RTOS occupies a certain amount of system resources (especially RAM), only a few real-time operating systems such as μC/OS-II, embOS, Salvo, and FreeRTOS can run on “small” RAM microcontrollers. Compared to commercial operating systems like μC/OS-II and embOS, the FreeRTOS operating system is completely free, with open-source code, portability, scalability, and flexible scheduling policies, making it easy to port to various microcontrollers. The version of FreeRTOS used in this book is 10.3.0.

As a lightweight operating system, FreeRTOS provides functions including task management, time management, semaphores, message queues, memory management, and logging, which can basically meet the needs of smaller systems. The FreeRTOS kernel supports priority scheduling algorithms, allowing each task to be assigned a certain priority based on its importance, with the CPU always allowing the highest priority task in the ready state to run first. The FreeRTOS kernel also supports round-robin scheduling algorithms, allowing different tasks to share the CPU time when there are no higher priority tasks ready.

In the embedded field, FreeRTOS is one of the few embedded operating systems that possesses real-time capabilities, open-source nature, reliability, ease of use, and multi-platform support. Currently, FreeRTOS has developed to support up to 30 hardware platforms including x86, Xilinx, and Altera, and its broad application prospects are increasingly attracting the attention of industry professionals.

This book is based on the STM32F4 development board, using the chip model STM32F407VGTx. The STM32F4 series includes high-speed embedded memory and a wide range of enhanced I/O and peripherals, connected to 2 APB buses, 3 AHB buses, and 1 32-bit multi-AHB bus matrix; it uses 64KB CCM (Core Coupled Memory) data RAM, LCD parallel interface, and MUC interface in 8080/6800 mode; it has timers with quadrature (incremental) encoder input; 5V fault-tolerant I/O; parallel camera interface; true random number generator; RTC with sub-second accuracy and hardware calendar; and a 96-bit unique ID.

Embedded Real-Time Operating System

Customer Service WeChat Pre-sales Consultation After-sales Service

Leave a Comment