0% found this document useful (0 votes)
16 views21 pages

FreeRTOS With LPC17xx Cortex m3

The document provides an overview of FreeRTOS, a real-time operating system designed for embedded systems, particularly those using microcontrollers. It explains the significance of RTOS in managing multitasking and time-critical applications, and highlights the components and resources utilized by FreeRTOS on the LPC17xx series. Additionally, it outlines the advantages of using FreeRTOS for reliable timing and real-time response in various applications.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views21 pages

FreeRTOS With LPC17xx Cortex m3

The document provides an overview of FreeRTOS, a real-time operating system designed for embedded systems, particularly those using microcontrollers. It explains the significance of RTOS in managing multitasking and time-critical applications, and highlights the components and resources utilized by FreeRTOS on the LPC17xx series. Additionally, it outlines the advantages of using FreeRTOS for reliable timing and real-time response in various applications.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 21

FreeRTOS with LPC17xx

Cortex m3
 Suresh K
 R23TM007
 M.Tech. in VLSI Design & Embedded Systems – (VLSI-PT)
What is RTOS?
Why use RTOS?
What is FreeRTOS?
Why use FreeRTOS?
FreeRTOS Components
Steps to step up FreeRTOS
Real-time operating system (RTOS)
 A real-time operating system (RTOS) is a multitasking operating system for time-critical
applications.
 A RTOS executes tasks in real-time constraints where the tasks must be executed in the time
interval between the occurrence of an event and the system-expected response to the event. RTOS
tasks have predictable latencies that strictly match their expected deadlines.

 Why use RTOS?


 usually required for hard real-time systems.
 embedded device has to deal with lots of multitasking.
 RTOS is the best way to manage a complex or large application.
 hardware changes like the processor or a peripheral often do not affect a RTOS-based application.
Real-time operating system (RTOS)
How are Real-Time Systems different from Non-Real-Time Systems
How are Real-Time Systems different from Non-Real-Time Systems
FreeRTOS
Why FreeRTOS?(11 slide)
• It was developed by Richard Barry in
2003.
• FreeRTOS is an open-source, real-time
operating system (RTOS) designed for
embedded systems, particularly those
based on microcontrollers.
• It provides a lightweight and efficient
platform for managing multiple tasks or
processes that need to run concurrently
on a microcontroller or other embedded
hardware.
• FreeRTOS is widely used in
applications that require reliable timing,
multitasking, and real-time response,
such as automotive systems, IoT
devices, industrial automation, medical
devices, and more.
FreeRTOS Components

FIGURE – Typical layers of


FIGURE – Typical RTOS components an embedded system
FreeRTOS Components
Example of creating a simple task:
LPC17 core of the RTOS resources used while freeRTOS
 When using FreeRTOS on the LPC17xx series (which includes microcontrollers like the LPC1768,
LPC1769, etc., based on the ARM Cortex-M3 core), FreeRTOS utilizes various hardware resources
from the microcontroller to handle tasks, scheduling, timing, and interrupts. Here's an overview of the
key LPC17xx core resources that FreeRTOS uses:

1. SysTick Timer
2. NVIC (Nested Vectored Interrupt Controller)
3. PendSV Interrupt (Pendable Service Call)
4. Memory (RAM) Usage
5. Peripheral Interrupts
6. Cortex-M3 Registers
7. FPU (Floating Point Unit) – Optional
8. Syscall Protection and Interrupt Priority Levels
9. Optional Usage of LPC17xx Timers
LPC17 core of the RTOS resources used while freeRTOS

Structure Queue Example to Receive Data


from Multiple Resources

You might also like