
FreeRTOS全系列教程
文章平均质量分 85
本专栏将带你深入了解FreeRTOS的工作原理、特性和应用,使你能够充分利用这一强大工具来构建可靠的嵌入式系统。无论你是初学者还是有经验的嵌入式开发人员,本专栏都将为你提供全面的指南和实用的示例,助你成为FreeRTOS的专家。
花落已飘
阿里云博客专家,优快云万粉博主,华为云享专家。擅长C语言单片机等技术智能小车带设计,单片机C语言设计。可以带徒弟学C语言,C加加,Linux,单片机,QT等嵌入式技术。也可承接项目。
展开
-
STM32cubeMX配置FreeRTOS
文章目录前言一、FreeRTOS介绍二、cubeMX配置总结前言本篇文章带大家简单的配置一下FreeRTOS一、FreeRTOS介绍在嵌入式领域中,嵌入式实时操作系统正得到越来越广泛的应用。采用嵌入式实时操作系统(RTOS)可以更合理、更有效地利用CPU的资源,简化应用软件的设计,缩短系统开发时间,更好地保证系统的实时性和可靠性。下面我就带大家使用cuebMX配置一下RTOS。二、cubeMX配置1.单片机型号选择2.sys配置3.时钟源选择4.时钟树配置5.打开RTOS6.原创 2022-02-20 12:37:29 · 14689 阅读 · 3 评论 -
STM32 FreeRTOS FreeRTOSConfig.h文件解析
文章目录前言一、文件讲解总结前言本篇文章带大家了解FreeRTOS里面的FreeRTOSConfig.h文件,此文基于正点原子FreeRTOS手册讲解。一、文件讲解源码:/* USER CODE BEGIN Header *//* * FreeRTOS Kernel V10.0.1 * Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Permission is hereby原创 2022-02-26 22:20:17 · 1039 阅读 · 0 评论 -
STM32 FreeRTOS任务基础知识
文章目录前言一、什么是多任务系统二、任务状态1.运行态2.就绪态3.就绪态4.就绪态三、任务优先级总结前言本文将基于正点原子RTOS开发手册进行讲解任务的基础知识。一、什么是多任务系统我们平时使用的51,STM32单片机大家可能接触到的都是裸机,没有涉及到操作系统的知识。裸机处理程序一般运用的都是前后台系统,相对于多任务系统而言,这个就是单任务系统。中断服务函数作为前台程序,大循环while(1)作为后台程序。前后台系统相对于操作系统而言上手比较简单,对于新手的学习比较友好。但是他相对于操作原创 2022-03-02 10:37:25 · 3853 阅读 · 0 评论 -
STM32cubeMX配置FreeRTOS软件定时器
文章目录前言1.软件定时器概述一.软件定时器特性二、使用cubeMX生成软件定时器总结前言本文主要带大家了解什么是软件定时器,并且带大家使用cubeMX配置软件定时器。1.软件定时器概述一.软件定时器特性软件定时器就是一个闹钟当时间到了就执行相对应的任务或者代码。软件定时器是基于系统滴答中断的。在FreeRTOS中我们可以设置无数个软件定时器。指定时间:启动定时器和运行回调函数,两者的间隔被称为定时器的周期(period)。指定类型定时器有两种类型:1.一次性这类定时器启动后,它的回调函原创 2022-03-12 20:51:26 · 6392 阅读 · 2 评论 -
stm32RTOS创建任务
文章目录前言一、cuebMX配置二、代码解析总结前言本篇文章带大家学习一下如何使用RTOS API函数创建任务。一、cuebMX配置具体配置二、代码解析osThreadId defaultTaskHandle;osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128);defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL);void St原创 2022-02-21 06:58:43 · 1424 阅读 · 0 评论 -
STM32cubeMX快速配置FreeRTOS任务
文章目录前言一、cubeMX配置二、代码查看总结前言本文带大家使用cubeMX快速配置FreeRTOS的任务。一、cubeMX配置1.选择FreeRTOS2.为FreeRTOS分配任务栈大小这里内存可以设置大一点,内存不足会导致任务无法创建。3.创建任务点击Add添加一个任务1.Task Name:任务名字2.priority:任务优先级3.Stack size:任务堆栈大小(字节)4.Entry Function:任务函数名字其他几个参数我们设置为默认值就OK了二、代码查原创 2022-03-07 10:30:23 · 8145 阅读 · 6 评论 -
STM32FreeRTOS二值信号量的基本介绍和操作
文章目录前言一、什么是二值信号量二、cubeMX配置三、代码编写四、二值信号量具体操作总结前言本文主要介绍什么是二值信号量和二值信号量的基本操作。一、什么是二值信号量信号量名副其实就是一个信号可以进行任务之前信息的交互,二值信号量通常用于互斥访问或同步。二值信号量就是一个只能保存一个数据的队列,这个队列要么是空要么是有他就只有两种状态。二、cubeMX配置1.选择添加一个二值信号量2.设置二值信号量这里比较简单我们只需要设置一下二值信号量的名字即可。三、代码编写1.创建二值信号量原创 2022-03-15 19:52:46 · 2232 阅读 · 3 评论 -
STM32FreeRTOS队列的简介及操作
前言本文主要带大家了解队列的基本知识和队列的基本操作。一、队列基本知识介绍二、队列的基本操作cubeMX配置代码讲解总结队列操作大家可以试一试还是很简单的。原创 2022-03-30 20:42:02 · 2379 阅读 · 0 评论 -
RTOS中如何确定使用栈的大小
本篇文章将带大家学习在FreeRTOS中怎么样去确认栈的大小,在确认栈的大小后就可以根据实际情况来分配栈空间,防止栈空间被浪费。本篇文章主要讲解了如何确定栈的大小,大家也可以尝试去查看一下栈有什么作用,以及如何计算栈的大小。原创 2024-04-26 17:33:48 · 3206 阅读 · 1 评论 -
FreeRTOS深入教程(软件定时器源码分析)
除了有硬件定时器,还有软件定时器,那么这篇文章将带大家学习一下软件定时器是如何工作的,以及分析软件定时器的内部源码。本篇文章就讲解到这里,下篇文章继续给大家讲解。原创 2023-11-27 10:23:54 · 1769 阅读 · 4 评论 -
FreeRTOS深入教程(中断管理)
本篇文章来分析FreeRTOS中的中断,中断在FreeRTOS中也是非常重要的,那么这篇文章将带大家来学习一下FreeRTOS中的中断处理以及涉及到的API等。本篇文章主要讲解了FreeRTOS中的中断管理,这一个部分还是比较重要的,那么希望大家可以深入的理解一下这部分的知识,有任何疑问都可以留言。原创 2023-11-26 14:48:42 · 2576 阅读 · 0 评论 -
FreeRTOS入门教程(任务通知)
本篇文章将带大家学习任务通知的概念和使用方法。FreeRTOS中的任务通知(Task Notification)是一种轻量级的同步机制,允许一个任务通知另一个任务已发生的事件或条件。这对于多任务系统中的协作和同步非常有用。任务通知的主要作用是允许一个任务通知其他任务已发生的事件,而无需使用更重的互斥锁或信号量。这可以用于线程间的通信和同步,以及处理任务之间的依赖关系。任务通知包括一个32位的通知值,用于传递信息。通知值可以是整数或位掩码,具体的含义由应用程序自行定义。原创 2023-11-26 09:30:50 · 2609 阅读 · 0 评论 -
FreeRTOS深入教程(信号量源码分析)
本篇文章将为大家讲解信号量,互斥量源码分析。本篇文章主要讲解了信号量,互斥量源码分析,其实信号量,互斥量是一个特殊的队列,掌握了队列后来学习信号量和互斥量的话那就是比较轻松的了。原创 2023-11-24 20:17:51 · 1108 阅读 · 0 评论 -
FreeRTOS深入教程(队列内部机制和源码分析)
本篇文章主要来为大家分析队列的内部机制和源码实现。本篇文章就讲解到这里,大家可以自己对FreeRTOS的源代码进行分析,分析源代码对学习FreeRTOS有重要的意义。原创 2023-10-31 21:00:29 · 1662 阅读 · 0 评论 -
FreeRTOS深入教程(空闲任务和Tick中断深入分析)
本篇文章主要带大家深入分析空闲任务和Tick中断的作用。本篇文章主要为大家讲解了空闲任务和Tick中断深入分析,大家可以尝试自己分析一遍FreeRTOS相关的源码。原创 2023-10-31 19:12:26 · 1434 阅读 · 0 评论 -
FreeRTOS深入教程(任务创建的深入和任务调度机制分析)
本篇文章将带大家深入学习任务的创建和分析任务调度的机制。本篇文章深入的讲解了任务创建的内部实现和任务调度的源代码分析和实现,学习这篇文章有助于更深入的学习FreeRTOS的源码。原创 2023-10-28 17:13:53 · 5616 阅读 · 5 评论 -
FreeRTOS深入教程(任务的引入及栈的作用)
本篇文章开始带大家深入学习FreeRTOS,带大家学习什么是任务,并且深入学习栈的作用。本篇文章主要引入了任务及说明了栈在这里的作用。原创 2023-10-23 07:00:00 · 1408 阅读 · 2 评论 -
STM32cubemx对FreeRTOS的适配(工程模板配置)
本篇文章将带大家使用STM32cubemx对FreeRTOS进行工程模板的配置。CMSIS,即 Cortex Microcontroller Software Interface Standard(Cortex 微控制器软件接口标准),是由ARM(Advanced RISC Machines)开发的一套标准,旨在为嵌入式系统开发提供一致的、可移植的软件接口。CMSIS为ARM Cortex 微控制器的开发提供了一种标准化的方法,以简化嵌入式系统的开发过程,并提高代码的可移植性。原创 2023-10-22 07:00:00 · 3245 阅读 · 0 评论 -
FreeRTOS最全教程(目录)
本篇文章将作为FreeRTOS最全教程的目录使用。原创 2023-10-21 20:07:53 · 3858 阅读 · 4 评论 -
FreeRTOS入门教程(事件组概念和函数使用)
本篇文章将带大家学习什么是事件组以及如何使用事件组。本篇文章主要给大家讲解了事件组的概念和具体的函数和使用方法。原创 2023-10-21 09:00:37 · 1047 阅读 · 0 评论 -
FreeRTOS入门教程(互斥锁的概念和函数使用)
本篇文章带大家学习什么是互斥锁,并且学习一下互斥锁中一些函数的使用方法。本篇文章就讲解到这里,下篇文章我们继续讲解FreeRTOS入门教程。原创 2023-10-20 20:28:44 · 4119 阅读 · 2 评论 -
FreeRTOS入门教程(软件定时器)
本篇文章开始带大家来学习一下什么是软件定时器,并掌握相关API函数的使用方法。本篇文章主要给大家讲解了软件定时器的使用方法和注意事项。原创 2023-10-10 07:00:00 · 770 阅读 · 1 评论 -
FreeRTOS入门教程(信号量的具体使用)
本篇文章来为大家讲解信号量的具体使用。本篇文章就讲解到这里,大家多做实验多巩固复习。原创 2023-10-09 07:00:00 · 359 阅读 · 0 评论 -
FreeRTOS入门教程(信号量的概念及API函数使用)
本篇文章正式带大家开始学习什么是信号量,并且掌握信号量函数的基本使用方法,并且将和队列进行一个对比。FreeRTOS 中的信号量是一种用于任务间同步和互斥的机制。它允许任务在临界区保护资源的访问、线程间通信以及任务之间的同步操作。信号量可以用来保护共享资源,限制对资源的并发访问,以及进行任务间的事件通知。本篇文章主要讲解了信号量的概念及API函数使用,大家看完后可以做个总结,并进行对应的实验。原创 2023-10-08 07:00:00 · 1431 阅读 · 0 评论 -
FreeRTOS入门教程(队列详细使用示例)
上篇文章我们已经讲解了队列的概念和队列相关的API函数,那么本篇文章的话就开始带大家来学习使用队列。本篇文章就讲解到这里,本篇文章主要给大家讲解了队列的具体代码和使用方法。原创 2023-10-07 07:00:00 · 2108 阅读 · 2 评论 -
FreeRTOS入门教程(队列的概念及相关函数介绍)
本篇文章将带大家学习FreeRTOS中的队列,掌握什么是队列,并且学习如何使用队列,在什么场景会使用到队列。本篇文章主要详细的讲解了队列的概念和队列的使用方法,看完文章后大家可以使用代码进行测试巩固复习。原创 2023-10-06 15:52:04 · 1035 阅读 · 0 评论 -
FreeRTOS入门教程(空闲任务和钩子函数及任务调度算法)
本篇文章将带大家学习一下什么是空闲任务以及钩子函数,以及学习FreeRTOS中的任务调度算法,了解在FreeRTOS中任务是如何进行切换调度的。本篇文章就讲解到这里。原创 2023-09-30 07:00:00 · 4191 阅读 · 7 评论 -
FreeRTOS入门教程(同步与互斥)
前几篇文章一直在围绕FreeRTOS中的任务创建,删除,优先级,调度算法进行讲解,那么从本篇文章开始将围绕同步与互斥来展开讲解。本篇文章主要讲解了同步和互斥的基本概念。原创 2023-10-01 07:00:00 · 1643 阅读 · 0 评论 -
FreeRTOS入门教程(任务优先级,Tick)
本篇文章将带大家学习FreeRTOS中的任务优先级,并且了解什么是任务优先级,在FreeRTOS中,任务优先级用于确定任务的执行顺序和调度顺序。任务优先级越高,任务被调度执行的频率越高。FreeRTOS支持使用整数值来表示任务优先级,整数值越高,优先级越高。FreeRTOS中任务优先级的范围通常是从0到configMAX_PRIORITIES-1,其中configMAX_PRIORITIES是一个配置常量,表示系统中支持的最大任务优先级数量。原创 2023-09-29 07:00:00 · 2725 阅读 · 4 评论 -
FreeRTOS入门教程(任务状态)
本篇文章将为大家讲解FreeRTOS中的任务状态,在FreeRTOS任务是有非常多种状态的,了解了任务的这些状态有助于我们理解任务是如何运行和停止的。本篇文章就讲解到这里。原创 2023-09-28 10:40:38 · 1572 阅读 · 2 评论 -
FreeRTOS任务的创建(动态方法和静态方法)
本篇文章将介绍FreeRTOS任务的创建(动态方法和静态方法),了解什么是任务和任务的具体创建方法。本篇文章我们详细的介绍了FreeRTOS任务的创建,并介绍了这两种方法创建任务的区别,希望大家好好理解并多加练习。原创 2023-04-30 15:15:54 · 6110 阅读 · 3 评论 -
FreeRTOS入门教程(堆和栈)
本篇文章正式学习FreeRTOS操作系统,我打算编写一系列文章带大家轻松快速入门FreeRTOS操作系统。FreeRTOS是一款开源、实时、嵌入式的操作系统,它被广泛应用于小型嵌入式系统和微控制器中。FreeRTOS的设计目标是提供一个轻量级、可移植、易于使用的实时操作系统,以协调和管理多个任务。FreeRTOS通过引入任务、信号量、消息队列、定时器等概念,使得应用程序可以按照预期的方式运行,从而实现了便捷的应用程序开发。原创 2023-04-30 10:16:21 · 5432 阅读 · 1 评论