FreeRTOS
文章平均质量分 83
分享FreeRTOS相关的技术
麻辣长颈鹿0v0
牛顿早生百年,只为避我锋芒
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
FreeRTOS源码学习之内核初始化
本文介绍了使用STM32CubeMX添加FreeRTOS后的初始化流程。主要内容包括:1)主函数中通过osKernelInitialize()进行内核初始化,并通过osKernelStart()启动任务调度;2)详细解析了osKernelInitialize()函数,该函数会检查中断状态并配置堆内存,将内核状态设为就绪;3)解释了IS_IRQ()宏如何通过读取IPSR寄存器检测当前是否处于中断上下文。文章还特别说明了在中断中不进行内核初始化的原因,是为了避免中断嵌套导致的资源竞争问题。原创 2025-07-11 11:34:38 · 639 阅读 · 0 评论 -
3、结合STM32CubeMX学习FreeRTOS实时操作系统——队列
本文介绍了FreeRTOS队列的核心概念、特性和使用方法。队列作为任务间通信的基础组件,具有FIFO、线程安全、阻塞机制等特性。文章详细讲解了队列的常用API函数(如xQueueSend、xQueueReceive等)、创建配置原则及选型指南,并通过示例代码演示了在任务中使用队列实现数据通信的过程。特别强调了在中断程序中需要使用FromISR后缀的队列操作函数。最后通过Keil仿真案例展示了两个任务间通过队列传递模拟传感器数据的具体实现方法。原创 2025-06-23 23:34:08 · 899 阅读 · 0 评论 -
2、结合STM32CubeMX学习FreeRTOS实时操作系统——任务
本文介绍了如何在STM32CubeMX中使用FreeRTOS的任务管理功能。FreeRTOS的任务是具有独立堆栈的循环函数,包含运行、就绪、阻塞和挂起四种状态。文章详细说明了任务状态转换机制,强调高优先级任务必须使用阻塞指令(如osDelay)以确保低优先级任务执行。通过STM32CubeMX创建任务后,开发者只需在app_freertos.c文件中编写具体功能代码。配置任务时需合理设置优先级,生成代码后系统会自动注册任务并调用osKernelStart()启动调度。示例展示了LED闪烁任务的实现,并指出F原创 2025-06-23 23:09:59 · 1198 阅读 · 0 评论 -
1、使用STM32CubeMX在项目中添加FreeRTOS源码
本文介绍了使用STM32CubeMX配置FreeRTOS系统的完整流程:1)需先下载FreeRTOS支持包;2)添加FreeRTOS系统时需在CMSIS_V1(适用于资源有限场景)和CMSIS_V2(支持动态内存分配)版本间选择;3)介绍了Project Manager的设置技巧;4)推荐将系统时钟源从SysTick改为TIMx定时器以提升兼容性;5)最后生成项目代码。文章还对比了CMSIS_V1和V2的特性差异,为开发者提供版本选择参考。原创 2025-06-18 20:24:37 · 944 阅读 · 0 评论 -
结合 STM32CubeMX 使用 FreeRTOS 实时操作系统
本文介绍了使用STM32CubeMX配置FreeRTOS操作系统的学习教程。作者指出STM32CubeMX简化了嵌入式开发流程,可以快速生成包含FreeRTOS源码的项目。教程分为两个阶段:核心基础(任务管理、调度、队列、信号量等)和进阶功能(定时器、内存管理、中断等)。作者推荐了学习顺序,并参考了优快云博主"不秃也很强"的相关教程。该系列将通过由浅入深的方式,帮助开发者系统掌握FreeRTOS在STM32平台的应用。原创 2025-06-18 20:08:57 · 728 阅读 · 0 评论
分享