FreeRTOS
文章平均质量分 94
本栏目是基于stm32进行开发,对FreeRTOS系统进行移植,记录关于学习的RTOS并有自己的见解,欢迎大家在评论区交流
点亮一颗LED(从入门到放弃)
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
FreeRTOS学习笔记之调度机制
在讲解调度原理之前,先看一下STM32内核通用寄存器,Cortex-M3和 Cortex-M4处理器的寄存器组中有16个寄存器,其中13个为32位通用目的寄存器,其他3个则有特殊用途在进行其他的数据处理时,寄存器组中可以临时存储一些数据变量,而无须更新到系统存储器及在使用时将它们读回,这种方式一般被称作“加载一存储架构”通用目的寄存器 R0-R7被称为低组寄存器。所有指令都能访问它们。它们的字长全是 32 位,复位后的初始值是不可预料的通用目的寄存器 R8-R12被称为高组寄存器。原创 2025-07-23 22:12:32 · 1134 阅读 · 0 评论 -
FreeRTOS学习笔记之内存管理
内存碎片化指的是内存被分割成许多小块,相邻的空闲内存无法合并,虽然总的空闲内存足够,但没有一个连续的空闲块能满足当前分配请求的情况。碎片化分为两种:外部碎片:当空闲内存分散在许多不连续的小块中,导致无法分配较大的连续内存块内部碎片:分配的内存块比实际请求的大,导致块内部分内存未被使用。原创 2025-07-20 19:02:05 · 558 阅读 · 0 评论 -
FreeRTOS学习笔记之软件定时器
在调用函数 vTaskStartScheduler()开启任务调度器的时候,系统会自主创建。原创 2025-07-19 22:49:27 · 891 阅读 · 0 评论 -
FreeRTOS学习笔记之队列
队列是为了任务与任务、任务与中断之间的通信而准备的,可以在任务与任务、任务与中断之间消息传递,队列中可以存储有限的、大小固定的数据项目。通常队列采用先进先出的存储缓冲机制(FIFO)往队列中发送数据称为入队,从队列中读取数据称为出队FreeRTOS中队列是通过值传递(默认)进行存储的,如果大数据的时候,也可以通过数据引用(只传递数据的指针)进行存储队列不属于某个任务,任何任务与中断都可以向队列读取/发送数据。原创 2025-07-19 20:05:49 · 1163 阅读 · 0 评论 -
FreeRTOS学习笔记之任务调度
FreeRTOS 的任务(Task)是其核心概念之一,本质上是一个独立的线程或执行单元。每个任务都有自己的执行上下文(堆栈、寄存器值等),并能在 FreeRTOS 内核的调度下,以协作式或抢占式方式运行而言,CPU 在同一时刻只能够处理一个任务,但是多任务系统的任务调度器会根据相关的任务调度算法,将 CPU 的使用权分配给任务,在任务获取 CPU 使用权之后的极短时间(宏观角度)后,任务调度器又会将 CPU 的使用权分配给其他任务,如此往复,在宏观的角度看来,就像是多个任务同时运行了一样。原创 2025-07-16 18:02:18 · 1101 阅读 · 0 评论
分享